trustfall_core 0.8.1

The trustfall query engine, empowering you to query everything.
Documentation
schema {
    query: RootSchemaQuery
}
directive @filter(op: String!, value: [String!]) repeatable on FIELD | INLINE_FRAGMENT
directive @tag(name: String) on FIELD
directive @output(name: String) on FIELD
directive @optional on FIELD
directive @recurse(depth: Int!) on FIELD
directive @fold on FIELD
directive @transform(op: String!) on FIELD

type RootSchemaQuery {
    Base: Base
    Derived: Derived
    DeeperDerived: DeeperDerived
    FinalDerived: FinalDerived
}

interface Base {
    field: Int
}

interface Derived implements Base {
    field: Int

    firstEdge: Base
}

interface DeeperDerived implements Base & Derived {
    field: Int

    firstEdge: Derived
    secondEdge: Base
}

type FinalDerived implements Base & Derived & DeeperDerived {
    field: Int

    firstEdge: Derived
    secondEdge: Derived

    cyclic: Unrelated
}

type Unrelated {
    field: Int

    cyclic: Base
}