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 {
OriginDirectory: [Directory]
}
type Directory {
name: String
path: String # relative to origin directory
out_Directory_Subdirectory: [Directory]
out_Directory_ContainsFile: [File]
}
interface File {
name: String
extension: String
path: String # relative to origin directory
size: Int
in_Directory_ContainsFile: [Directory]
}
type TextFile implements File {
name: String
extension: String
path: String # relative to origin directory
size: Int
contents: String
in_Directory_ContainsFile: [Directory]
out_TextFile_HasLine: [NumberedTextLine]
}
type NumberedTextLine {
line_number: Int # 1-indexed, just as it would appear in your text editor
contents: String # the text line as-is, including leading/trailing whitespace
trimmed_contents: String # the text line with leading/trailing whitespace stripped
}