Files
ladybird/Userland/Libraries/LibSQL/Key.h
Ben Wiederhake 9d89b64d59 LibSQL: Resolve cyclic dependency
Previously, class SQL::Key
depends on def class SQL::IndexDef (because inline def index())
depends on def class SQL::KeyPartDef (inline def key_definition())
depends on def class SQL::ColumnDef (because base class)
depends on def class SQL::Relation (because base class)
depends on def class SQL::Key (because inline def hash()).

This hasn't caused any problems so far because Meta.h happened to be
always included after Key.h (in part due to alphabetical ordering).

However, a compilation that for example only contains
    #include <Userland/Libraries/LibSQL/Key.h>
would fail to compile.

This patch resolves this issue by pushing the inline definition of
SQL::Relation::hash() into a different file. Yes, this might reduce
performance marginally, but this gets it to compile again.
2021-10-06 23:52:40 +01:00

613 B