apollo-compiler 1.31.1

A compiler for the GraphQL query language.
Documentation
Schema {
    sources: {
        1: SourceFile {
            path: "built_in.graphql",
            source_text: include_str!("built_in.graphql"),
        },
        34: SourceFile {
            path: "0033_valid_variable_usage.graphql",
            source_text: "query nullableStringArg($nonNullableVar: String!, $nonNullableList: [String!]!, $nonNullableListList: [[Int!]!]) {\n  arguments {\n    nullableString(nullableString: $nonNullableVar)\n    nullableList(nullableList: $nonNullableList)\n    nullableListList(nullableListList: $nonNullableListList)\n  }\n}\n\ntype Query {\n    arguments: Arguments\n}\n\ntype Arguments {\n    nullableString(nullableString: String): String\n    nullableList(nullableList: [String]): String\n    nullableListList(nullableListList: [[Int]]): Int\n}\n\n",
        },
    },
    schema_definition: SchemaDefinition {
        description: None,
        directives: [],
        query: Some(
            ComponentName {
                origin: Definition,
                name: "Query",
            },
        ),
        mutation: None,
        subscription: None,
    },
    directive_definitions: {
        "skip": built_in_directive!("skip"),
        "include": built_in_directive!("include"),
        "deprecated": built_in_directive!("deprecated"),
        "specifiedBy": built_in_directive!("specifiedBy"),
    },
    types: {
        "__Schema": built_in_type!("__Schema"),
        "__Type": built_in_type!("__Type"),
        "__TypeKind": built_in_type!("__TypeKind"),
        "__Field": built_in_type!("__Field"),
        "__InputValue": built_in_type!("__InputValue"),
        "__EnumValue": built_in_type!("__EnumValue"),
        "__Directive": built_in_type!("__Directive"),
        "__DirectiveLocation": built_in_type!("__DirectiveLocation"),
        "Int": built_in_type!("Int"),
        "String": built_in_type!("String"),
        "Boolean": built_in_type!("Boolean"),
        "Query": Object(
            298..337 @34 ObjectType {
                description: None,
                name: "Query",
                implements_interfaces: {},
                directives: [],
                fields: {
                    "arguments": Component {
                        origin: Definition,
                        node: 315..335 @34 FieldDefinition {
                            description: None,
                            name: "arguments",
                            arguments: [],
                            ty: Named(
                                "Arguments",
                            ),
                            directives: [],
                        },
                    },
                },
            },
        ),
        "Arguments": Object(
            339..510 @34 ObjectType {
                description: None,
                name: "Arguments",
                implements_interfaces: {},
                directives: [],
                fields: {
                    "nullableString": Component {
                        origin: Definition,
                        node: 360..406 @34 FieldDefinition {
                            description: None,
                            name: "nullableString",
                            arguments: [
                                375..397 @34 InputValueDefinition {
                                    description: None,
                                    name: "nullableString",
                                    ty: 391..397 @34 Named(
                                        "String",
                                    ),
                                    default_value: None,
                                    directives: [],
                                },
                            ],
                            ty: Named(
                                "String",
                            ),
                            directives: [],
                        },
                    },
                    "nullableList": Component {
                        origin: Definition,
                        node: 411..455 @34 FieldDefinition {
                            description: None,
                            name: "nullableList",
                            arguments: [
                                424..446 @34 InputValueDefinition {
                                    description: None,
                                    name: "nullableList",
                                    ty: 438..446 @34 List(
                                        Named(
                                            "String",
                                        ),
                                    ),
                                    default_value: None,
                                    directives: [],
                                },
                            ],
                            ty: Named(
                                "String",
                            ),
                            directives: [],
                        },
                    },
                    "nullableListList": Component {
                        origin: Definition,
                        node: 460..508 @34 FieldDefinition {
                            description: None,
                            name: "nullableListList",
                            arguments: [
                                477..502 @34 InputValueDefinition {
                                    description: None,
                                    name: "nullableListList",
                                    ty: 495..502 @34 List(
                                        List(
                                            Named(
                                                "Int",
                                            ),
                                        ),
                                    ),
                                    default_value: None,
                                    directives: [],
                                },
                            ],
                            ty: Named(
                                "Int",
                            ),
                            directives: [],
                        },
                    },
                },
            },
        ),
    },
}
ExecutableDocument {
    sources: {
        1: SourceFile {
            path: "built_in.graphql",
            source_text: include_str!("built_in.graphql"),
        },
        34: SourceFile {
            path: "0033_valid_variable_usage.graphql",
            source_text: "query nullableStringArg($nonNullableVar: String!, $nonNullableList: [String!]!, $nonNullableListList: [[Int!]!]) {\n  arguments {\n    nullableString(nullableString: $nonNullableVar)\n    nullableList(nullableList: $nonNullableList)\n    nullableListList(nullableListList: $nonNullableListList)\n  }\n}\n\ntype Query {\n    arguments: Arguments\n}\n\ntype Arguments {\n    nullableString(nullableString: String): String\n    nullableList(nullableList: [String]): String\n    nullableListList(nullableListList: [[Int]]): Int\n}\n\n",
        },
    },
    operations: OperationMap {
        anonymous: None,
        named: {
            "nullableStringArg": 0..296 @34 Operation {
                operation_type: Query,
                name: Some(
                    "nullableStringArg",
                ),
                variables: [
                    24..48 @34 VariableDefinition {
                        name: "nonNullableVar",
                        ty: 41..48 @34 NonNullNamed(
                            "String",
                        ),
                        default_value: None,
                        directives: [],
                    },
                    50..78 @34 VariableDefinition {
                        name: "nonNullableList",
                        ty: 68..78 @34 NonNullList(
                            NonNullNamed(
                                "String",
                            ),
                        ),
                        default_value: None,
                        directives: [],
                    },
                    80..111 @34 VariableDefinition {
                        name: "nonNullableListList",
                        ty: 102..111 @34 List(
                            NonNullList(
                                NonNullNamed(
                                    "Int",
                                ),
                            ),
                        ),
                        default_value: None,
                        directives: [],
                    },
                ],
                directives: [],
                selection_set: SelectionSet {
                    ty: "Query",
                    selections: [
                        Field(
                            117..294 @34 Field {
                                definition: 315..335 @34 FieldDefinition {
                                    description: None,
                                    name: "arguments",
                                    arguments: [],
                                    ty: Named(
                                        "Arguments",
                                    ),
                                    directives: [],
                                },
                                alias: None,
                                name: "arguments",
                                arguments: [],
                                directives: [],
                                selection_set: SelectionSet {
                                    ty: "Arguments",
                                    selections: [
                                        Field(
                                            133..180 @34 Field {
                                                definition: 360..406 @34 FieldDefinition {
                                                    description: None,
                                                    name: "nullableString",
                                                    arguments: [
                                                        375..397 @34 InputValueDefinition {
                                                            description: None,
                                                            name: "nullableString",
                                                            ty: 391..397 @34 Named(
                                                                "String",
                                                            ),
                                                            default_value: None,
                                                            directives: [],
                                                        },
                                                    ],
                                                    ty: Named(
                                                        "String",
                                                    ),
                                                    directives: [],
                                                },
                                                alias: None,
                                                name: "nullableString",
                                                arguments: [
                                                    148..179 @34 Argument {
                                                        name: "nullableString",
                                                        value: 164..179 @34 Variable(
                                                            "nonNullableVar",
                                                        ),
                                                    },
                                                ],
                                                directives: [],
                                                selection_set: SelectionSet {
                                                    ty: "String",
                                                    selections: [],
                                                },
                                            },
                                        ),
                                        Field(
                                            185..229 @34 Field {
                                                definition: 411..455 @34 FieldDefinition {
                                                    description: None,
                                                    name: "nullableList",
                                                    arguments: [
                                                        424..446 @34 InputValueDefinition {
                                                            description: None,
                                                            name: "nullableList",
                                                            ty: 438..446 @34 List(
                                                                Named(
                                                                    "String",
                                                                ),
                                                            ),
                                                            default_value: None,
                                                            directives: [],
                                                        },
                                                    ],
                                                    ty: Named(
                                                        "String",
                                                    ),
                                                    directives: [],
                                                },
                                                alias: None,
                                                name: "nullableList",
                                                arguments: [
                                                    198..228 @34 Argument {
                                                        name: "nullableList",
                                                        value: 212..228 @34 Variable(
                                                            "nonNullableList",
                                                        ),
                                                    },
                                                ],
                                                directives: [],
                                                selection_set: SelectionSet {
                                                    ty: "String",
                                                    selections: [],
                                                },
                                            },
                                        ),
                                        Field(
                                            234..290 @34 Field {
                                                definition: 460..508 @34 FieldDefinition {
                                                    description: None,
                                                    name: "nullableListList",
                                                    arguments: [
                                                        477..502 @34 InputValueDefinition {
                                                            description: None,
                                                            name: "nullableListList",
                                                            ty: 495..502 @34 List(
                                                                List(
                                                                    Named(
                                                                        "Int",
                                                                    ),
                                                                ),
                                                            ),
                                                            default_value: None,
                                                            directives: [],
                                                        },
                                                    ],
                                                    ty: Named(
                                                        "Int",
                                                    ),
                                                    directives: [],
                                                },
                                                alias: None,
                                                name: "nullableListList",
                                                arguments: [
                                                    251..289 @34 Argument {
                                                        name: "nullableListList",
                                                        value: 269..289 @34 Variable(
                                                            "nonNullableListList",
                                                        ),
                                                    },
                                                ],
                                                directives: [],
                                                selection_set: SelectionSet {
                                                    ty: "Int",
                                                    selections: [],
                                                },
                                            },
                                        ),
                                    ],
                                },
                            },
                        ),
                    ],
                },
            },
        },
    },
    fragments: {},
}