Parser(String)+DA

          flowchart TD
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Parser_String__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_String__DA -->|"=>"| GqlPlus_Parsing_Schema_ParseAliases
          GqlPlus_Parsing_Schema_ParseAliases("ParseAliases")

          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Schema_ParseAliases("ParseAliases")

        

Parser(IGqlpModifier)+DA

          flowchart TD
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"=>"| GqlPlus_Parsing_ParseModifiers
          GqlPlus_Parsing_ParseModifiers("ParseModifiers")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_ParseModifiers("ParseModifiers")

          GqlPlus_Parsing_ParseModifiers -->|"collections"| GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA
          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA("ParserArray(IParserCollections,IGqlpModifier)+DA")

          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA("ParserArray(IParserCollections,IGqlpModifier)+DA")

          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA -->|"->"| GqlPlus_Parsing_ParserArray
          GqlPlus_Parsing_ParserArray("ParserArray")

          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA -->|"=>"| GqlPlus_Parsing_ParseCollections
          GqlPlus_Parsing_ParseCollections("ParseCollections")

          GqlPlus_Parsing_ParserArray("ParserArray")

          GqlPlus_Parsing_ParseCollections("ParseCollections")

        

ISimpleName

          flowchart TD
          GqlPlus_Parsing_Schema_ISimpleName("ISimpleName")

          GqlPlus_Parsing_Schema_ISimpleName -->|"0"| GqlPlus_Parsing_Schema_SimpleName
          GqlPlus_Parsing_Schema_SimpleName("SimpleName")

          GqlPlus_Parsing_Schema_SimpleName("SimpleName")

        

Parser(IOptionParser(NullOption),NullOption)+D

          flowchart TD
          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D("Parser(IOptionParser(NullOption),NullOption)+D")

          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D -->|"=>"| GqlPlus_Parsing_Schema_ParseNullOption
          GqlPlus_Parsing_Schema_ParseNullOption("ParseNullOption")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_ParseNullOption("ParseNullOption")

        

Parser(IGqlpDirective)+DA

          flowchart TD
          GqlPlus_Parsing_Parser_IGqlpDirective__DA("Parser(IGqlpDirective)+DA")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseDirectives
          GqlPlus_Parsing_Operation_ParseDirectives("ParseDirectives")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Operation_ParseDirectives("ParseDirectives")

          GqlPlus_Parsing_Operation_ParseDirectives -->|"argument"| GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D
          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D("Parser(IParserArg,IGqlpArg)+D")

          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D("Parser(IParserArg,IGqlpArg)+D")

          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D -->|"=>"| GqlPlus_Parsing_Operation_ParseArg
          GqlPlus_Parsing_Operation_ParseArg("ParseArg")

          GqlPlus_Parsing_Operation_ParseArg("ParseArg")

          GqlPlus_Parsing_Operation_ParseArg -->|"fieldKey"| GqlPlus_Parsing_Parser_IGqlpFieldKey__D
          GqlPlus_Parsing_Parser_IGqlpFieldKey__D("Parser(IGqlpFieldKey)+D")

          GqlPlus_Parsing_Operation_ParseArg -->|"argument"| GqlPlus_Parsing_Parser_IValueParser_IGqlpArg__IGqlpArg__D
          GqlPlus_Parsing_Parser_IValueParser_IGqlpArg__IGqlpArg__D("Parser(IValueParser(IGqlpArg),IGqlpArg)+D")

          GqlPlus_Parsing_Parser_IGqlpFieldKey__D("Parser(IGqlpFieldKey)+D")

          GqlPlus_Parsing_Parser_IGqlpFieldKey__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpFieldKey__D -->|"=>"| GqlPlus_Parsing_ParseFieldKey
          GqlPlus_Parsing_ParseFieldKey("ParseFieldKey")

          GqlPlus_Parsing_ParseFieldKey("ParseFieldKey")

          GqlPlus_Parsing_Parser_IValueParser_IGqlpArg__IGqlpArg__D("Parser(IValueParser(IGqlpArg),IGqlpArg)+D")

          GqlPlus_Parsing_Parser_IValueParser_IGqlpArg__IGqlpArg__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IValueParser_IGqlpArg__IGqlpArg__D -->|"=>"| GqlPlus_Parsing_Operation_ParseArgValue
          GqlPlus_Parsing_Operation_ParseArgValue("ParseArgValue")

          GqlPlus_Parsing_Operation_ParseArgValue("ParseArgValue")

          GqlPlus_Parsing_Operation_ParseArgValue -->|"fieldKey"| GqlPlus_Parsing_Parser_IGqlpFieldKey__D
          GqlPlus_Parsing_Parser_IGqlpFieldKey__D("Parser(IGqlpFieldKey)+D")

          GqlPlus_Parsing_Operation_ParseArgValue -->|"keyValueParser"| GqlPlus_Parsing_Parser_KeyValue_IGqlpArg___D
          GqlPlus_Parsing_Parser_KeyValue_IGqlpArg___D("Parser(KeyValue(IGqlpArg))+D")

          GqlPlus_Parsing_Operation_ParseArgValue -->|"listParser"| GqlPlus_Parsing_Parser_IGqlpArg__DA
          GqlPlus_Parsing_Parser_IGqlpArg__DA("Parser(IGqlpArg)+DA")

          GqlPlus_Parsing_Operation_ParseArgValue -->|"objectParser"| GqlPlus_Parsing_Parser_IGqlpFields_IGqlpArg___D
          GqlPlus_Parsing_Parser_IGqlpFields_IGqlpArg___D("Parser(IGqlpFields(IGqlpArg))+D")

          GqlPlus_Parsing_Operation_ParseArgValue -->|"constant"| GqlPlus_Parsing_Parser_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IGqlpConstant__D("Parser(IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_KeyValue_IGqlpArg___D("Parser(KeyValue(IGqlpArg))+D")

          GqlPlus_Parsing_Parser_KeyValue_IGqlpArg___D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_KeyValue_IGqlpArg___D -->|"=>"| GqlPlus_Parsing_ValueKeyValueParser_IGqlpArg_
          GqlPlus_Parsing_ValueKeyValueParser_IGqlpArg_("ValueKeyValueParser(IGqlpArg)")

          GqlPlus_Parsing_ValueKeyValueParser_IGqlpArg_("ValueKeyValueParser(IGqlpArg)")

          GqlPlus_Parsing_ValueKeyValueParser_IGqlpArg_ -->|"->"| GqlPlus_Parsing_ValueKeyValueParser
          GqlPlus_Parsing_ValueKeyValueParser("ValueKeyValueParser")

          GqlPlus_Parsing_ValueKeyValueParser_IGqlpArg_ -->|"key"| GqlPlus_Parsing_Parser_IGqlpFieldKey__D
          GqlPlus_Parsing_Parser_IGqlpFieldKey__D("Parser(IGqlpFieldKey)+D")

          GqlPlus_Parsing_ValueKeyValueParser_IGqlpArg_ -->|"value"| GqlPlus_Parsing_Parser_IGqlpArg__D
          GqlPlus_Parsing_Parser_IGqlpArg__D("Parser(IGqlpArg)+D")

          GqlPlus_Parsing_ValueKeyValueParser("ValueKeyValueParser")

          GqlPlus_Parsing_Parser_IGqlpArg__D("Parser(IGqlpArg)+D")

          GqlPlus_Parsing_Parser_IGqlpArg__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpArg__D -->|"=>"| GqlPlus_Parsing_Operation_ParseArgValue
          GqlPlus_Parsing_Operation_ParseArgValue("ParseArgValue")

          GqlPlus_Parsing_Parser_IGqlpArg__DA("Parser(IGqlpArg)+DA")

          GqlPlus_Parsing_Parser_IGqlpArg__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpArg__DA -->|"=>"| GqlPlus_Parsing_ValueListParser_IGqlpArg_
          GqlPlus_Parsing_ValueListParser_IGqlpArg_("ValueListParser(IGqlpArg)")

          GqlPlus_Parsing_ValueListParser_IGqlpArg_("ValueListParser(IGqlpArg)")

          GqlPlus_Parsing_ValueListParser_IGqlpArg_ -->|"->"| GqlPlus_Parsing_ValueListParser
          GqlPlus_Parsing_ValueListParser("ValueListParser")

          GqlPlus_Parsing_ValueListParser_IGqlpArg_ -->|"value"| GqlPlus_Parsing_Parser_IGqlpArg__D
          GqlPlus_Parsing_Parser_IGqlpArg__D("Parser(IGqlpArg)+D")

          GqlPlus_Parsing_ValueListParser("ValueListParser")

          GqlPlus_Parsing_Parser_IGqlpFields_IGqlpArg___D("Parser(IGqlpFields(IGqlpArg))+D")

          GqlPlus_Parsing_Parser_IGqlpFields_IGqlpArg___D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpFields_IGqlpArg___D -->|"=>"| GqlPlus_Parsing_ValueObjectParser_IGqlpArg_
          GqlPlus_Parsing_ValueObjectParser_IGqlpArg_("ValueObjectParser(IGqlpArg)")

          GqlPlus_Parsing_ValueObjectParser_IGqlpArg_("ValueObjectParser(IGqlpArg)")

          GqlPlus_Parsing_ValueObjectParser_IGqlpArg_ -->|"->"| GqlPlus_Parsing_ValueObjectParser
          GqlPlus_Parsing_ValueObjectParser("ValueObjectParser")

          GqlPlus_Parsing_ValueObjectParser_IGqlpArg_ -->|"field"| GqlPlus_Parsing_Parser_KeyValue_IGqlpArg___D
          GqlPlus_Parsing_Parser_KeyValue_IGqlpArg___D("Parser(KeyValue(IGqlpArg))+D")

          GqlPlus_Parsing_ValueObjectParser("ValueObjectParser")

          GqlPlus_Parsing_Parser_IGqlpConstant__D("Parser(IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IGqlpConstant__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpConstant__D -->|"=>"| GqlPlus_Parsing_ParseConstant
          GqlPlus_Parsing_ParseConstant("ParseConstant")

          GqlPlus_Parsing_ParseConstant("ParseConstant")

          GqlPlus_Parsing_ParseConstant -->|"fieldKey"| GqlPlus_Parsing_Parser_IGqlpFieldKey__D
          GqlPlus_Parsing_Parser_IGqlpFieldKey__D("Parser(IGqlpFieldKey)+D")

          GqlPlus_Parsing_ParseConstant -->|"keyValueParser"| GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D
          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D("Parser(KeyValue(IGqlpConstant))+D")

          GqlPlus_Parsing_ParseConstant -->|"listParser"| GqlPlus_Parsing_Parser_IGqlpConstant__DA
          GqlPlus_Parsing_Parser_IGqlpConstant__DA("Parser(IGqlpConstant)+DA")

          GqlPlus_Parsing_ParseConstant -->|"objectParser"| GqlPlus_Parsing_Parser_IGqlpFields_IGqlpConstant___D
          GqlPlus_Parsing_Parser_IGqlpFields_IGqlpConstant___D("Parser(IGqlpFields(IGqlpConstant))+D")

          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D("Parser(KeyValue(IGqlpConstant))+D")

          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D -->|"=>"| GqlPlus_Parsing_ValueKeyValueParser_IGqlpConstant_
          GqlPlus_Parsing_ValueKeyValueParser_IGqlpConstant_("ValueKeyValueParser(IGqlpConstant)")

          GqlPlus_Parsing_ValueKeyValueParser_IGqlpConstant_("ValueKeyValueParser(IGqlpConstant)")

          GqlPlus_Parsing_ValueKeyValueParser_IGqlpConstant_ -->|"->"| GqlPlus_Parsing_ValueKeyValueParser
          GqlPlus_Parsing_ValueKeyValueParser("ValueKeyValueParser")

          GqlPlus_Parsing_ValueKeyValueParser_IGqlpConstant_ -->|"key"| GqlPlus_Parsing_Parser_IGqlpFieldKey__D
          GqlPlus_Parsing_Parser_IGqlpFieldKey__D("Parser(IGqlpFieldKey)+D")

          GqlPlus_Parsing_ValueKeyValueParser_IGqlpConstant_ -->|"value"| GqlPlus_Parsing_Parser_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IGqlpConstant__D("Parser(IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IGqlpConstant__DA("Parser(IGqlpConstant)+DA")

          GqlPlus_Parsing_Parser_IGqlpConstant__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpConstant__DA -->|"=>"| GqlPlus_Parsing_ValueListParser_IGqlpConstant_
          GqlPlus_Parsing_ValueListParser_IGqlpConstant_("ValueListParser(IGqlpConstant)")

          GqlPlus_Parsing_ValueListParser_IGqlpConstant_("ValueListParser(IGqlpConstant)")

          GqlPlus_Parsing_ValueListParser_IGqlpConstant_ -->|"->"| GqlPlus_Parsing_ValueListParser
          GqlPlus_Parsing_ValueListParser("ValueListParser")

          GqlPlus_Parsing_ValueListParser_IGqlpConstant_ -->|"value"| GqlPlus_Parsing_Parser_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IGqlpConstant__D("Parser(IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IGqlpFields_IGqlpConstant___D("Parser(IGqlpFields(IGqlpConstant))+D")

          GqlPlus_Parsing_Parser_IGqlpFields_IGqlpConstant___D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpFields_IGqlpConstant___D -->|"=>"| GqlPlus_Parsing_ValueObjectParser_IGqlpConstant_
          GqlPlus_Parsing_ValueObjectParser_IGqlpConstant_("ValueObjectParser(IGqlpConstant)")

          GqlPlus_Parsing_ValueObjectParser_IGqlpConstant_("ValueObjectParser(IGqlpConstant)")

          GqlPlus_Parsing_ValueObjectParser_IGqlpConstant_ -->|"->"| GqlPlus_Parsing_ValueObjectParser
          GqlPlus_Parsing_ValueObjectParser("ValueObjectParser")

          GqlPlus_Parsing_ValueObjectParser_IGqlpConstant_ -->|"field"| GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D
          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D("Parser(KeyValue(IGqlpConstant))+D")

        

Parser(IGqlpSelection)+DA

          flowchart TD
          GqlPlus_Parsing_Parser_IGqlpSelection__DA("Parser(IGqlpSelection)+DA")

          GqlPlus_Parsing_Parser_IGqlpSelection__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpSelection__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseObject
          GqlPlus_Parsing_Operation_ParseObject("ParseObject")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Operation_ParseObject("ParseObject")

          GqlPlus_Parsing_Operation_ParseObject -->|"field"| GqlPlus_Parsing_Parser_IGqlpField__D
          GqlPlus_Parsing_Parser_IGqlpField__D("Parser(IGqlpField)+D")

          GqlPlus_Parsing_Operation_ParseObject -->|"selection"| GqlPlus_Parsing_Parser_IGqlpSelection__D
          GqlPlus_Parsing_Parser_IGqlpSelection__D("Parser(IGqlpSelection)+D")

          GqlPlus_Parsing_Parser_IGqlpField__D("Parser(IGqlpField)+D")

          GqlPlus_Parsing_Parser_IGqlpField__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpField__D -->|"=>"| GqlPlus_Parsing_Operation_ParseField
          GqlPlus_Parsing_Operation_ParseField("ParseField")

          GqlPlus_Parsing_Operation_ParseField("ParseField")

          GqlPlus_Parsing_Operation_ParseField -->|"modifiers"| GqlPlus_Parsing_Parser_IGqlpModifier__DA
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_Parsing_Operation_ParseField -->|"directives"| GqlPlus_Parsing_Parser_IGqlpDirective__DA
          GqlPlus_Parsing_Parser_IGqlpDirective__DA("Parser(IGqlpDirective)+DA")

          GqlPlus_Parsing_Operation_ParseField -->|"argument"| GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D
          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D("Parser(IParserArg,IGqlpArg)+D")

          GqlPlus_Parsing_Operation_ParseField -->|"objectParser"| GqlPlus_Parsing_Parser_IGqlpSelection__DA
          GqlPlus_Parsing_Parser_IGqlpSelection__DA("Parser(IGqlpSelection)+DA")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA[["Parser(IGqlpModifier)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpModifier__DA href "#GqlPlus_Parsing_Parser_IGqlpModifier__DA" "- GqlPlus_Parsing_Parser_IGqlpModifier__DA"

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"=>"| GqlPlus_Parsing_ParseModifiers
          GqlPlus_Parsing_ParseModifiers("ParseModifiers")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA[["Parser(IGqlpDirective)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpDirective__DA href "#GqlPlus_Parsing_Parser_IGqlpDirective__DA" "- GqlPlus_Parsing_Parser_IGqlpDirective__DA"

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseDirectives
          GqlPlus_Parsing_Operation_ParseDirectives("ParseDirectives")

          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D[["Parser(IParserArg,IGqlpArg)+D"]]
click GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D href "#GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D" "- GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D"

          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D -->|"=>"| GqlPlus_Parsing_Operation_ParseArg
          GqlPlus_Parsing_Operation_ParseArg("ParseArg")

          GqlPlus_Parsing_Parser_IGqlpSelection__D("Parser(IGqlpSelection)+D")

          GqlPlus_Parsing_Parser_IGqlpSelection__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpSelection__D -->|"=>"| GqlPlus_Parsing_Operation_ParseSelection
          GqlPlus_Parsing_Operation_ParseSelection("ParseSelection")

          GqlPlus_Parsing_Operation_ParseSelection("ParseSelection")

          GqlPlus_Parsing_Operation_ParseSelection -->|"directives"| GqlPlus_Parsing_Parser_IGqlpDirective__DA
          GqlPlus_Parsing_Parser_IGqlpDirective__DA("Parser(IGqlpDirective)+DA")

          GqlPlus_Parsing_Operation_ParseSelection -->|"objectParser"| GqlPlus_Parsing_Parser_IGqlpSelection__DA
          GqlPlus_Parsing_Parser_IGqlpSelection__DA("Parser(IGqlpSelection)+DA")

        

Parser(IParserDefault,IGqlpConstant)+D

          flowchart TD
          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D("Parser(IParserDefault,IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"=>"| GqlPlus_Parsing_ParseDefault
          GqlPlus_Parsing_ParseDefault("ParseDefault")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_ParseDefault("ParseDefault")

          GqlPlus_Parsing_ParseDefault -->|"constant"| GqlPlus_Parsing_Parser_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IGqlpConstant__D("Parser(IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IGqlpConstant__D[["Parser(IGqlpConstant)+D"]]
click GqlPlus_Parsing_Parser_IGqlpConstant__D href "#GqlPlus_Parsing_Parser_IGqlpConstant__D" "- GqlPlus_Parsing_Parser_IGqlpConstant__D"

          GqlPlus_Parsing_Parser_IGqlpConstant__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpConstant__D -->|"=>"| GqlPlus_Parsing_ParseConstant
          GqlPlus_Parsing_ParseConstant("ParseConstant")

          GqlPlus_Parsing_Parser_NullAst__DA("Parser(NullAst)+DA")

          GqlPlus_Parsing_Parser_NullAst__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_NullAst__DA -->|"=>"| GqlPlus_Parsing_Schema_ParseNulls
          GqlPlus_Parsing_Schema_ParseNulls("ParseNulls")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_ParseNulls("ParseNulls")

        

Parser(IGqlpInputBase)+D

          flowchart TD
          GqlPlus_Parsing_Parser_IGqlpInputBase__D("Parser(IGqlpInputBase)+D")

          GqlPlus_Parsing_Parser_IGqlpInputBase__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpInputBase__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseInputBase
          GqlPlus_Parsing_Schema_Objects_ParseInputBase("ParseInputBase")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Objects_ParseInputBase("ParseInputBase")

          GqlPlus_Parsing_Schema_Objects_ParseInputBase -->|"parseArgs"| GqlPlus_Parsing_Parser_IGqlpInputArg__DA
          GqlPlus_Parsing_Parser_IGqlpInputArg__DA("Parser(IGqlpInputArg)+DA")

          GqlPlus_Parsing_Parser_IGqlpInputArg__DA("Parser(IGqlpInputArg)+DA")

          GqlPlus_Parsing_Parser_IGqlpInputArg__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpInputArg__DA -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseInputArgs
          GqlPlus_Parsing_Schema_Objects_ParseInputArgs("ParseInputArgs")

          GqlPlus_Parsing_Schema_Objects_ParseInputArgs("ParseInputArgs")

          GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_("EnumParser(CategoryOption)")

          GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

        

EnumParser(DirectiveOption)

          flowchart TD
          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_("EnumParser(DirectiveOption)")

          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

          GqlPlus_Parsing_Schema_Simple_EnumParser[["EnumParser"]]
click GqlPlus_Parsing_Schema_Simple_EnumParser href "#GqlPlus_Parsing_Schema_Simple_EnumParser" "- GqlPlus_Parsing_Schema_Simple_EnumParser"

          GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_("EnumParser(DomainKind)")

          GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

          GqlPlus_Parsing_Schema_Simple_EnumParser[["EnumParser"]]
click GqlPlus_Parsing_Schema_Simple_EnumParser href "#GqlPlus_Parsing_Schema_Simple_EnumParser" "- GqlPlus_Parsing_Schema_Simple_EnumParser"

          GqlPlus_Merging_IMerge_IGqlpConstant_("IMerge(IGqlpConstant)")

          GqlPlus_Merging_IMerge_IGqlpConstant_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpConstant_ -->|"1"| GqlPlus_Merging_MergeConstants
          GqlPlus_Merging_MergeConstants("MergeConstants")

          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_MergeConstants("MergeConstants")

        

IMerge(IGqlpTypeParam)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpTypeParam_("IMerge(IGqlpTypeParam)")

          GqlPlus_Merging_IMerge_IGqlpTypeParam_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpTypeParam_ -->|"1"| GqlPlus_Merging_Objects_MergeTypeParams
          GqlPlus_Merging_Objects_MergeTypeParams("MergeTypeParams")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Objects_MergeTypeParams("MergeTypeParams")

        

ParseDomainRegex

          flowchart TD
          GqlPlus_Parsing_Schema_Simple_ParseDomainRegex("ParseDomainRegex")

          GqlPlus_Parsing_Schema_Simple_ParseDomainRegex -->|"items"| GqlPlus_Parsing_Parser_IGqlpDomainRegex__DA
          GqlPlus_Parsing_Parser_IGqlpDomainRegex__DA("Parser(IGqlpDomainRegex)+DA")

          GqlPlus_Parsing_Parser_IGqlpDomainRegex__DA("Parser(IGqlpDomainRegex)+DA")

          GqlPlus_Parsing_Parser_IGqlpDomainRegex__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDomainRegex__DA -->|"=>"| GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainRegex_
          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainRegex_("ArrayParser(IGqlpDomainRegex)")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainRegex_("ArrayParser(IGqlpDomainRegex)")

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainRegex_ -->|"->"| GqlPlus_Parsing_Schema_ArrayParser
          GqlPlus_Parsing_Schema_ArrayParser("ArrayParser")

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainRegex_ -->|"itemParser"| GqlPlus_Parsing_Parser_IGqlpDomainRegex__D
          GqlPlus_Parsing_Parser_IGqlpDomainRegex__D("Parser(IGqlpDomainRegex)+D")

          GqlPlus_Parsing_Schema_ArrayParser("ArrayParser")

          GqlPlus_Parsing_Parser_IGqlpDomainRegex__D("Parser(IGqlpDomainRegex)+D")

          GqlPlus_Parsing_Parser_IGqlpDomainRegex__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDomainRegex__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseDomainRegex
          GqlPlus_Parsing_Schema_Simple_ParseDomainRegex("ParseDomainRegex")

        

Parser(IGqlpDualBase)+D

          flowchart TD
          GqlPlus_Parsing_Parser_IGqlpDualBase__D("Parser(IGqlpDualBase)+D")

          GqlPlus_Parsing_Parser_IGqlpDualBase__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDualBase__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseDualBase
          GqlPlus_Parsing_Schema_Objects_ParseDualBase("ParseDualBase")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Objects_ParseDualBase("ParseDualBase")

          GqlPlus_Parsing_Schema_Objects_ParseDualBase -->|"parseArgs"| GqlPlus_Parsing_Parser_IGqlpDualArg__DA
          GqlPlus_Parsing_Parser_IGqlpDualArg__DA("Parser(IGqlpDualArg)+DA")

          GqlPlus_Parsing_Parser_IGqlpDualArg__DA("Parser(IGqlpDualArg)+DA")

          GqlPlus_Parsing_Parser_IGqlpDualArg__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDualArg__DA -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseDualArgs
          GqlPlus_Parsing_Schema_Objects_ParseDualArgs("ParseDualArgs")

          GqlPlus_Parsing_Schema_Objects_ParseDualArgs("ParseDualArgs")

          GqlPlus_Parsing_Parser_IGqlpOutputBase__D("Parser(IGqlpOutputBase)+D")

          GqlPlus_Parsing_Parser_IGqlpOutputBase__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpOutputBase__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseOutputBase
          GqlPlus_Parsing_Schema_Objects_ParseOutputBase("ParseOutputBase")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Objects_ParseOutputBase("ParseOutputBase")

          GqlPlus_Parsing_Schema_Objects_ParseOutputBase -->|"parseArgs"| GqlPlus_Parsing_Parser_IGqlpOutputArg__DA
          GqlPlus_Parsing_Parser_IGqlpOutputArg__DA("Parser(IGqlpOutputArg)+DA")

          GqlPlus_Parsing_Parser_IGqlpOutputArg__DA("Parser(IGqlpOutputArg)+DA")

          GqlPlus_Parsing_Parser_IGqlpOutputArg__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpOutputArg__DA -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseOutputArgs
          GqlPlus_Parsing_Schema_Objects_ParseOutputArgs("ParseOutputArgs")

          GqlPlus_Parsing_Schema_Objects_ParseOutputArgs("ParseOutputArgs")

        

Parser(IGqlpTypeParam)+DA

          flowchart TD
          GqlPlus_Parsing_Parser_IGqlpTypeParam__DA("Parser(IGqlpTypeParam)+DA")

          GqlPlus_Parsing_Parser_IGqlpTypeParam__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpTypeParam__DA -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseTypeParams
          GqlPlus_Parsing_Schema_Objects_ParseTypeParams("ParseTypeParams")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Objects_ParseTypeParams("ParseTypeParams")

          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveLocation_("EnumParser(DirectiveLocation)")

          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveLocation_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

          GqlPlus_Parsing_Schema_Simple_EnumParser[["EnumParser"]]
click GqlPlus_Parsing_Schema_Simple_EnumParser href "#GqlPlus_Parsing_Schema_Simple_EnumParser" "- GqlPlus_Parsing_Schema_Simple_EnumParser"

          GqlPlus_Parsing_Schema_Globals_ICategoryName("ICategoryName")

          GqlPlus_Parsing_Schema_Globals_ICategoryName -->|"0"| GqlPlus_Parsing_Schema_Globals_CategoryName
          GqlPlus_Parsing_Schema_Globals_CategoryName("CategoryName")

          GqlPlus_Parsing_Schema_Globals_CategoryName("CategoryName")

        

IDirectiveName

          flowchart TD
          GqlPlus_Parsing_Schema_Globals_IDirectiveName("IDirectiveName")

          GqlPlus_Parsing_Schema_Globals_IDirectiveName -->|"0"| GqlPlus_Parsing_Schema_Globals_DirectiveName
          GqlPlus_Parsing_Schema_Globals_DirectiveName("DirectiveName")

          GqlPlus_Parsing_Schema_Globals_DirectiveName("DirectiveName")

        

IMerge(IGqlpInputParam)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpInputParam_("IMerge(IGqlpInputParam)")

          GqlPlus_Merging_IMerge_IGqlpInputParam_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpInputParam_ -->|"1"| GqlPlus_Merging_Objects_MergeInputParams
          GqlPlus_Merging_Objects_MergeInputParams("MergeInputParams")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Objects_MergeInputParams("MergeInputParams")

          GqlPlus_Merging_Objects_MergeInputParams -->|"constant"| GqlPlus_Merging_IMerge_IGqlpConstant_
          GqlPlus_Merging_IMerge_IGqlpConstant_("IMerge(IGqlpConstant)")

          GqlPlus_Merging_IMerge_IGqlpConstant_[["IMerge(IGqlpConstant)"]]
click GqlPlus_Merging_IMerge_IGqlpConstant_ href "#GqlPlus_Merging_IMerge_IGqlpConstant_" "- GqlPlus_Merging_IMerge_IGqlpConstant_"

          GqlPlus_Merging_IMerge_IGqlpConstant_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpConstant_ -->|"1"| GqlPlus_Merging_MergeConstants
          GqlPlus_Merging_MergeConstants("MergeConstants")

          GqlPlus_Parsing_Schema_Simple_IParseDomain("IParseDomain")

          GqlPlus_Parsing_Schema_Simple_IParseDomain -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseDomainRegex
          GqlPlus_Parsing_Schema_Simple_ParseDomainRegex("ParseDomainRegex")

          GqlPlus_Parsing_Schema_Simple_ParseDomainRegex[["ParseDomainRegex"]]
click GqlPlus_Parsing_Schema_Simple_ParseDomainRegex href "#GqlPlus_Parsing_Schema_Simple_ParseDomainRegex" "- GqlPlus_Parsing_Schema_Simple_ParseDomainRegex"

          GqlPlus_Parsing_Schema_Simple_ParseDomainRegex -->|"items"| GqlPlus_Parsing_Parser_IGqlpDomainRegex__DA
          GqlPlus_Parsing_Parser_IGqlpDomainRegex__DA("Parser(IGqlpDomainRegex)+DA")

        

ManyChecksParser(IGqlpModifier)

          flowchart TD
          GqlPlus_ManyChecksParser_IGqlpModifier_("ManyChecksParser(IGqlpModifier)")

          GqlPlus_ManyChecksParser_IGqlpModifier_ -->|"parser"| GqlPlus_Parsing_Parser_IGqlpModifier__DA
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA[["Parser(IGqlpModifier)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpModifier__DA href "#GqlPlus_Parsing_Parser_IGqlpModifier__DA" "- GqlPlus_Parsing_Parser_IGqlpModifier__DA"

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"=>"| GqlPlus_Parsing_ParseModifiers
          GqlPlus_Parsing_ParseModifiers("ParseModifiers")

          GqlPlus_ManyChecksParser_IParserCollections_IGqlpModifier_("ManyChecksParser(IParserCollections,IGqlpModifier)")

          GqlPlus_ManyChecksParser_IParserCollections_IGqlpModifier_ -->|"parser"| GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA
          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA("ParserArray(IParserCollections,IGqlpModifier)+DA")

          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA[["ParserArray(IParserCollections,IGqlpModifier)+DA"]]
click GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA href "#GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA" "- GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA"

          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA -->|"->"| GqlPlus_Parsing_ParserArray
          GqlPlus_Parsing_ParserArray("ParserArray")

          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA -->|"=>"| GqlPlus_Parsing_ParseCollections
          GqlPlus_Parsing_ParseCollections("ParseCollections")

        

MergeAllDomains

          flowchart TD
          GqlPlus_Merging_Simple_MergeAllDomains("MergeAllDomains")

          GqlPlus_Merging_Simple_MergeAllDomains -->|"domains[]"| GqlPlus_Merging_IMergeAll_IGqlpDomain_
          GqlPlus_Merging_IMergeAll_IGqlpDomain_("IMergeAll(IGqlpDomain)")

          GqlPlus_Merging_IMergeAll_IGqlpDomain_("IMergeAll(IGqlpDomain)")

          GqlPlus_Merging_IMergeAll_IGqlpDomain_ -->|"->"| GqlPlus_Merging_IMergeAll
          GqlPlus_Merging_IMergeAll("IMergeAll")

          GqlPlus_Merging_IMergeAll_IGqlpDomain_ -->|"=>"| GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_
          GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_("MergeDomains(DomainTrueFalseAst,IGqlpDomainTrueFalse)")

          GqlPlus_Merging_IMergeAll("IMergeAll")

          GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_("MergeDomains(DomainTrueFalseAst,IGqlpDomainTrueFalse)")

          GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_ -->|"->"| GqlPlus_Merging_Simple_MergeDomains
          GqlPlus_Merging_Simple_MergeDomains("MergeDomains")

          GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_ -->|"items"| GqlPlus_Merging_IMerge_IGqlpDomainTrueFalse_
          GqlPlus_Merging_IMerge_IGqlpDomainTrueFalse_("IMerge(IGqlpDomainTrueFalse)")

          GqlPlus_Merging_Simple_MergeDomains("MergeDomains")

          GqlPlus_Merging_IMerge_IGqlpDomainTrueFalse_("IMerge(IGqlpDomainTrueFalse)")

          GqlPlus_Merging_IMerge_IGqlpDomainTrueFalse_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomainTrueFalse_ -->|"1"| GqlPlus_Merging_Simple_MergeDomainTrueFalse
          GqlPlus_Merging_Simple_MergeDomainTrueFalse("MergeDomainTrueFalse")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeDomainTrueFalse("MergeDomainTrueFalse")

        

MergeAllTypes

          flowchart TD
          GqlPlus_Merging_MergeAllTypes("MergeAllTypes")

          GqlPlus_Merging_MergeAllTypes -->|"types[]"| GqlPlus_Merging_IMergeAll_IGqlpType_
          GqlPlus_Merging_IMergeAll_IGqlpType_("IMergeAll(IGqlpType)")

          GqlPlus_Merging_IMergeAll_IGqlpType_("IMergeAll(IGqlpType)")

          GqlPlus_Merging_IMergeAll_IGqlpType_ -->|"->"| GqlPlus_Merging_IMergeAll
          GqlPlus_Merging_IMergeAll("IMergeAll")

          GqlPlus_Merging_IMergeAll_IGqlpType_ -->|"=>"| GqlPlus_Merging_Objects_MergeOutputObjects
          GqlPlus_Merging_Objects_MergeOutputObjects("MergeOutputObjects")

          GqlPlus_Merging_IMergeAll[["IMergeAll"]]
click GqlPlus_Merging_IMergeAll href "#GqlPlus_Merging_IMergeAll" "- GqlPlus_Merging_IMergeAll"

          GqlPlus_Merging_Objects_MergeOutputObjects("MergeOutputObjects")

          GqlPlus_Merging_Objects_MergeOutputObjects -->|"fields"| GqlPlus_Merging_IMerge_IGqlpOutputField_
          GqlPlus_Merging_IMerge_IGqlpOutputField_("IMerge(IGqlpOutputField)")

          GqlPlus_Merging_Objects_MergeOutputObjects -->|"typeParams"| GqlPlus_Merging_IMerge_IGqlpTypeParam_
          GqlPlus_Merging_IMerge_IGqlpTypeParam_("IMerge(IGqlpTypeParam)")

          GqlPlus_Merging_Objects_MergeOutputObjects -->|"alternates"| GqlPlus_Merging_IMerge_IGqlpOutputAlternate_
          GqlPlus_Merging_IMerge_IGqlpOutputAlternate_("IMerge(IGqlpOutputAlternate)")

          GqlPlus_Merging_IMerge_IGqlpOutputField_("IMerge(IGqlpOutputField)")

          GqlPlus_Merging_IMerge_IGqlpOutputField_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpOutputField_ -->|"1"| GqlPlus_Merging_Objects_MergeOutputFields
          GqlPlus_Merging_Objects_MergeOutputFields("MergeOutputFields")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Objects_MergeOutputFields("MergeOutputFields")

          GqlPlus_Merging_Objects_MergeOutputFields -->|"parameters"| GqlPlus_Merging_IMerge_IGqlpInputParam_
          GqlPlus_Merging_IMerge_IGqlpInputParam_("IMerge(IGqlpInputParam)")

          GqlPlus_Merging_IMerge_IGqlpInputParam_[["IMerge(IGqlpInputParam)"]]
click GqlPlus_Merging_IMerge_IGqlpInputParam_ href "#GqlPlus_Merging_IMerge_IGqlpInputParam_" "- GqlPlus_Merging_IMerge_IGqlpInputParam_"

          GqlPlus_Merging_IMerge_IGqlpInputParam_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpInputParam_ -->|"1"| GqlPlus_Merging_Objects_MergeInputParams
          GqlPlus_Merging_Objects_MergeInputParams("MergeInputParams")

          GqlPlus_Merging_IMerge_IGqlpTypeParam_[["IMerge(IGqlpTypeParam)"]]
click GqlPlus_Merging_IMerge_IGqlpTypeParam_ href "#GqlPlus_Merging_IMerge_IGqlpTypeParam_" "- GqlPlus_Merging_IMerge_IGqlpTypeParam_"

          GqlPlus_Merging_IMerge_IGqlpTypeParam_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpTypeParam_ -->|"1"| GqlPlus_Merging_Objects_MergeTypeParams
          GqlPlus_Merging_Objects_MergeTypeParams("MergeTypeParams")

          GqlPlus_Merging_IMerge_IGqlpOutputAlternate_("IMerge(IGqlpOutputAlternate)")

          GqlPlus_Merging_IMerge_IGqlpOutputAlternate_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpOutputAlternate_ -->|"1"| GqlPlus_Merging_Objects_MergeOutputAlternates
          GqlPlus_Merging_Objects_MergeOutputAlternates("MergeOutputAlternates")

          GqlPlus_Merging_Objects_MergeOutputAlternates("MergeOutputAlternates")

        

MergeDirectives

          flowchart TD
          GqlPlus_Merging_Globals_MergeDirectives("MergeDirectives")

          GqlPlus_Merging_Globals_MergeDirectives -->|"parameters"| GqlPlus_Merging_IMerge_IGqlpInputParam_
          GqlPlus_Merging_IMerge_IGqlpInputParam_("IMerge(IGqlpInputParam)")

          GqlPlus_Merging_IMerge_IGqlpInputParam_[["IMerge(IGqlpInputParam)"]]
click GqlPlus_Merging_IMerge_IGqlpInputParam_ href "#GqlPlus_Merging_IMerge_IGqlpInputParam_" "- GqlPlus_Merging_IMerge_IGqlpInputParam_"

          GqlPlus_Merging_IMerge_IGqlpInputParam_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpInputParam_ -->|"1"| GqlPlus_Merging_Objects_MergeInputParams
          GqlPlus_Merging_Objects_MergeInputParams("MergeInputParams")

        

MergeEnums

          flowchart TD
          GqlPlus_Merging_Simple_MergeEnums("MergeEnums")

          GqlPlus_Merging_Simple_MergeEnums -->|"enumLabels"| GqlPlus_Merging_IMerge_IGqlpEnumLabel_
          GqlPlus_Merging_IMerge_IGqlpEnumLabel_("IMerge(IGqlpEnumLabel)")

          GqlPlus_Merging_IMerge_IGqlpEnumLabel_("IMerge(IGqlpEnumLabel)")

          GqlPlus_Merging_IMerge_IGqlpEnumLabel_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpEnumLabel_ -->|"1"| GqlPlus_Merging_Simple_MergeEnumLabels
          GqlPlus_Merging_Simple_MergeEnumLabels("MergeEnumLabels")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeEnumLabels("MergeEnumLabels")

          GqlPlus_Merging_Objects_MergeInputFields("MergeInputFields")

          GqlPlus_Merging_Objects_MergeInputFields -->|"constant"| GqlPlus_Merging_IMerge_IGqlpConstant_
          GqlPlus_Merging_IMerge_IGqlpConstant_("IMerge(IGqlpConstant)")

          GqlPlus_Merging_IMerge_IGqlpConstant_[["IMerge(IGqlpConstant)"]]
click GqlPlus_Merging_IMerge_IGqlpConstant_ href "#GqlPlus_Merging_IMerge_IGqlpConstant_" "- GqlPlus_Merging_IMerge_IGqlpConstant_"

          GqlPlus_Merging_IMerge_IGqlpConstant_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpConstant_ -->|"1"| GqlPlus_Merging_MergeConstants
          GqlPlus_Merging_MergeConstants("MergeConstants")

        

MergeOptions

          flowchart TD
          GqlPlus_Merging_Globals_MergeOptions("MergeOptions")

          GqlPlus_Merging_Globals_MergeOptions -->|"settings"| GqlPlus_Merging_IMerge_IGqlpSchemaSetting_
          GqlPlus_Merging_IMerge_IGqlpSchemaSetting_("IMerge(IGqlpSchemaSetting)")

          GqlPlus_Merging_IMerge_IGqlpSchemaSetting_("IMerge(IGqlpSchemaSetting)")

          GqlPlus_Merging_IMerge_IGqlpSchemaSetting_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpSchemaSetting_ -->|"1"| GqlPlus_Merging_Globals_MergeOptionSettings
          GqlPlus_Merging_Globals_MergeOptionSettings("MergeOptionSettings")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Globals_MergeOptionSettings("MergeOptionSettings")

          GqlPlus_Merging_Globals_MergeOptionSettings -->|"values"| GqlPlus_Merging_IMerge_IGqlpConstant_
          GqlPlus_Merging_IMerge_IGqlpConstant_("IMerge(IGqlpConstant)")

          GqlPlus_Merging_IMerge_IGqlpConstant_[["IMerge(IGqlpConstant)"]]
click GqlPlus_Merging_IMerge_IGqlpConstant_ href "#GqlPlus_Merging_IMerge_IGqlpConstant_" "- GqlPlus_Merging_IMerge_IGqlpConstant_"

          GqlPlus_Merging_IMerge_IGqlpConstant_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpConstant_ -->|"1"| GqlPlus_Merging_MergeConstants
          GqlPlus_Merging_MergeConstants("MergeConstants")

          GqlPlus_Merging_Simple_MergeUnions("MergeUnions")

          GqlPlus_Merging_Simple_MergeUnions -->|"unionMembers"| GqlPlus_Merging_IMerge_IGqlpUnionMember_
          GqlPlus_Merging_IMerge_IGqlpUnionMember_("IMerge(IGqlpUnionMember)")

          GqlPlus_Merging_IMerge_IGqlpUnionMember_("IMerge(IGqlpUnionMember)")

          GqlPlus_Merging_IMerge_IGqlpUnionMember_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpUnionMember_ -->|"1"| GqlPlus_Merging_Simple_MergeUnionMembers
          GqlPlus_Merging_Simple_MergeUnionMembers("MergeUnionMembers")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeUnionMembers("MergeUnionMembers")

        

OneChecksParser(IGqlpConstant)

          flowchart TD
          GqlPlus_OneChecksParser_IGqlpConstant_("OneChecksParser(IGqlpConstant)")

          GqlPlus_OneChecksParser_IGqlpConstant_ -->|"parser"| GqlPlus_Parsing_Parser_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IGqlpConstant__D("Parser(IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IGqlpConstant__D[["Parser(IGqlpConstant)+D"]]
click GqlPlus_Parsing_Parser_IGqlpConstant__D href "#GqlPlus_Parsing_Parser_IGqlpConstant__D" "- GqlPlus_Parsing_Parser_IGqlpConstant__D"

          GqlPlus_Parsing_Parser_IGqlpConstant__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpConstant__D -->|"=>"| GqlPlus_Parsing_ParseConstant
          GqlPlus_Parsing_ParseConstant("ParseConstant")

          GqlPlus_OneChecksParser_IGqlpFieldKey_("OneChecksParser(IGqlpFieldKey)")

          GqlPlus_OneChecksParser_IGqlpFieldKey_ -->|"parser"| GqlPlus_Parsing_Parser_IGqlpFieldKey__D
          GqlPlus_Parsing_Parser_IGqlpFieldKey__D("Parser(IGqlpFieldKey)+D")

          GqlPlus_Parsing_Parser_IGqlpFieldKey__D[["Parser(IGqlpFieldKey)+D"]]
click GqlPlus_Parsing_Parser_IGqlpFieldKey__D href "#GqlPlus_Parsing_Parser_IGqlpFieldKey__D" "- GqlPlus_Parsing_Parser_IGqlpFieldKey__D"

          GqlPlus_Parsing_Parser_IGqlpFieldKey__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpFieldKey__D -->|"=>"| GqlPlus_Parsing_ParseFieldKey
          GqlPlus_Parsing_ParseFieldKey("ParseFieldKey")

          GqlPlus_OneChecksParser_IParserDefault_IGqlpConstant_("OneChecksParser(IParserDefault,IGqlpConstant)")

          GqlPlus_OneChecksParser_IParserDefault_IGqlpConstant_ -->|"parser"| GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D("Parser(IParserDefault,IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D[["Parser(IParserDefault,IGqlpConstant)+D"]]
click GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D href "#GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D" "- GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D"

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"=>"| GqlPlus_Parsing_ParseDefault
          GqlPlus_Parsing_ParseDefault("ParseDefault")

        

OneChecksParser(KeyValue(IGqlpConstant))

          flowchart TD
          GqlPlus_OneChecksParser_KeyValue_IGqlpConstant__("OneChecksParser(KeyValue(IGqlpConstant))")

          GqlPlus_OneChecksParser_KeyValue_IGqlpConstant__ -->|"parser"| GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D
          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D("Parser(KeyValue(IGqlpConstant))+D")

          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D[["Parser(KeyValue(IGqlpConstant))+D"]]
click GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D href "#GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D" "- GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D"

          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D -->|"=>"| GqlPlus_Parsing_ValueKeyValueParser_IGqlpConstant_
          GqlPlus_Parsing_ValueKeyValueParser_IGqlpConstant_("ValueKeyValueParser(IGqlpConstant)")

        

ParseDirectiveDefinition

          flowchart TD
          GqlPlus_Parsing_Schema_Globals_ParseDirectiveDefinition("ParseDirectiveDefinition")

          GqlPlus_Parsing_Schema_Globals_ParseDirectiveDefinition -->|"location"| GqlPlus_Parsing_Parser_IEnumParser_DirectiveLocation__DirectiveLocation__D
          GqlPlus_Parsing_Parser_IEnumParser_DirectiveLocation__DirectiveLocation__D("Parser(IEnumParser(DirectiveLocation),DirectiveLocation)+D")

          GqlPlus_Parsing_Parser_IEnumParser_DirectiveLocation__DirectiveLocation__D("Parser(IEnumParser(DirectiveLocation),DirectiveLocation)+D")

          GqlPlus_Parsing_Parser_IEnumParser_DirectiveLocation__DirectiveLocation__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IEnumParser_DirectiveLocation__DirectiveLocation__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveLocation_
          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveLocation_("EnumParser(DirectiveLocation)")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveLocation_[["EnumParser(DirectiveLocation)"]]
click GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveLocation_ href "#GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveLocation_" "- GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveLocation_"

          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveLocation_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

        

ParseDomainLabel

          flowchart TD
          GqlPlus_Parsing_Schema_Simple_ParseDomainLabel("ParseDomainLabel")

          GqlPlus_Parsing_Schema_Simple_ParseDomainLabel -->|"items"| GqlPlus_Parsing_Parser_IGqlpDomainLabel__DA
          GqlPlus_Parsing_Parser_IGqlpDomainLabel__DA("Parser(IGqlpDomainLabel)+DA")

          GqlPlus_Parsing_Parser_IGqlpDomainLabel__DA("Parser(IGqlpDomainLabel)+DA")

          GqlPlus_Parsing_Parser_IGqlpDomainLabel__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDomainLabel__DA -->|"=>"| GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainLabel_
          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainLabel_("ArrayParser(IGqlpDomainLabel)")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainLabel_("ArrayParser(IGqlpDomainLabel)")

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainLabel_ -->|"->"| GqlPlus_Parsing_Schema_ArrayParser
          GqlPlus_Parsing_Schema_ArrayParser("ArrayParser")

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainLabel_ -->|"itemParser"| GqlPlus_Parsing_Parser_IGqlpDomainLabel__D
          GqlPlus_Parsing_Parser_IGqlpDomainLabel__D("Parser(IGqlpDomainLabel)+D")

          GqlPlus_Parsing_Schema_ArrayParser[["ArrayParser"]]
click GqlPlus_Parsing_Schema_ArrayParser href "#GqlPlus_Parsing_Schema_ArrayParser" "- GqlPlus_Parsing_Schema_ArrayParser"

          GqlPlus_Parsing_Parser_IGqlpDomainLabel__D("Parser(IGqlpDomainLabel)+D")

          GqlPlus_Parsing_Parser_IGqlpDomainLabel__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDomainLabel__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseDomainLabel
          GqlPlus_Parsing_Schema_Simple_ParseDomainLabel("ParseDomainLabel")

        

ParseDomainRange

          flowchart TD
          GqlPlus_Parsing_Schema_Simple_ParseDomainRange("ParseDomainRange")

          GqlPlus_Parsing_Schema_Simple_ParseDomainRange -->|"items"| GqlPlus_Parsing_Parser_IGqlpDomainRange__DA
          GqlPlus_Parsing_Parser_IGqlpDomainRange__DA("Parser(IGqlpDomainRange)+DA")

          GqlPlus_Parsing_Parser_IGqlpDomainRange__DA("Parser(IGqlpDomainRange)+DA")

          GqlPlus_Parsing_Parser_IGqlpDomainRange__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDomainRange__DA -->|"=>"| GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainRange_
          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainRange_("ArrayParser(IGqlpDomainRange)")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainRange_("ArrayParser(IGqlpDomainRange)")

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainRange_ -->|"->"| GqlPlus_Parsing_Schema_ArrayParser
          GqlPlus_Parsing_Schema_ArrayParser("ArrayParser")

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainRange_ -->|"itemParser"| GqlPlus_Parsing_Parser_IGqlpDomainRange__D
          GqlPlus_Parsing_Parser_IGqlpDomainRange__D("Parser(IGqlpDomainRange)+D")

          GqlPlus_Parsing_Schema_ArrayParser[["ArrayParser"]]
click GqlPlus_Parsing_Schema_ArrayParser href "#GqlPlus_Parsing_Schema_ArrayParser" "- GqlPlus_Parsing_Schema_ArrayParser"

          GqlPlus_Parsing_Parser_IGqlpDomainRange__D("Parser(IGqlpDomainRange)+D")

          GqlPlus_Parsing_Parser_IGqlpDomainRange__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDomainRange__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseDomainRange
          GqlPlus_Parsing_Schema_Simple_ParseDomainRange("ParseDomainRange")

        

ParseDomainTrueFalse

          flowchart TD
          GqlPlus_Parsing_Schema_Simple_ParseDomainTrueFalse("ParseDomainTrueFalse")

          GqlPlus_Parsing_Schema_Simple_ParseDomainTrueFalse -->|"items"| GqlPlus_Parsing_Parser_IGqlpDomainTrueFalse__DA
          GqlPlus_Parsing_Parser_IGqlpDomainTrueFalse__DA("Parser(IGqlpDomainTrueFalse)+DA")

          GqlPlus_Parsing_Parser_IGqlpDomainTrueFalse__DA("Parser(IGqlpDomainTrueFalse)+DA")

          GqlPlus_Parsing_Parser_IGqlpDomainTrueFalse__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDomainTrueFalse__DA -->|"=>"| GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainTrueFalse_
          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainTrueFalse_("ArrayParser(IGqlpDomainTrueFalse)")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainTrueFalse_("ArrayParser(IGqlpDomainTrueFalse)")

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainTrueFalse_ -->|"->"| GqlPlus_Parsing_Schema_ArrayParser
          GqlPlus_Parsing_Schema_ArrayParser("ArrayParser")

          GqlPlus_Parsing_Schema_ArrayParser_IGqlpDomainTrueFalse_ -->|"itemParser"| GqlPlus_Parsing_Parser_IGqlpDomainTrueFalse__D
          GqlPlus_Parsing_Parser_IGqlpDomainTrueFalse__D("Parser(IGqlpDomainTrueFalse)+D")

          GqlPlus_Parsing_Schema_ArrayParser[["ArrayParser"]]
click GqlPlus_Parsing_Schema_ArrayParser href "#GqlPlus_Parsing_Schema_ArrayParser" "- GqlPlus_Parsing_Schema_ArrayParser"

          GqlPlus_Parsing_Parser_IGqlpDomainTrueFalse__D("Parser(IGqlpDomainTrueFalse)+D")

          GqlPlus_Parsing_Parser_IGqlpDomainTrueFalse__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDomainTrueFalse__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseDomainTrueFalse
          GqlPlus_Parsing_Schema_Simple_ParseDomainTrueFalse("ParseDomainTrueFalse")

        

ParseEnumDefinition

          flowchart TD
          GqlPlus_Parsing_Schema_Simple_ParseEnumDefinition("ParseEnumDefinition")

          GqlPlus_Parsing_Schema_Simple_ParseEnumDefinition -->|"enumLabel"| GqlPlus_Parsing_Parser_IGqlpEnumLabel__D
          GqlPlus_Parsing_Parser_IGqlpEnumLabel__D("Parser(IGqlpEnumLabel)+D")

          GqlPlus_Parsing_Parser_IGqlpEnumLabel__D("Parser(IGqlpEnumLabel)+D")

          GqlPlus_Parsing_Parser_IGqlpEnumLabel__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpEnumLabel__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseEnumLabel
          GqlPlus_Parsing_Schema_Simple_ParseEnumLabel("ParseEnumLabel")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Simple_ParseEnumLabel("ParseEnumLabel")

          GqlPlus_Parsing_Schema_Simple_ParseEnumLabel -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Parser_String__DA[["Parser(String)+DA"]]
click GqlPlus_Parsing_Parser_String__DA href "#GqlPlus_Parsing_Parser_String__DA" "- GqlPlus_Parsing_Parser_String__DA"

          GqlPlus_Parsing_Parser_String__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_String__DA -->|"=>"| GqlPlus_Parsing_Schema_ParseAliases
          GqlPlus_Parsing_Schema_ParseAliases("ParseAliases")

          GqlPlus_Parsing_Schema_Globals_ParseOptionDefinition("ParseOptionDefinition")

          GqlPlus_Parsing_Schema_Globals_ParseOptionDefinition -->|"setting"| GqlPlus_Parsing_Parser_IGqlpSchemaSetting__D
          GqlPlus_Parsing_Parser_IGqlpSchemaSetting__D("Parser(IGqlpSchemaSetting)+D")

          GqlPlus_Parsing_Parser_IGqlpSchemaSetting__D("Parser(IGqlpSchemaSetting)+D")

          GqlPlus_Parsing_Parser_IGqlpSchemaSetting__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpSchemaSetting__D -->|"=>"| GqlPlus_Parsing_Schema_Globals_ParseOptionSetting
          GqlPlus_Parsing_Schema_Globals_ParseOptionSetting("ParseOptionSetting")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Globals_ParseOptionSetting("ParseOptionSetting")

          GqlPlus_Parsing_Schema_Globals_ParseOptionSetting -->|"defaultParser"| GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D("Parser(IParserDefault,IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D[["Parser(IParserDefault,IGqlpConstant)+D"]]
click GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D href "#GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D" "- GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D"

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"=>"| GqlPlus_Parsing_ParseDefault
          GqlPlus_Parsing_ParseDefault("ParseDefault")

        

Parser(IGqlpInputParam)+DA

          flowchart TD
          GqlPlus_Parsing_Parser_IGqlpInputParam__DA("Parser(IGqlpInputParam)+DA")

          GqlPlus_Parsing_Parser_IGqlpInputParam__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpInputParam__DA -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseInputParams
          GqlPlus_Parsing_Schema_Objects_ParseInputParams("ParseInputParams")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Objects_ParseInputParams("ParseInputParams")

          GqlPlus_Parsing_Schema_Objects_ParseInputParams -->|"input"| GqlPlus_Parsing_Parser_IGqlpInputBase__D
          GqlPlus_Parsing_Parser_IGqlpInputBase__D("Parser(IGqlpInputBase)+D")

          GqlPlus_Parsing_Schema_Objects_ParseInputParams -->|"modifiers"| GqlPlus_Parsing_Parser_IGqlpModifier__DA
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseInputParams -->|"defaultParser"| GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D("Parser(IParserDefault,IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IGqlpInputBase__D[["Parser(IGqlpInputBase)+D"]]
click GqlPlus_Parsing_Parser_IGqlpInputBase__D href "#GqlPlus_Parsing_Parser_IGqlpInputBase__D" "- GqlPlus_Parsing_Parser_IGqlpInputBase__D"

          GqlPlus_Parsing_Parser_IGqlpInputBase__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpInputBase__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseInputBase
          GqlPlus_Parsing_Schema_Objects_ParseInputBase("ParseInputBase")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA[["Parser(IGqlpModifier)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpModifier__DA href "#GqlPlus_Parsing_Parser_IGqlpModifier__DA" "- GqlPlus_Parsing_Parser_IGqlpModifier__DA"

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"=>"| GqlPlus_Parsing_ParseModifiers
          GqlPlus_Parsing_ParseModifiers("ParseModifiers")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D[["Parser(IParserDefault,IGqlpConstant)+D"]]
click GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D href "#GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D" "- GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D"

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"=>"| GqlPlus_Parsing_ParseDefault
          GqlPlus_Parsing_ParseDefault("ParseDefault")

        

ParseSchema

          flowchart TD
          GqlPlus_Parsing_Schema_ParseSchema("ParseSchema")

          GqlPlus_Parsing_Schema_ParseSchema -->|"declarations[]"| GqlPlus_Parsing_Schema_IParseDeclaration
          GqlPlus_Parsing_Schema_IParseDeclaration("IParseDeclaration")

          GqlPlus_Parsing_Schema_IParseDeclaration("IParseDeclaration")

          GqlPlus_Parsing_Schema_IParseDeclaration -->|"0"| GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaCategory_
          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaCategory_("ParseDeclaration(IGqlpSchemaCategory)")

          GqlPlus_Parsing_Schema_IParseDeclaration -->|"1"| GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaDirective_
          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaDirective_("ParseDeclaration(IGqlpSchemaDirective)")

          GqlPlus_Parsing_Schema_IParseDeclaration -->|"2"| GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaOption_
          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaOption_("ParseDeclaration(IGqlpSchemaOption)")

          GqlPlus_Parsing_Schema_IParseDeclaration -->|"3"| GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpEnum_
          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpEnum_("ParseDeclaration(IGqlpEnum)")

          GqlPlus_Parsing_Schema_IParseDeclaration -->|"4"| GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpDomain_
          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpDomain_("ParseDeclaration(IGqlpDomain)")

          GqlPlus_Parsing_Schema_IParseDeclaration -->|"5"| GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpUnion_
          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpUnion_("ParseDeclaration(IGqlpUnion)")

          GqlPlus_Parsing_Schema_IParseDeclaration -->|"6"| GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpDualObject_
          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpDualObject_("ParseDeclaration(IGqlpDualObject)")

          GqlPlus_Parsing_Schema_IParseDeclaration -->|"7"| GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpInputObject_
          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpInputObject_("ParseDeclaration(IGqlpInputObject)")

          GqlPlus_Parsing_Schema_IParseDeclaration -->|"8"| GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpOutputObject_
          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpOutputObject_("ParseDeclaration(IGqlpOutputObject)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaCategory_("ParseDeclaration(IGqlpSchemaCategory)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaCategory_ -->|"selector"| GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaCategory_
          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaCategory_("IDeclarationSelector(IGqlpSchemaCategory)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaCategory_ -->|"declaration"| GqlPlus_Parsing_Parser_IGqlpSchemaCategory__D
          GqlPlus_Parsing_Parser_IGqlpSchemaCategory__D("Parser(IGqlpSchemaCategory)+D")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaCategory_("IDeclarationSelector(IGqlpSchemaCategory)")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaCategory_ -->|"->"| GqlPlus_Parsing_Schema_IDeclarationSelector
          GqlPlus_Parsing_Schema_IDeclarationSelector("IDeclarationSelector")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaCategory_ -->|"=="| GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpSchemaCategory_
          GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpSchemaCategory_("DeclarationSelector(IGqlpSchemaCategory)")

          GqlPlus_Parsing_Schema_IDeclarationSelector("IDeclarationSelector")

          GqlPlus_Parsing_Parser_IGqlpSchemaCategory__D("Parser(IGqlpSchemaCategory)+D")

          GqlPlus_Parsing_Parser_IGqlpSchemaCategory__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpSchemaCategory__D -->|"=>"| GqlPlus_Parsing_Schema_Globals_ParseCategory
          GqlPlus_Parsing_Schema_Globals_ParseCategory("ParseCategory")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Globals_ParseCategory("ParseCategory")

          GqlPlus_Parsing_Schema_Globals_ParseCategory -->|"name"| GqlPlus_Parsing_Schema_Globals_ICategoryName
          GqlPlus_Parsing_Schema_Globals_ICategoryName("ICategoryName")

          GqlPlus_Parsing_Schema_Globals_ParseCategory -->|"param"| GqlPlus_Parsing_Parser_NullAst__DA
          GqlPlus_Parsing_Parser_NullAst__DA("Parser(NullAst)+DA")

          GqlPlus_Parsing_Schema_Globals_ParseCategory -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Globals_ParseCategory -->|"option"| GqlPlus_Parsing_Parser_IOptionParser_CategoryOption__CategoryOption__D
          GqlPlus_Parsing_Parser_IOptionParser_CategoryOption__CategoryOption__D("Parser(IOptionParser(CategoryOption),CategoryOption)+D")

          GqlPlus_Parsing_Schema_Globals_ParseCategory -->|"definition"| GqlPlus_Parsing_Parser_CategoryOutput__D
          GqlPlus_Parsing_Parser_CategoryOutput__D("Parser(CategoryOutput)+D")

          GqlPlus_Parsing_Schema_Globals_ICategoryName[["ICategoryName"]]
click GqlPlus_Parsing_Schema_Globals_ICategoryName href "#GqlPlus_Parsing_Schema_Globals_ICategoryName" "- GqlPlus_Parsing_Schema_Globals_ICategoryName"

          GqlPlus_Parsing_Schema_Globals_ICategoryName -->|"0"| GqlPlus_Parsing_Schema_Globals_CategoryName
          GqlPlus_Parsing_Schema_Globals_CategoryName("CategoryName")

          GqlPlus_Parsing_Parser_NullAst__DA[["Parser(NullAst)+DA"]]
click GqlPlus_Parsing_Parser_NullAst__DA href "#GqlPlus_Parsing_Parser_NullAst__DA" "- GqlPlus_Parsing_Parser_NullAst__DA"

          GqlPlus_Parsing_Parser_NullAst__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_NullAst__DA -->|"=>"| GqlPlus_Parsing_Schema_ParseNulls
          GqlPlus_Parsing_Schema_ParseNulls("ParseNulls")

          GqlPlus_Parsing_Parser_String__DA[["Parser(String)+DA"]]
click GqlPlus_Parsing_Parser_String__DA href "#GqlPlus_Parsing_Parser_String__DA" "- GqlPlus_Parsing_Parser_String__DA"

          GqlPlus_Parsing_Parser_String__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_String__DA -->|"=>"| GqlPlus_Parsing_Schema_ParseAliases
          GqlPlus_Parsing_Schema_ParseAliases("ParseAliases")

          GqlPlus_Parsing_Parser_IOptionParser_CategoryOption__CategoryOption__D("Parser(IOptionParser(CategoryOption),CategoryOption)+D")

          GqlPlus_Parsing_Parser_IOptionParser_CategoryOption__CategoryOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IOptionParser_CategoryOption__CategoryOption__D -->|"=>"| GqlPlus_Parsing_Schema_OptionParser_CategoryOption_
          GqlPlus_Parsing_Schema_OptionParser_CategoryOption_("OptionParser(CategoryOption)")

          GqlPlus_Parsing_Schema_OptionParser_CategoryOption_("OptionParser(CategoryOption)")

          GqlPlus_Parsing_Schema_OptionParser_CategoryOption_ -->|"->"| GqlPlus_Parsing_Schema_OptionParser
          GqlPlus_Parsing_Schema_OptionParser("OptionParser")

          GqlPlus_Parsing_Schema_OptionParser_CategoryOption_ -->|"parser"| GqlPlus_Parsing_Parser_IEnumParser_CategoryOption__CategoryOption__D
          GqlPlus_Parsing_Parser_IEnumParser_CategoryOption__CategoryOption__D("Parser(IEnumParser(CategoryOption),CategoryOption)+D")

          GqlPlus_Parsing_Schema_OptionParser("OptionParser")

          GqlPlus_Parsing_Parser_IEnumParser_CategoryOption__CategoryOption__D("Parser(IEnumParser(CategoryOption),CategoryOption)+D")

          GqlPlus_Parsing_Parser_IEnumParser_CategoryOption__CategoryOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IEnumParser_CategoryOption__CategoryOption__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_
          GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_("EnumParser(CategoryOption)")

          GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_[["EnumParser(CategoryOption)"]]
click GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_ href "#GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_" "- GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_"

          GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

          GqlPlus_Parsing_Parser_CategoryOutput__D("Parser(CategoryOutput)+D")

          GqlPlus_Parsing_Parser_CategoryOutput__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_CategoryOutput__D -->|"=>"| GqlPlus_Parsing_Schema_Globals_ParseCategoryDefinition
          GqlPlus_Parsing_Schema_Globals_ParseCategoryDefinition("ParseCategoryDefinition")

          GqlPlus_Parsing_Schema_Globals_ParseCategoryDefinition("ParseCategoryDefinition")

          GqlPlus_Parsing_Schema_Globals_ParseCategoryDefinition -->|"typeRef"| GqlPlus_Parsing_Parser_IGqlpTypeRef__D
          GqlPlus_Parsing_Parser_IGqlpTypeRef__D("Parser(IGqlpTypeRef)+D")

          GqlPlus_Parsing_Schema_Globals_ParseCategoryDefinition -->|"modifiers"| GqlPlus_Parsing_Parser_IGqlpModifier__DA
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_Parsing_Parser_IGqlpTypeRef__D("Parser(IGqlpTypeRef)+D")

          GqlPlus_Parsing_Parser_IGqlpTypeRef__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpTypeRef__D -->|"=>"| GqlPlus_Parsing_Schema_ParseTypeRef
          GqlPlus_Parsing_Schema_ParseTypeRef("ParseTypeRef")

          GqlPlus_Parsing_Schema_ParseTypeRef("ParseTypeRef")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA[["Parser(IGqlpModifier)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpModifier__DA href "#GqlPlus_Parsing_Parser_IGqlpModifier__DA" "- GqlPlus_Parsing_Parser_IGqlpModifier__DA"

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"=>"| GqlPlus_Parsing_ParseModifiers
          GqlPlus_Parsing_ParseModifiers("ParseModifiers")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaDirective_("ParseDeclaration(IGqlpSchemaDirective)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaDirective_ -->|"selector"| GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaDirective_
          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaDirective_("IDeclarationSelector(IGqlpSchemaDirective)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaDirective_ -->|"declaration"| GqlPlus_Parsing_Parser_IGqlpSchemaDirective__D
          GqlPlus_Parsing_Parser_IGqlpSchemaDirective__D("Parser(IGqlpSchemaDirective)+D")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaDirective_("IDeclarationSelector(IGqlpSchemaDirective)")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaDirective_ -->|"->"| GqlPlus_Parsing_Schema_IDeclarationSelector
          GqlPlus_Parsing_Schema_IDeclarationSelector("IDeclarationSelector")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaDirective_ -->|"=="| GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpSchemaDirective_
          GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpSchemaDirective_("DeclarationSelector(IGqlpSchemaDirective)")

          GqlPlus_Parsing_Parser_IGqlpSchemaDirective__D("Parser(IGqlpSchemaDirective)+D")

          GqlPlus_Parsing_Parser_IGqlpSchemaDirective__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpSchemaDirective__D -->|"=>"| GqlPlus_Parsing_Schema_Globals_ParseDirective
          GqlPlus_Parsing_Schema_Globals_ParseDirective("ParseDirective")

          GqlPlus_Parsing_Schema_Globals_ParseDirective("ParseDirective")

          GqlPlus_Parsing_Schema_Globals_ParseDirective -->|"name"| GqlPlus_Parsing_Schema_Globals_IDirectiveName
          GqlPlus_Parsing_Schema_Globals_IDirectiveName("IDirectiveName")

          GqlPlus_Parsing_Schema_Globals_ParseDirective -->|"param"| GqlPlus_Parsing_Parser_IGqlpInputParam__DA
          GqlPlus_Parsing_Parser_IGqlpInputParam__DA("Parser(IGqlpInputParam)+DA")

          GqlPlus_Parsing_Schema_Globals_ParseDirective -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Globals_ParseDirective -->|"option"| GqlPlus_Parsing_Parser_IOptionParser_DirectiveOption__DirectiveOption__D
          GqlPlus_Parsing_Parser_IOptionParser_DirectiveOption__DirectiveOption__D("Parser(IOptionParser(DirectiveOption),DirectiveOption)+D")

          GqlPlus_Parsing_Schema_Globals_ParseDirective -->|"definition"| GqlPlus_Parsing_Parser_DirectiveLocation__D
          GqlPlus_Parsing_Parser_DirectiveLocation__D("Parser(DirectiveLocation)+D")

          GqlPlus_Parsing_Schema_Globals_IDirectiveName[["IDirectiveName"]]
click GqlPlus_Parsing_Schema_Globals_IDirectiveName href "#GqlPlus_Parsing_Schema_Globals_IDirectiveName" "- GqlPlus_Parsing_Schema_Globals_IDirectiveName"

          GqlPlus_Parsing_Schema_Globals_IDirectiveName -->|"0"| GqlPlus_Parsing_Schema_Globals_DirectiveName
          GqlPlus_Parsing_Schema_Globals_DirectiveName("DirectiveName")

          GqlPlus_Parsing_Parser_IGqlpInputParam__DA[["Parser(IGqlpInputParam)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpInputParam__DA href "#GqlPlus_Parsing_Parser_IGqlpInputParam__DA" "- GqlPlus_Parsing_Parser_IGqlpInputParam__DA"

          GqlPlus_Parsing_Parser_IGqlpInputParam__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpInputParam__DA -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseInputParams
          GqlPlus_Parsing_Schema_Objects_ParseInputParams("ParseInputParams")

          GqlPlus_Parsing_Parser_IOptionParser_DirectiveOption__DirectiveOption__D("Parser(IOptionParser(DirectiveOption),DirectiveOption)+D")

          GqlPlus_Parsing_Parser_IOptionParser_DirectiveOption__DirectiveOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IOptionParser_DirectiveOption__DirectiveOption__D -->|"=>"| GqlPlus_Parsing_Schema_OptionParser_DirectiveOption_
          GqlPlus_Parsing_Schema_OptionParser_DirectiveOption_("OptionParser(DirectiveOption)")

          GqlPlus_Parsing_Schema_OptionParser_DirectiveOption_("OptionParser(DirectiveOption)")

          GqlPlus_Parsing_Schema_OptionParser_DirectiveOption_ -->|"->"| GqlPlus_Parsing_Schema_OptionParser
          GqlPlus_Parsing_Schema_OptionParser("OptionParser")

          GqlPlus_Parsing_Schema_OptionParser_DirectiveOption_ -->|"parser"| GqlPlus_Parsing_Parser_IEnumParser_DirectiveOption__DirectiveOption__D
          GqlPlus_Parsing_Parser_IEnumParser_DirectiveOption__DirectiveOption__D("Parser(IEnumParser(DirectiveOption),DirectiveOption)+D")

          GqlPlus_Parsing_Parser_IEnumParser_DirectiveOption__DirectiveOption__D("Parser(IEnumParser(DirectiveOption),DirectiveOption)+D")

          GqlPlus_Parsing_Parser_IEnumParser_DirectiveOption__DirectiveOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IEnumParser_DirectiveOption__DirectiveOption__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_
          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_("EnumParser(DirectiveOption)")

          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_[["EnumParser(DirectiveOption)"]]
click GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_ href "#GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_" "- GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_"

          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

          GqlPlus_Parsing_Parser_DirectiveLocation__D("Parser(DirectiveLocation)+D")

          GqlPlus_Parsing_Parser_DirectiveLocation__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_DirectiveLocation__D -->|"=>"| GqlPlus_Parsing_Schema_Globals_ParseDirectiveDefinition
          GqlPlus_Parsing_Schema_Globals_ParseDirectiveDefinition("ParseDirectiveDefinition")

          GqlPlus_Parsing_Schema_Globals_ParseDirectiveDefinition[["ParseDirectiveDefinition"]]
click GqlPlus_Parsing_Schema_Globals_ParseDirectiveDefinition href "#GqlPlus_Parsing_Schema_Globals_ParseDirectiveDefinition" "- GqlPlus_Parsing_Schema_Globals_ParseDirectiveDefinition"

          GqlPlus_Parsing_Schema_Globals_ParseDirectiveDefinition -->|"location"| GqlPlus_Parsing_Parser_IEnumParser_DirectiveLocation__DirectiveLocation__D
          GqlPlus_Parsing_Parser_IEnumParser_DirectiveLocation__DirectiveLocation__D("Parser(IEnumParser(DirectiveLocation),DirectiveLocation)+D")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaOption_("ParseDeclaration(IGqlpSchemaOption)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaOption_ -->|"selector"| GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaOption_
          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaOption_("IDeclarationSelector(IGqlpSchemaOption)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpSchemaOption_ -->|"declaration"| GqlPlus_Parsing_Parser_IGqlpSchemaOption__D
          GqlPlus_Parsing_Parser_IGqlpSchemaOption__D("Parser(IGqlpSchemaOption)+D")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaOption_("IDeclarationSelector(IGqlpSchemaOption)")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaOption_ -->|"->"| GqlPlus_Parsing_Schema_IDeclarationSelector
          GqlPlus_Parsing_Schema_IDeclarationSelector("IDeclarationSelector")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpSchemaOption_ -->|"=="| GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpSchemaOption_
          GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpSchemaOption_("DeclarationSelector(IGqlpSchemaOption)")

          GqlPlus_Parsing_Parser_IGqlpSchemaOption__D("Parser(IGqlpSchemaOption)+D")

          GqlPlus_Parsing_Parser_IGqlpSchemaOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpSchemaOption__D -->|"=>"| GqlPlus_Parsing_Schema_Globals_ParseOption
          GqlPlus_Parsing_Schema_Globals_ParseOption("ParseOption")

          GqlPlus_Parsing_Schema_Globals_ParseOption("ParseOption")

          GqlPlus_Parsing_Schema_Globals_ParseOption -->|"name"| GqlPlus_Parsing_Schema_ISimpleName
          GqlPlus_Parsing_Schema_ISimpleName("ISimpleName")

          GqlPlus_Parsing_Schema_Globals_ParseOption -->|"param"| GqlPlus_Parsing_Parser_NullAst__DA
          GqlPlus_Parsing_Parser_NullAst__DA("Parser(NullAst)+DA")

          GqlPlus_Parsing_Schema_Globals_ParseOption -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Globals_ParseOption -->|"option"| GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D
          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D("Parser(IOptionParser(NullOption),NullOption)+D")

          GqlPlus_Parsing_Schema_Globals_ParseOption -->|"definition"| GqlPlus_Parsing_Parser_OptionDefinition__D
          GqlPlus_Parsing_Parser_OptionDefinition__D("Parser(OptionDefinition)+D")

          GqlPlus_Parsing_Schema_ISimpleName[["ISimpleName"]]
click GqlPlus_Parsing_Schema_ISimpleName href "#GqlPlus_Parsing_Schema_ISimpleName" "- GqlPlus_Parsing_Schema_ISimpleName"

          GqlPlus_Parsing_Schema_ISimpleName -->|"0"| GqlPlus_Parsing_Schema_SimpleName
          GqlPlus_Parsing_Schema_SimpleName("SimpleName")

          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D[["Parser(IOptionParser(NullOption),NullOption)+D"]]
click GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D href "#GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D" "- GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D"

          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D -->|"=>"| GqlPlus_Parsing_Schema_ParseNullOption
          GqlPlus_Parsing_Schema_ParseNullOption("ParseNullOption")

          GqlPlus_Parsing_Parser_OptionDefinition__D("Parser(OptionDefinition)+D")

          GqlPlus_Parsing_Parser_OptionDefinition__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_OptionDefinition__D -->|"=>"| GqlPlus_Parsing_Schema_Globals_ParseOptionDefinition
          GqlPlus_Parsing_Schema_Globals_ParseOptionDefinition("ParseOptionDefinition")

          GqlPlus_Parsing_Schema_Globals_ParseOptionDefinition[["ParseOptionDefinition"]]
click GqlPlus_Parsing_Schema_Globals_ParseOptionDefinition href "#GqlPlus_Parsing_Schema_Globals_ParseOptionDefinition" "- GqlPlus_Parsing_Schema_Globals_ParseOptionDefinition"

          GqlPlus_Parsing_Schema_Globals_ParseOptionDefinition -->|"setting"| GqlPlus_Parsing_Parser_IGqlpSchemaSetting__D
          GqlPlus_Parsing_Parser_IGqlpSchemaSetting__D("Parser(IGqlpSchemaSetting)+D")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpEnum_("ParseDeclaration(IGqlpEnum)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpEnum_ -->|"selector"| GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpEnum_
          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpEnum_("IDeclarationSelector(IGqlpEnum)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpEnum_ -->|"declaration"| GqlPlus_Parsing_Parser_IGqlpEnum__D
          GqlPlus_Parsing_Parser_IGqlpEnum__D("Parser(IGqlpEnum)+D")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpEnum_("IDeclarationSelector(IGqlpEnum)")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpEnum_ -->|"->"| GqlPlus_Parsing_Schema_IDeclarationSelector
          GqlPlus_Parsing_Schema_IDeclarationSelector("IDeclarationSelector")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpEnum_ -->|"=="| GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpEnum_
          GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpEnum_("DeclarationSelector(IGqlpEnum)")

          GqlPlus_Parsing_Parser_IGqlpEnum__D("Parser(IGqlpEnum)+D")

          GqlPlus_Parsing_Parser_IGqlpEnum__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpEnum__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseEnum
          GqlPlus_Parsing_Schema_Simple_ParseEnum("ParseEnum")

          GqlPlus_Parsing_Schema_Simple_ParseEnum("ParseEnum")

          GqlPlus_Parsing_Schema_Simple_ParseEnum -->|"name"| GqlPlus_Parsing_Schema_ISimpleName
          GqlPlus_Parsing_Schema_ISimpleName("ISimpleName")

          GqlPlus_Parsing_Schema_Simple_ParseEnum -->|"param"| GqlPlus_Parsing_Parser_NullAst__DA
          GqlPlus_Parsing_Parser_NullAst__DA("Parser(NullAst)+DA")

          GqlPlus_Parsing_Schema_Simple_ParseEnum -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Simple_ParseEnum -->|"option"| GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D
          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D("Parser(IOptionParser(NullOption),NullOption)+D")

          GqlPlus_Parsing_Schema_Simple_ParseEnum -->|"definition"| GqlPlus_Parsing_Parser_EnumDefinition__D
          GqlPlus_Parsing_Parser_EnumDefinition__D("Parser(EnumDefinition)+D")

          GqlPlus_Parsing_Parser_EnumDefinition__D("Parser(EnumDefinition)+D")

          GqlPlus_Parsing_Parser_EnumDefinition__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_EnumDefinition__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseEnumDefinition
          GqlPlus_Parsing_Schema_Simple_ParseEnumDefinition("ParseEnumDefinition")

          GqlPlus_Parsing_Schema_Simple_ParseEnumDefinition[["ParseEnumDefinition"]]
click GqlPlus_Parsing_Schema_Simple_ParseEnumDefinition href "#GqlPlus_Parsing_Schema_Simple_ParseEnumDefinition" "- GqlPlus_Parsing_Schema_Simple_ParseEnumDefinition"

          GqlPlus_Parsing_Schema_Simple_ParseEnumDefinition -->|"enumLabel"| GqlPlus_Parsing_Parser_IGqlpEnumLabel__D
          GqlPlus_Parsing_Parser_IGqlpEnumLabel__D("Parser(IGqlpEnumLabel)+D")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpDomain_("ParseDeclaration(IGqlpDomain)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpDomain_ -->|"selector"| GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpDomain_
          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpDomain_("IDeclarationSelector(IGqlpDomain)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpDomain_ -->|"declaration"| GqlPlus_Parsing_Parser_IGqlpDomain__D
          GqlPlus_Parsing_Parser_IGqlpDomain__D("Parser(IGqlpDomain)+D")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpDomain_("IDeclarationSelector(IGqlpDomain)")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpDomain_ -->|"->"| GqlPlus_Parsing_Schema_IDeclarationSelector
          GqlPlus_Parsing_Schema_IDeclarationSelector("IDeclarationSelector")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpDomain_ -->|"=="| GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpDomain_
          GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpDomain_("DeclarationSelector(IGqlpDomain)")

          GqlPlus_Parsing_Parser_IGqlpDomain__D("Parser(IGqlpDomain)+D")

          GqlPlus_Parsing_Parser_IGqlpDomain__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDomain__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseDomain
          GqlPlus_Parsing_Schema_Simple_ParseDomain("ParseDomain")

          GqlPlus_Parsing_Schema_Simple_ParseDomain("ParseDomain")

          GqlPlus_Parsing_Schema_Simple_ParseDomain -->|"name"| GqlPlus_Parsing_Schema_ISimpleName
          GqlPlus_Parsing_Schema_ISimpleName("ISimpleName")

          GqlPlus_Parsing_Schema_Simple_ParseDomain -->|"param"| GqlPlus_Parsing_Parser_NullAst__DA
          GqlPlus_Parsing_Parser_NullAst__DA("Parser(NullAst)+DA")

          GqlPlus_Parsing_Schema_Simple_ParseDomain -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Simple_ParseDomain -->|"option"| GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D
          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D("Parser(IOptionParser(NullOption),NullOption)+D")

          GqlPlus_Parsing_Schema_Simple_ParseDomain -->|"definition"| GqlPlus_Parsing_Parser_DomainDefinition__D
          GqlPlus_Parsing_Parser_DomainDefinition__D("Parser(DomainDefinition)+D")

          GqlPlus_Parsing_Parser_DomainDefinition__D("Parser(DomainDefinition)+D")

          GqlPlus_Parsing_Parser_DomainDefinition__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_DomainDefinition__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseDomainDefinition
          GqlPlus_Parsing_Schema_Simple_ParseDomainDefinition("ParseDomainDefinition")

          GqlPlus_Parsing_Schema_Simple_ParseDomainDefinition("ParseDomainDefinition")

          GqlPlus_Parsing_Schema_Simple_ParseDomainDefinition -->|"kind"| GqlPlus_Parsing_Parser_IEnumParser_DomainKind__DomainKind__D
          GqlPlus_Parsing_Parser_IEnumParser_DomainKind__DomainKind__D("Parser(IEnumParser(DomainKind),DomainKind)+D")

          GqlPlus_Parsing_Schema_Simple_ParseDomainDefinition -->|"domains[]"| GqlPlus_Parsing_Schema_Simple_IParseDomain
          GqlPlus_Parsing_Schema_Simple_IParseDomain("IParseDomain")

          GqlPlus_Parsing_Parser_IEnumParser_DomainKind__DomainKind__D("Parser(IEnumParser(DomainKind),DomainKind)+D")

          GqlPlus_Parsing_Parser_IEnumParser_DomainKind__DomainKind__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IEnumParser_DomainKind__DomainKind__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_
          GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_("EnumParser(DomainKind)")

          GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_[["EnumParser(DomainKind)"]]
click GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_ href "#GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_" "- GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_"

          GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

          GqlPlus_Parsing_Schema_Simple_IParseDomain[["IParseDomain"]]
click GqlPlus_Parsing_Schema_Simple_IParseDomain href "#GqlPlus_Parsing_Schema_Simple_IParseDomain" "- GqlPlus_Parsing_Schema_Simple_IParseDomain"

          GqlPlus_Parsing_Schema_Simple_IParseDomain -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseDomainRegex
          GqlPlus_Parsing_Schema_Simple_ParseDomainRegex("ParseDomainRegex")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpUnion_("ParseDeclaration(IGqlpUnion)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpUnion_ -->|"selector"| GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpUnion_
          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpUnion_("IDeclarationSelector(IGqlpUnion)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpUnion_ -->|"declaration"| GqlPlus_Parsing_Parser_IGqlpUnion__D
          GqlPlus_Parsing_Parser_IGqlpUnion__D("Parser(IGqlpUnion)+D")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpUnion_("IDeclarationSelector(IGqlpUnion)")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpUnion_ -->|"->"| GqlPlus_Parsing_Schema_IDeclarationSelector
          GqlPlus_Parsing_Schema_IDeclarationSelector("IDeclarationSelector")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpUnion_ -->|"=="| GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpUnion_
          GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpUnion_("DeclarationSelector(IGqlpUnion)")

          GqlPlus_Parsing_Parser_IGqlpUnion__D("Parser(IGqlpUnion)+D")

          GqlPlus_Parsing_Parser_IGqlpUnion__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpUnion__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseUnion
          GqlPlus_Parsing_Schema_Simple_ParseUnion("ParseUnion")

          GqlPlus_Parsing_Schema_Simple_ParseUnion("ParseUnion")

          GqlPlus_Parsing_Schema_Simple_ParseUnion -->|"name"| GqlPlus_Parsing_Schema_ISimpleName
          GqlPlus_Parsing_Schema_ISimpleName("ISimpleName")

          GqlPlus_Parsing_Schema_Simple_ParseUnion -->|"param"| GqlPlus_Parsing_Parser_NullAst__DA
          GqlPlus_Parsing_Parser_NullAst__DA("Parser(NullAst)+DA")

          GqlPlus_Parsing_Schema_Simple_ParseUnion -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Simple_ParseUnion -->|"option"| GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D
          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D("Parser(IOptionParser(NullOption),NullOption)+D")

          GqlPlus_Parsing_Schema_Simple_ParseUnion -->|"definition"| GqlPlus_Parsing_Parser_UnionDefinition__D
          GqlPlus_Parsing_Parser_UnionDefinition__D("Parser(UnionDefinition)+D")

          GqlPlus_Parsing_Parser_UnionDefinition__D("Parser(UnionDefinition)+D")

          GqlPlus_Parsing_Parser_UnionDefinition__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_UnionDefinition__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseUnionDefinition
          GqlPlus_Parsing_Schema_Simple_ParseUnionDefinition("ParseUnionDefinition")

          GqlPlus_Parsing_Schema_Simple_ParseUnionDefinition("ParseUnionDefinition")

          GqlPlus_Parsing_Schema_Simple_ParseUnionDefinition -->|"unionMember"| GqlPlus_Parsing_Parser_IGqlpUnionMember__D
          GqlPlus_Parsing_Parser_IGqlpUnionMember__D("Parser(IGqlpUnionMember)+D")

          GqlPlus_Parsing_Parser_IGqlpUnionMember__D("Parser(IGqlpUnionMember)+D")

          GqlPlus_Parsing_Parser_IGqlpUnionMember__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpUnionMember__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_ParseUnionMember
          GqlPlus_Parsing_Schema_Simple_ParseUnionMember("ParseUnionMember")

          GqlPlus_Parsing_Schema_Simple_ParseUnionMember("ParseUnionMember")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpDualObject_("ParseDeclaration(IGqlpDualObject)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpDualObject_ -->|"selector"| GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpDualObject_
          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpDualObject_("IDeclarationSelector(IGqlpDualObject)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpDualObject_ -->|"declaration"| GqlPlus_Parsing_Parser_IGqlpDualObject__D
          GqlPlus_Parsing_Parser_IGqlpDualObject__D("Parser(IGqlpDualObject)+D")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpDualObject_("IDeclarationSelector(IGqlpDualObject)")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpDualObject_ -->|"->"| GqlPlus_Parsing_Schema_IDeclarationSelector
          GqlPlus_Parsing_Schema_IDeclarationSelector("IDeclarationSelector")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpDualObject_ -->|"=="| GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpDualObject_
          GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpDualObject_("DeclarationSelector(IGqlpDualObject)")

          GqlPlus_Parsing_Parser_IGqlpDualObject__D("Parser(IGqlpDualObject)+D")

          GqlPlus_Parsing_Parser_IGqlpDualObject__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDualObject__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseDual
          GqlPlus_Parsing_Schema_Objects_ParseDual("ParseDual")

          GqlPlus_Parsing_Schema_Objects_ParseDual("ParseDual")

          GqlPlus_Parsing_Schema_Objects_ParseDual -->|"name"| GqlPlus_Parsing_Schema_ISimpleName
          GqlPlus_Parsing_Schema_ISimpleName("ISimpleName")

          GqlPlus_Parsing_Schema_Objects_ParseDual -->|"param"| GqlPlus_Parsing_Parser_IGqlpTypeParam__DA
          GqlPlus_Parsing_Parser_IGqlpTypeParam__DA("Parser(IGqlpTypeParam)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseDual -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseDual -->|"option"| GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D
          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D("Parser(IOptionParser(NullOption),NullOption)+D")

          GqlPlus_Parsing_Schema_Objects_ParseDual -->|"definition"| GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate___D
          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate___D("Parser(ObjectDefinition(IGqlpDualBase,IGqlpDualField,IGqlpDualAlternate))+D")

          GqlPlus_Parsing_Parser_IGqlpTypeParam__DA[["Parser(IGqlpTypeParam)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpTypeParam__DA href "#GqlPlus_Parsing_Parser_IGqlpTypeParam__DA" "- GqlPlus_Parsing_Parser_IGqlpTypeParam__DA"

          GqlPlus_Parsing_Parser_IGqlpTypeParam__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpTypeParam__DA -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseTypeParams
          GqlPlus_Parsing_Schema_Objects_ParseTypeParams("ParseTypeParams")

          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate___D("Parser(ObjectDefinition(IGqlpDualBase,IGqlpDualField,IGqlpDualAlternate))+D")

          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate___D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate___D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate_
          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate_("ParseObjectDefinition(IGqlpDualBase,IGqlpDualField,IGqlpDualAlternate)")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate_("ParseObjectDefinition(IGqlpDualBase,IGqlpDualField,IGqlpDualAlternate)")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate_ -->|"->"| GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition
          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition("ParseObjectDefinition")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate_ -->|"alternates"| GqlPlus_Parsing_Parser_IGqlpDualAlternate__DA
          GqlPlus_Parsing_Parser_IGqlpDualAlternate__DA("Parser(IGqlpDualAlternate)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate_ -->|"parseField"| GqlPlus_Parsing_Parser_IGqlpDualField__D
          GqlPlus_Parsing_Parser_IGqlpDualField__D("Parser(IGqlpDualField)+D")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpDualBase_IGqlpDualField_IGqlpDualAlternate_ -->|"parseBase"| GqlPlus_Parsing_Parser_IGqlpDualBase__D
          GqlPlus_Parsing_Parser_IGqlpDualBase__D("Parser(IGqlpDualBase)+D")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition("ParseObjectDefinition")

          GqlPlus_Parsing_Parser_IGqlpDualAlternate__DA("Parser(IGqlpDualAlternate)+DA")

          GqlPlus_Parsing_Parser_IGqlpDualAlternate__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDualAlternate__DA -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseDualAlternates
          GqlPlus_Parsing_Schema_Objects_ParseDualAlternates("ParseDualAlternates")

          GqlPlus_Parsing_Schema_Objects_ParseDualAlternates("ParseDualAlternates")

          GqlPlus_Parsing_Schema_Objects_ParseDualAlternates -->|"collections"| GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA
          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA("ParserArray(IParserCollections,IGqlpModifier)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseDualAlternates -->|"parseBase"| GqlPlus_Parsing_Parser_IGqlpDualBase__D
          GqlPlus_Parsing_Parser_IGqlpDualBase__D("Parser(IGqlpDualBase)+D")

          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA[["ParserArray(IParserCollections,IGqlpModifier)+DA"]]
click GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA href "#GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA" "- GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA"

          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA -->|"->"| GqlPlus_Parsing_ParserArray
          GqlPlus_Parsing_ParserArray("ParserArray")

          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA -->|"=>"| GqlPlus_Parsing_ParseCollections
          GqlPlus_Parsing_ParseCollections("ParseCollections")

          GqlPlus_Parsing_Parser_IGqlpDualBase__D[["Parser(IGqlpDualBase)+D"]]
click GqlPlus_Parsing_Parser_IGqlpDualBase__D href "#GqlPlus_Parsing_Parser_IGqlpDualBase__D" "- GqlPlus_Parsing_Parser_IGqlpDualBase__D"

          GqlPlus_Parsing_Parser_IGqlpDualBase__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDualBase__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseDualBase
          GqlPlus_Parsing_Schema_Objects_ParseDualBase("ParseDualBase")

          GqlPlus_Parsing_Parser_IGqlpDualField__D("Parser(IGqlpDualField)+D")

          GqlPlus_Parsing_Parser_IGqlpDualField__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDualField__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseDualField
          GqlPlus_Parsing_Schema_Objects_ParseDualField("ParseDualField")

          GqlPlus_Parsing_Schema_Objects_ParseDualField("ParseDualField")

          GqlPlus_Parsing_Schema_Objects_ParseDualField -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseDualField -->|"modifiers"| GqlPlus_Parsing_Parser_IGqlpModifier__DA
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseDualField -->|"parseBase"| GqlPlus_Parsing_Parser_IGqlpDualBase__D
          GqlPlus_Parsing_Parser_IGqlpDualBase__D("Parser(IGqlpDualBase)+D")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpInputObject_("ParseDeclaration(IGqlpInputObject)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpInputObject_ -->|"selector"| GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpInputObject_
          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpInputObject_("IDeclarationSelector(IGqlpInputObject)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpInputObject_ -->|"declaration"| GqlPlus_Parsing_Parser_IGqlpInputObject__D
          GqlPlus_Parsing_Parser_IGqlpInputObject__D("Parser(IGqlpInputObject)+D")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpInputObject_("IDeclarationSelector(IGqlpInputObject)")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpInputObject_ -->|"->"| GqlPlus_Parsing_Schema_IDeclarationSelector
          GqlPlus_Parsing_Schema_IDeclarationSelector("IDeclarationSelector")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpInputObject_ -->|"=="| GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpInputObject_
          GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpInputObject_("DeclarationSelector(IGqlpInputObject)")

          GqlPlus_Parsing_Parser_IGqlpInputObject__D("Parser(IGqlpInputObject)+D")

          GqlPlus_Parsing_Parser_IGqlpInputObject__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpInputObject__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseInput
          GqlPlus_Parsing_Schema_Objects_ParseInput("ParseInput")

          GqlPlus_Parsing_Schema_Objects_ParseInput("ParseInput")

          GqlPlus_Parsing_Schema_Objects_ParseInput -->|"name"| GqlPlus_Parsing_Schema_ISimpleName
          GqlPlus_Parsing_Schema_ISimpleName("ISimpleName")

          GqlPlus_Parsing_Schema_Objects_ParseInput -->|"param"| GqlPlus_Parsing_Parser_IGqlpTypeParam__DA
          GqlPlus_Parsing_Parser_IGqlpTypeParam__DA("Parser(IGqlpTypeParam)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseInput -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseInput -->|"option"| GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D
          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D("Parser(IOptionParser(NullOption),NullOption)+D")

          GqlPlus_Parsing_Schema_Objects_ParseInput -->|"definition"| GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate___D
          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate___D("Parser(ObjectDefinition(IGqlpInputBase,IGqlpInputField,IGqlpInputAlternate))+D")

          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate___D("Parser(ObjectDefinition(IGqlpInputBase,IGqlpInputField,IGqlpInputAlternate))+D")

          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate___D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate___D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate_
          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate_("ParseObjectDefinition(IGqlpInputBase,IGqlpInputField,IGqlpInputAlternate)")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate_("ParseObjectDefinition(IGqlpInputBase,IGqlpInputField,IGqlpInputAlternate)")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate_ -->|"->"| GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition
          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition("ParseObjectDefinition")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate_ -->|"alternates"| GqlPlus_Parsing_Parser_IGqlpInputAlternate__DA
          GqlPlus_Parsing_Parser_IGqlpInputAlternate__DA("Parser(IGqlpInputAlternate)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate_ -->|"parseField"| GqlPlus_Parsing_Parser_IGqlpInputField__D
          GqlPlus_Parsing_Parser_IGqlpInputField__D("Parser(IGqlpInputField)+D")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpInputBase_IGqlpInputField_IGqlpInputAlternate_ -->|"parseBase"| GqlPlus_Parsing_Parser_IGqlpInputBase__D
          GqlPlus_Parsing_Parser_IGqlpInputBase__D("Parser(IGqlpInputBase)+D")

          GqlPlus_Parsing_Parser_IGqlpInputAlternate__DA("Parser(IGqlpInputAlternate)+DA")

          GqlPlus_Parsing_Parser_IGqlpInputAlternate__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpInputAlternate__DA -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseInputAlternates
          GqlPlus_Parsing_Schema_Objects_ParseInputAlternates("ParseInputAlternates")

          GqlPlus_Parsing_Schema_Objects_ParseInputAlternates("ParseInputAlternates")

          GqlPlus_Parsing_Schema_Objects_ParseInputAlternates -->|"collections"| GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA
          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA("ParserArray(IParserCollections,IGqlpModifier)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseInputAlternates -->|"parseBase"| GqlPlus_Parsing_Parser_IGqlpInputBase__D
          GqlPlus_Parsing_Parser_IGqlpInputBase__D("Parser(IGqlpInputBase)+D")

          GqlPlus_Parsing_Parser_IGqlpInputBase__D[["Parser(IGqlpInputBase)+D"]]
click GqlPlus_Parsing_Parser_IGqlpInputBase__D href "#GqlPlus_Parsing_Parser_IGqlpInputBase__D" "- GqlPlus_Parsing_Parser_IGqlpInputBase__D"

          GqlPlus_Parsing_Parser_IGqlpInputBase__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpInputBase__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseInputBase
          GqlPlus_Parsing_Schema_Objects_ParseInputBase("ParseInputBase")

          GqlPlus_Parsing_Parser_IGqlpInputField__D("Parser(IGqlpInputField)+D")

          GqlPlus_Parsing_Parser_IGqlpInputField__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpInputField__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseInputField
          GqlPlus_Parsing_Schema_Objects_ParseInputField("ParseInputField")

          GqlPlus_Parsing_Schema_Objects_ParseInputField("ParseInputField")

          GqlPlus_Parsing_Schema_Objects_ParseInputField -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseInputField -->|"modifiers"| GqlPlus_Parsing_Parser_IGqlpModifier__DA
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseInputField -->|"parseBase"| GqlPlus_Parsing_Parser_IGqlpInputBase__D
          GqlPlus_Parsing_Parser_IGqlpInputBase__D("Parser(IGqlpInputBase)+D")

          GqlPlus_Parsing_Schema_Objects_ParseInputField -->|"defaultParser"| GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D("Parser(IParserDefault,IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D[["Parser(IParserDefault,IGqlpConstant)+D"]]
click GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D href "#GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D" "- GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D"

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"=>"| GqlPlus_Parsing_ParseDefault
          GqlPlus_Parsing_ParseDefault("ParseDefault")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpOutputObject_("ParseDeclaration(IGqlpOutputObject)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpOutputObject_ -->|"selector"| GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpOutputObject_
          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpOutputObject_("IDeclarationSelector(IGqlpOutputObject)")

          GqlPlus_Parsing_Schema_ParseDeclaration_IGqlpOutputObject_ -->|"declaration"| GqlPlus_Parsing_Parser_IGqlpOutputObject__D
          GqlPlus_Parsing_Parser_IGqlpOutputObject__D("Parser(IGqlpOutputObject)+D")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpOutputObject_("IDeclarationSelector(IGqlpOutputObject)")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpOutputObject_ -->|"->"| GqlPlus_Parsing_Schema_IDeclarationSelector
          GqlPlus_Parsing_Schema_IDeclarationSelector("IDeclarationSelector")

          GqlPlus_Parsing_Schema_IDeclarationSelector_IGqlpOutputObject_ -->|"=="| GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpOutputObject_
          GqlPlus_Parsing_Schema_DeclarationSelector_IGqlpOutputObject_("DeclarationSelector(IGqlpOutputObject)")

          GqlPlus_Parsing_Parser_IGqlpOutputObject__D("Parser(IGqlpOutputObject)+D")

          GqlPlus_Parsing_Parser_IGqlpOutputObject__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpOutputObject__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseOutput
          GqlPlus_Parsing_Schema_Objects_ParseOutput("ParseOutput")

          GqlPlus_Parsing_Schema_Objects_ParseOutput("ParseOutput")

          GqlPlus_Parsing_Schema_Objects_ParseOutput -->|"name"| GqlPlus_Parsing_Schema_ISimpleName
          GqlPlus_Parsing_Schema_ISimpleName("ISimpleName")

          GqlPlus_Parsing_Schema_Objects_ParseOutput -->|"param"| GqlPlus_Parsing_Parser_IGqlpTypeParam__DA
          GqlPlus_Parsing_Parser_IGqlpTypeParam__DA("Parser(IGqlpTypeParam)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseOutput -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseOutput -->|"option"| GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D
          GqlPlus_Parsing_Parser_IOptionParser_NullOption__NullOption__D("Parser(IOptionParser(NullOption),NullOption)+D")

          GqlPlus_Parsing_Schema_Objects_ParseOutput -->|"definition"| GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate___D
          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate___D("Parser(ObjectDefinition(IGqlpOutputBase,IGqlpOutputField,IGqlpOutputAlternate))+D")

          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate___D("Parser(ObjectDefinition(IGqlpOutputBase,IGqlpOutputField,IGqlpOutputAlternate))+D")

          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate___D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_ObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate___D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate_
          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate_("ParseObjectDefinition(IGqlpOutputBase,IGqlpOutputField,IGqlpOutputAlternate)")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate_("ParseObjectDefinition(IGqlpOutputBase,IGqlpOutputField,IGqlpOutputAlternate)")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate_ -->|"->"| GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition
          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition("ParseObjectDefinition")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate_ -->|"alternates"| GqlPlus_Parsing_Parser_IGqlpOutputAlternate__DA
          GqlPlus_Parsing_Parser_IGqlpOutputAlternate__DA("Parser(IGqlpOutputAlternate)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate_ -->|"parseField"| GqlPlus_Parsing_Parser_IGqlpOutputField__D
          GqlPlus_Parsing_Parser_IGqlpOutputField__D("Parser(IGqlpOutputField)+D")

          GqlPlus_Parsing_Schema_Objects_ParseObjectDefinition_IGqlpOutputBase_IGqlpOutputField_IGqlpOutputAlternate_ -->|"parseBase"| GqlPlus_Parsing_Parser_IGqlpOutputBase__D
          GqlPlus_Parsing_Parser_IGqlpOutputBase__D("Parser(IGqlpOutputBase)+D")

          GqlPlus_Parsing_Parser_IGqlpOutputAlternate__DA("Parser(IGqlpOutputAlternate)+DA")

          GqlPlus_Parsing_Parser_IGqlpOutputAlternate__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpOutputAlternate__DA -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseOutputAlternates
          GqlPlus_Parsing_Schema_Objects_ParseOutputAlternates("ParseOutputAlternates")

          GqlPlus_Parsing_Schema_Objects_ParseOutputAlternates("ParseOutputAlternates")

          GqlPlus_Parsing_Schema_Objects_ParseOutputAlternates -->|"collections"| GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA
          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA("ParserArray(IParserCollections,IGqlpModifier)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseOutputAlternates -->|"parseBase"| GqlPlus_Parsing_Parser_IGqlpOutputBase__D
          GqlPlus_Parsing_Parser_IGqlpOutputBase__D("Parser(IGqlpOutputBase)+D")

          GqlPlus_Parsing_Parser_IGqlpOutputBase__D[["Parser(IGqlpOutputBase)+D"]]
click GqlPlus_Parsing_Parser_IGqlpOutputBase__D href "#GqlPlus_Parsing_Parser_IGqlpOutputBase__D" "- GqlPlus_Parsing_Parser_IGqlpOutputBase__D"

          GqlPlus_Parsing_Parser_IGqlpOutputBase__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpOutputBase__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseOutputBase
          GqlPlus_Parsing_Schema_Objects_ParseOutputBase("ParseOutputBase")

          GqlPlus_Parsing_Parser_IGqlpOutputField__D("Parser(IGqlpOutputField)+D")

          GqlPlus_Parsing_Parser_IGqlpOutputField__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpOutputField__D -->|"=>"| GqlPlus_Parsing_Schema_Objects_ParseOutputField
          GqlPlus_Parsing_Schema_Objects_ParseOutputField("ParseOutputField")

          GqlPlus_Parsing_Schema_Objects_ParseOutputField("ParseOutputField")

          GqlPlus_Parsing_Schema_Objects_ParseOutputField -->|"aliases"| GqlPlus_Parsing_Parser_String__DA
          GqlPlus_Parsing_Parser_String__DA("Parser(String)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseOutputField -->|"modifiers"| GqlPlus_Parsing_Parser_IGqlpModifier__DA
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_Parsing_Schema_Objects_ParseOutputField -->|"parseBase"| GqlPlus_Parsing_Parser_IGqlpOutputBase__D
          GqlPlus_Parsing_Parser_IGqlpOutputBase__D("Parser(IGqlpOutputBase)+D")

          GqlPlus_Parsing_Schema_Objects_ParseOutputField -->|"parameter"| GqlPlus_Parsing_Parser_IGqlpInputParam__DA
          GqlPlus_Parsing_Parser_IGqlpInputParam__DA("Parser(IGqlpInputParam)+DA")

        

ParseVariables

          flowchart TD
          GqlPlus_Parsing_Operation_ParseVariables("ParseVariables")

          GqlPlus_Parsing_Operation_ParseVariables -->|"variable"| GqlPlus_Parsing_Parser_IGqlpVariable__D
          GqlPlus_Parsing_Parser_IGqlpVariable__D("Parser(IGqlpVariable)+D")

          GqlPlus_Parsing_Parser_IGqlpVariable__D("Parser(IGqlpVariable)+D")

          GqlPlus_Parsing_Parser_IGqlpVariable__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpVariable__D -->|"=>"| GqlPlus_Parsing_Operation_ParseVariable
          GqlPlus_Parsing_Operation_ParseVariable("ParseVariable")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Operation_ParseVariable("ParseVariable")

          GqlPlus_Parsing_Operation_ParseVariable -->|"modifiers"| GqlPlus_Parsing_Parser_IGqlpModifier__DA
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_Parsing_Operation_ParseVariable -->|"directives"| GqlPlus_Parsing_Parser_IGqlpDirective__DA
          GqlPlus_Parsing_Parser_IGqlpDirective__DA("Parser(IGqlpDirective)+DA")

          GqlPlus_Parsing_Operation_ParseVariable -->|"defaultParser"| GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D("Parser(IParserDefault,IGqlpConstant)+D")

          GqlPlus_Parsing_Operation_ParseVariable -->|"varTypeParser"| GqlPlus_Parsing_Parser_IParserVarType_String__D
          GqlPlus_Parsing_Parser_IParserVarType_String__D("Parser(IParserVarType,String)+D")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA[["Parser(IGqlpModifier)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpModifier__DA href "#GqlPlus_Parsing_Parser_IGqlpModifier__DA" "- GqlPlus_Parsing_Parser_IGqlpModifier__DA"

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"=>"| GqlPlus_Parsing_ParseModifiers
          GqlPlus_Parsing_ParseModifiers("ParseModifiers")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA[["Parser(IGqlpDirective)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpDirective__DA href "#GqlPlus_Parsing_Parser_IGqlpDirective__DA" "- GqlPlus_Parsing_Parser_IGqlpDirective__DA"

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseDirectives
          GqlPlus_Parsing_Operation_ParseDirectives("ParseDirectives")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D[["Parser(IParserDefault,IGqlpConstant)+D"]]
click GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D href "#GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D" "- GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D"

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D -->|"=>"| GqlPlus_Parsing_ParseDefault
          GqlPlus_Parsing_ParseDefault("ParseDefault")

          GqlPlus_Parsing_Parser_IParserVarType_String__D("Parser(IParserVarType,String)+D")

          GqlPlus_Parsing_Parser_IParserVarType_String__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IParserVarType_String__D -->|"=>"| GqlPlus_Parsing_Operation_ParseVarType
          GqlPlus_Parsing_Operation_ParseVarType("ParseVarType")

          GqlPlus_Parsing_Operation_ParseVarType("ParseVarType")

        

SchemaParseChecks

          flowchart TD
          GqlPlus_SchemaParseChecks("SchemaParseChecks")

          GqlPlus_SchemaParseChecks -->|"schemaParser"| GqlPlus_Parsing_Parser_IGqlpSchema__D
          GqlPlus_Parsing_Parser_IGqlpSchema__D("Parser(IGqlpSchema)+D")

          GqlPlus_Parsing_Parser_IGqlpSchema__D("Parser(IGqlpSchema)+D")

          GqlPlus_Parsing_Parser_IGqlpSchema__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpSchema__D -->|"=>"| GqlPlus_Parsing_Schema_ParseSchema
          GqlPlus_Parsing_Schema_ParseSchema("ParseSchema")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_ParseSchema[["ParseSchema"]]
click GqlPlus_Parsing_Schema_ParseSchema href "#GqlPlus_Parsing_Schema_ParseSchema" "- GqlPlus_Parsing_Schema_ParseSchema"

          GqlPlus_Parsing_Schema_ParseSchema -->|"declarations[]"| GqlPlus_Parsing_Schema_IParseDeclaration
          GqlPlus_Parsing_Schema_IParseDeclaration("IParseDeclaration")

          GqlPlus_Merging_IMerge_IGqlpDomainLabel_("IMerge(IGqlpDomainLabel)")

          GqlPlus_Merging_IMerge_IGqlpDomainLabel_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomainLabel_ -->|"1"| GqlPlus_Merging_Simple_MergeDomainLabels
          GqlPlus_Merging_Simple_MergeDomainLabels("MergeDomainLabels")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeDomainLabels("MergeDomainLabels")

        

IMerge(IGqlpDomainRange)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpDomainRange_("IMerge(IGqlpDomainRange)")

          GqlPlus_Merging_IMerge_IGqlpDomainRange_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomainRange_ -->|"1"| GqlPlus_Merging_Simple_MergeDomainRanges
          GqlPlus_Merging_Simple_MergeDomainRanges("MergeDomainRanges")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeDomainRanges("MergeDomainRanges")

          GqlPlus_Merging_IMerge_IGqlpDomainRegex_("IMerge(IGqlpDomainRegex)")

          GqlPlus_Merging_IMerge_IGqlpDomainRegex_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomainRegex_ -->|"1"| GqlPlus_Merging_Simple_MergeDomainRegexes
          GqlPlus_Merging_Simple_MergeDomainRegexes("MergeDomainRegexes")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeDomainRegexes("MergeDomainRegexes")

        

IMerge(IGqlpDualAlternate)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpDualAlternate_("IMerge(IGqlpDualAlternate)")

          GqlPlus_Merging_IMerge_IGqlpDualAlternate_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDualAlternate_ -->|"1"| GqlPlus_Merging_Objects_MergeDualAlternates
          GqlPlus_Merging_Objects_MergeDualAlternates("MergeDualAlternates")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Objects_MergeDualAlternates("MergeDualAlternates")

          GqlPlus_Merging_IMerge_IGqlpDualField_("IMerge(IGqlpDualField)")

          GqlPlus_Merging_IMerge_IGqlpDualField_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDualField_ -->|"1"| GqlPlus_Merging_Objects_MergeDualFields
          GqlPlus_Merging_Objects_MergeDualFields("MergeDualFields")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Objects_MergeDualFields("MergeDualFields")

        

IMerge(IGqlpInputAlternate)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpInputAlternate_("IMerge(IGqlpInputAlternate)")

          GqlPlus_Merging_IMerge_IGqlpInputAlternate_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpInputAlternate_ -->|"1"| GqlPlus_Merging_Objects_MergeInputAlternates
          GqlPlus_Merging_Objects_MergeInputAlternates("MergeInputAlternates")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Objects_MergeInputAlternates("MergeInputAlternates")

          GqlPlus_Merging_IMerge_IGqlpInputField_("IMerge(IGqlpInputField)")

          GqlPlus_Merging_IMerge_IGqlpInputField_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpInputField_ -->|"1"| GqlPlus_Merging_Objects_MergeInputFields
          GqlPlus_Merging_Objects_MergeInputFields("MergeInputFields")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Objects_MergeInputFields[["MergeInputFields"]]
click GqlPlus_Merging_Objects_MergeInputFields href "#GqlPlus_Merging_Objects_MergeInputFields" "- GqlPlus_Merging_Objects_MergeInputFields"

          GqlPlus_Merging_Objects_MergeInputFields -->|"constant"| GqlPlus_Merging_IMerge_IGqlpConstant_
          GqlPlus_Merging_IMerge_IGqlpConstant_("IMerge(IGqlpConstant)")

        

IMerge(IGqlpSchemaCategory)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpSchemaCategory_("IMerge(IGqlpSchemaCategory)")

          GqlPlus_Merging_IMerge_IGqlpSchemaCategory_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpSchemaCategory_ -->|"1"| GqlPlus_Merging_Globals_MergeCategories
          GqlPlus_Merging_Globals_MergeCategories("MergeCategories")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Globals_MergeCategories("MergeCategories")

          GqlPlus_Merging_IMerge_IGqlpSchemaDirective_("IMerge(IGqlpSchemaDirective)")

          GqlPlus_Merging_IMerge_IGqlpSchemaDirective_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpSchemaDirective_ -->|"1"| GqlPlus_Merging_Globals_MergeDirectives
          GqlPlus_Merging_Globals_MergeDirectives("MergeDirectives")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Globals_MergeDirectives[["MergeDirectives"]]
click GqlPlus_Merging_Globals_MergeDirectives href "#GqlPlus_Merging_Globals_MergeDirectives" "- GqlPlus_Merging_Globals_MergeDirectives"

          GqlPlus_Merging_Globals_MergeDirectives -->|"parameters"| GqlPlus_Merging_IMerge_IGqlpInputParam_
          GqlPlus_Merging_IMerge_IGqlpInputParam_("IMerge(IGqlpInputParam)")

        

IMerge(IGqlpSchemaOption)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpSchemaOption_("IMerge(IGqlpSchemaOption)")

          GqlPlus_Merging_IMerge_IGqlpSchemaOption_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpSchemaOption_ -->|"1"| GqlPlus_Merging_Globals_MergeOptions
          GqlPlus_Merging_Globals_MergeOptions("MergeOptions")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Globals_MergeOptions[["MergeOptions"]]
click GqlPlus_Merging_Globals_MergeOptions href "#GqlPlus_Merging_Globals_MergeOptions" "- GqlPlus_Merging_Globals_MergeOptions"

          GqlPlus_Merging_Globals_MergeOptions -->|"settings"| GqlPlus_Merging_IMerge_IGqlpSchemaSetting_
          GqlPlus_Merging_IMerge_IGqlpSchemaSetting_("IMerge(IGqlpSchemaSetting)")

          GqlPlus_Merging_IMerge_IGqlpType_("IMerge(IGqlpType)")

          GqlPlus_Merging_IMerge_IGqlpType_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpType_ -->|"1"| GqlPlus_Merging_MergeAllTypes
          GqlPlus_Merging_MergeAllTypes("MergeAllTypes")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_MergeAllTypes[["MergeAllTypes"]]
click GqlPlus_Merging_MergeAllTypes href "#GqlPlus_Merging_MergeAllTypes" "- GqlPlus_Merging_MergeAllTypes"

          GqlPlus_Merging_MergeAllTypes -->|"types[]"| GqlPlus_Merging_IMergeAll_IGqlpType_
          GqlPlus_Merging_IMergeAll_IGqlpType_("IMergeAll(IGqlpType)")

        

MergeDomains(DomainLabelAst,IGqlpDomainLabel)

          flowchart TD
          GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_("MergeDomains(DomainLabelAst,IGqlpDomainLabel)")

          GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_ -->|"->"| GqlPlus_Merging_Simple_MergeDomains
          GqlPlus_Merging_Simple_MergeDomains("MergeDomains")

          GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_ -->|"items"| GqlPlus_Merging_IMerge_IGqlpDomainLabel_
          GqlPlus_Merging_IMerge_IGqlpDomainLabel_("IMerge(IGqlpDomainLabel)")

          GqlPlus_Merging_Simple_MergeDomains[["MergeDomains"]]
click GqlPlus_Merging_Simple_MergeDomains href "#GqlPlus_Merging_Simple_MergeDomains" "- GqlPlus_Merging_Simple_MergeDomains"

          GqlPlus_Merging_IMerge_IGqlpDomainLabel_[["IMerge(IGqlpDomainLabel)"]]
click GqlPlus_Merging_IMerge_IGqlpDomainLabel_ href "#GqlPlus_Merging_IMerge_IGqlpDomainLabel_" "- GqlPlus_Merging_IMerge_IGqlpDomainLabel_"

          GqlPlus_Merging_IMerge_IGqlpDomainLabel_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomainLabel_ -->|"1"| GqlPlus_Merging_Simple_MergeDomainLabels
          GqlPlus_Merging_Simple_MergeDomainLabels("MergeDomainLabels")

          GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_("MergeDomains(DomainRangeAst,IGqlpDomainRange)")

          GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_ -->|"->"| GqlPlus_Merging_Simple_MergeDomains
          GqlPlus_Merging_Simple_MergeDomains("MergeDomains")

          GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_ -->|"items"| GqlPlus_Merging_IMerge_IGqlpDomainRange_
          GqlPlus_Merging_IMerge_IGqlpDomainRange_("IMerge(IGqlpDomainRange)")

          GqlPlus_Merging_Simple_MergeDomains[["MergeDomains"]]
click GqlPlus_Merging_Simple_MergeDomains href "#GqlPlus_Merging_Simple_MergeDomains" "- GqlPlus_Merging_Simple_MergeDomains"

          GqlPlus_Merging_IMerge_IGqlpDomainRange_[["IMerge(IGqlpDomainRange)"]]
click GqlPlus_Merging_IMerge_IGqlpDomainRange_ href "#GqlPlus_Merging_IMerge_IGqlpDomainRange_" "- GqlPlus_Merging_IMerge_IGqlpDomainRange_"

          GqlPlus_Merging_IMerge_IGqlpDomainRange_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomainRange_ -->|"1"| GqlPlus_Merging_Simple_MergeDomainRanges
          GqlPlus_Merging_Simple_MergeDomainRanges("MergeDomainRanges")

        

MergeDomains(DomainRegexAst,IGqlpDomainRegex)

          flowchart TD
          GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_("MergeDomains(DomainRegexAst,IGqlpDomainRegex)")

          GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_ -->|"->"| GqlPlus_Merging_Simple_MergeDomains
          GqlPlus_Merging_Simple_MergeDomains("MergeDomains")

          GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_ -->|"items"| GqlPlus_Merging_IMerge_IGqlpDomainRegex_
          GqlPlus_Merging_IMerge_IGqlpDomainRegex_("IMerge(IGqlpDomainRegex)")

          GqlPlus_Merging_Simple_MergeDomains[["MergeDomains"]]
click GqlPlus_Merging_Simple_MergeDomains href "#GqlPlus_Merging_Simple_MergeDomains" "- GqlPlus_Merging_Simple_MergeDomains"

          GqlPlus_Merging_IMerge_IGqlpDomainRegex_[["IMerge(IGqlpDomainRegex)"]]
click GqlPlus_Merging_IMerge_IGqlpDomainRegex_ href "#GqlPlus_Merging_IMerge_IGqlpDomainRegex_" "- GqlPlus_Merging_IMerge_IGqlpDomainRegex_"

          GqlPlus_Merging_IMerge_IGqlpDomainRegex_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomainRegex_ -->|"1"| GqlPlus_Merging_Simple_MergeDomainRegexes
          GqlPlus_Merging_Simple_MergeDomainRegexes("MergeDomainRegexes")

          GqlPlus_Parsing_Operation_ParseEndFragments("ParseEndFragments")

          GqlPlus_Parsing_Operation_ParseEndFragments -->|"directives"| GqlPlus_Parsing_Parser_IGqlpDirective__DA
          GqlPlus_Parsing_Parser_IGqlpDirective__DA("Parser(IGqlpDirective)+DA")

          GqlPlus_Parsing_Operation_ParseEndFragments -->|"objectParser"| GqlPlus_Parsing_Parser_IGqlpSelection__DA
          GqlPlus_Parsing_Parser_IGqlpSelection__DA("Parser(IGqlpSelection)+DA")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA[["Parser(IGqlpDirective)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpDirective__DA href "#GqlPlus_Parsing_Parser_IGqlpDirective__DA" "- GqlPlus_Parsing_Parser_IGqlpDirective__DA"

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseDirectives
          GqlPlus_Parsing_Operation_ParseDirectives("ParseDirectives")

          GqlPlus_Parsing_Parser_IGqlpSelection__DA[["Parser(IGqlpSelection)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpSelection__DA href "#GqlPlus_Parsing_Parser_IGqlpSelection__DA" "- GqlPlus_Parsing_Parser_IGqlpSelection__DA"

          GqlPlus_Parsing_Parser_IGqlpSelection__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpSelection__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseObject
          GqlPlus_Parsing_Operation_ParseObject("ParseObject")

        

Parser(IGqlpVariable)+DA

          flowchart TD
          GqlPlus_Parsing_Parser_IGqlpVariable__DA("Parser(IGqlpVariable)+DA")

          GqlPlus_Parsing_Parser_IGqlpVariable__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpVariable__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseVariables
          GqlPlus_Parsing_Operation_ParseVariables("ParseVariables")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Operation_ParseVariables[["ParseVariables"]]
click GqlPlus_Parsing_Operation_ParseVariables href "#GqlPlus_Parsing_Operation_ParseVariables" "- GqlPlus_Parsing_Operation_ParseVariables"

          GqlPlus_Parsing_Operation_ParseVariables -->|"variable"| GqlPlus_Parsing_Parser_IGqlpVariable__D
          GqlPlus_Parsing_Parser_IGqlpVariable__D("Parser(IGqlpVariable)+D")

          GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA("ParserArray(IParserEndFragments,IGqlpFragment)+DA")

          GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA -->|"->"| GqlPlus_Parsing_ParserArray
          GqlPlus_Parsing_ParserArray("ParserArray")

          GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseEndFragments
          GqlPlus_Parsing_Operation_ParseEndFragments("ParseEndFragments")

          GqlPlus_Parsing_ParserArray[["ParserArray"]]
click GqlPlus_Parsing_ParserArray href "#GqlPlus_Parsing_ParserArray" "- GqlPlus_Parsing_ParserArray"

          GqlPlus_Parsing_Operation_ParseEndFragments[["ParseEndFragments"]]
click GqlPlus_Parsing_Operation_ParseEndFragments href "#GqlPlus_Parsing_Operation_ParseEndFragments" "- GqlPlus_Parsing_Operation_ParseEndFragments"

          GqlPlus_Parsing_Operation_ParseEndFragments -->|"directives"| GqlPlus_Parsing_Parser_IGqlpDirective__DA
          GqlPlus_Parsing_Parser_IGqlpDirective__DA("Parser(IGqlpDirective)+DA")

          GqlPlus_Parsing_Operation_ParseEndFragments -->|"objectParser"| GqlPlus_Parsing_Parser_IGqlpSelection__DA
          GqlPlus_Parsing_Parser_IGqlpSelection__DA("Parser(IGqlpSelection)+DA")

        

ParserArray(IParserStartFragments,IGqlpFragment)+DA

          flowchart TD
          GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA("ParserArray(IParserStartFragments,IGqlpFragment)+DA")

          GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA -->|"->"| GqlPlus_Parsing_ParserArray
          GqlPlus_Parsing_ParserArray("ParserArray")

          GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseStartFragments
          GqlPlus_Parsing_Operation_ParseStartFragments("ParseStartFragments")

          GqlPlus_Parsing_ParserArray[["ParserArray"]]
click GqlPlus_Parsing_ParserArray href "#GqlPlus_Parsing_ParserArray" "- GqlPlus_Parsing_ParserArray"

          GqlPlus_Parsing_Operation_ParseStartFragments("ParseStartFragments")

          GqlPlus_Parsing_Operation_ParseStartFragments -->|"directives"| GqlPlus_Parsing_Parser_IGqlpDirective__DA
          GqlPlus_Parsing_Parser_IGqlpDirective__DA("Parser(IGqlpDirective)+DA")

          GqlPlus_Parsing_Operation_ParseStartFragments -->|"objectParser"| GqlPlus_Parsing_Parser_IGqlpSelection__DA
          GqlPlus_Parsing_Parser_IGqlpSelection__DA("Parser(IGqlpSelection)+DA")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA[["Parser(IGqlpDirective)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpDirective__DA href "#GqlPlus_Parsing_Parser_IGqlpDirective__DA" "- GqlPlus_Parsing_Parser_IGqlpDirective__DA"

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseDirectives
          GqlPlus_Parsing_Operation_ParseDirectives("ParseDirectives")

          GqlPlus_Parsing_Parser_IGqlpSelection__DA[["Parser(IGqlpSelection)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpSelection__DA href "#GqlPlus_Parsing_Parser_IGqlpSelection__DA" "- GqlPlus_Parsing_Parser_IGqlpSelection__DA"

          GqlPlus_Parsing_Parser_IGqlpSelection__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpSelection__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseObject
          GqlPlus_Parsing_Operation_ParseObject("ParseObject")

          GqlPlus_ISchemaParseChecks("ISchemaParseChecks")

          GqlPlus_ISchemaParseChecks -->|"0"| GqlPlus_SchemaParseChecks
          GqlPlus_SchemaParseChecks("SchemaParseChecks")

          GqlPlus_SchemaParseChecks[["SchemaParseChecks"]]
click GqlPlus_SchemaParseChecks href "#GqlPlus_SchemaParseChecks" "- GqlPlus_SchemaParseChecks"

          GqlPlus_SchemaParseChecks -->|"schemaParser"| GqlPlus_Parsing_Parser_IGqlpSchema__D
          GqlPlus_Parsing_Parser_IGqlpSchema__D("Parser(IGqlpSchema)+D")

        

MergeDualObjects

          flowchart TD
          GqlPlus_Merging_Objects_MergeDualObjects("MergeDualObjects")

          GqlPlus_Merging_Objects_MergeDualObjects -->|"fields"| GqlPlus_Merging_IMerge_IGqlpDualField_
          GqlPlus_Merging_IMerge_IGqlpDualField_("IMerge(IGqlpDualField)")

          GqlPlus_Merging_Objects_MergeDualObjects -->|"typeParams"| GqlPlus_Merging_IMerge_IGqlpTypeParam_
          GqlPlus_Merging_IMerge_IGqlpTypeParam_("IMerge(IGqlpTypeParam)")

          GqlPlus_Merging_Objects_MergeDualObjects -->|"alternates"| GqlPlus_Merging_IMerge_IGqlpDualAlternate_
          GqlPlus_Merging_IMerge_IGqlpDualAlternate_("IMerge(IGqlpDualAlternate)")

          GqlPlus_Merging_IMerge_IGqlpDualField_[["IMerge(IGqlpDualField)"]]
click GqlPlus_Merging_IMerge_IGqlpDualField_ href "#GqlPlus_Merging_IMerge_IGqlpDualField_" "- GqlPlus_Merging_IMerge_IGqlpDualField_"

          GqlPlus_Merging_IMerge_IGqlpDualField_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDualField_ -->|"1"| GqlPlus_Merging_Objects_MergeDualFields
          GqlPlus_Merging_Objects_MergeDualFields("MergeDualFields")

          GqlPlus_Merging_IMerge_IGqlpTypeParam_[["IMerge(IGqlpTypeParam)"]]
click GqlPlus_Merging_IMerge_IGqlpTypeParam_ href "#GqlPlus_Merging_IMerge_IGqlpTypeParam_" "- GqlPlus_Merging_IMerge_IGqlpTypeParam_"

          GqlPlus_Merging_IMerge_IGqlpTypeParam_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpTypeParam_ -->|"1"| GqlPlus_Merging_Objects_MergeTypeParams
          GqlPlus_Merging_Objects_MergeTypeParams("MergeTypeParams")

          GqlPlus_Merging_IMerge_IGqlpDualAlternate_[["IMerge(IGqlpDualAlternate)"]]
click GqlPlus_Merging_IMerge_IGqlpDualAlternate_ href "#GqlPlus_Merging_IMerge_IGqlpDualAlternate_" "- GqlPlus_Merging_IMerge_IGqlpDualAlternate_"

          GqlPlus_Merging_IMerge_IGqlpDualAlternate_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDualAlternate_ -->|"1"| GqlPlus_Merging_Objects_MergeDualAlternates
          GqlPlus_Merging_Objects_MergeDualAlternates("MergeDualAlternates")

          GqlPlus_Merging_Objects_MergeInputObjects("MergeInputObjects")

          GqlPlus_Merging_Objects_MergeInputObjects -->|"fields"| GqlPlus_Merging_IMerge_IGqlpInputField_
          GqlPlus_Merging_IMerge_IGqlpInputField_("IMerge(IGqlpInputField)")

          GqlPlus_Merging_Objects_MergeInputObjects -->|"typeParams"| GqlPlus_Merging_IMerge_IGqlpTypeParam_
          GqlPlus_Merging_IMerge_IGqlpTypeParam_("IMerge(IGqlpTypeParam)")

          GqlPlus_Merging_Objects_MergeInputObjects -->|"alternates"| GqlPlus_Merging_IMerge_IGqlpInputAlternate_
          GqlPlus_Merging_IMerge_IGqlpInputAlternate_("IMerge(IGqlpInputAlternate)")

          GqlPlus_Merging_IMerge_IGqlpInputField_[["IMerge(IGqlpInputField)"]]
click GqlPlus_Merging_IMerge_IGqlpInputField_ href "#GqlPlus_Merging_IMerge_IGqlpInputField_" "- GqlPlus_Merging_IMerge_IGqlpInputField_"

          GqlPlus_Merging_IMerge_IGqlpInputField_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpInputField_ -->|"1"| GqlPlus_Merging_Objects_MergeInputFields
          GqlPlus_Merging_Objects_MergeInputFields("MergeInputFields")

          GqlPlus_Merging_IMerge_IGqlpTypeParam_[["IMerge(IGqlpTypeParam)"]]
click GqlPlus_Merging_IMerge_IGqlpTypeParam_ href "#GqlPlus_Merging_IMerge_IGqlpTypeParam_" "- GqlPlus_Merging_IMerge_IGqlpTypeParam_"

          GqlPlus_Merging_IMerge_IGqlpTypeParam_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpTypeParam_ -->|"1"| GqlPlus_Merging_Objects_MergeTypeParams
          GqlPlus_Merging_Objects_MergeTypeParams("MergeTypeParams")

          GqlPlus_Merging_IMerge_IGqlpInputAlternate_[["IMerge(IGqlpInputAlternate)"]]
click GqlPlus_Merging_IMerge_IGqlpInputAlternate_ href "#GqlPlus_Merging_IMerge_IGqlpInputAlternate_" "- GqlPlus_Merging_IMerge_IGqlpInputAlternate_"

          GqlPlus_Merging_IMerge_IGqlpInputAlternate_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpInputAlternate_ -->|"1"| GqlPlus_Merging_Objects_MergeInputAlternates
          GqlPlus_Merging_Objects_MergeInputAlternates("MergeInputAlternates")

        

IManyChecksParser(IGqlpModifier)

          flowchart TD
          GqlPlus_IManyChecksParser_IGqlpModifier_("IManyChecksParser(IGqlpModifier)")

          GqlPlus_IManyChecksParser_IGqlpModifier_ -->|"->"| GqlPlus_IManyChecksParser
          GqlPlus_IManyChecksParser("IManyChecksParser")

          GqlPlus_IManyChecksParser_IGqlpModifier_ -->|"1"| GqlPlus_ManyChecksParser_IGqlpModifier_
          GqlPlus_ManyChecksParser_IGqlpModifier_("ManyChecksParser(IGqlpModifier)")

          GqlPlus_IManyChecksParser("IManyChecksParser")

          GqlPlus_ManyChecksParser_IGqlpModifier_[["ManyChecksParser(IGqlpModifier)"]]
click GqlPlus_ManyChecksParser_IGqlpModifier_ href "#GqlPlus_ManyChecksParser_IGqlpModifier_" "- GqlPlus_ManyChecksParser_IGqlpModifier_"

          GqlPlus_ManyChecksParser_IGqlpModifier_ -->|"parser"| GqlPlus_Parsing_Parser_IGqlpModifier__DA
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_IManyChecksParser_IParserCollections_IGqlpModifier_("IManyChecksParser(IParserCollections,IGqlpModifier)")

          GqlPlus_IManyChecksParser_IParserCollections_IGqlpModifier_ -->|"->"| GqlPlus_IManyChecksParser
          GqlPlus_IManyChecksParser("IManyChecksParser")

          GqlPlus_IManyChecksParser_IParserCollections_IGqlpModifier_ -->|"1"| GqlPlus_ManyChecksParser_IParserCollections_IGqlpModifier_
          GqlPlus_ManyChecksParser_IParserCollections_IGqlpModifier_("ManyChecksParser(IParserCollections,IGqlpModifier)")

          GqlPlus_IManyChecksParser[["IManyChecksParser"]]
click GqlPlus_IManyChecksParser href "#GqlPlus_IManyChecksParser" "- GqlPlus_IManyChecksParser"

          GqlPlus_ManyChecksParser_IParserCollections_IGqlpModifier_[["ManyChecksParser(IParserCollections,IGqlpModifier)"]]
click GqlPlus_ManyChecksParser_IParserCollections_IGqlpModifier_ href "#GqlPlus_ManyChecksParser_IParserCollections_IGqlpModifier_" "- GqlPlus_ManyChecksParser_IParserCollections_IGqlpModifier_"

          GqlPlus_ManyChecksParser_IParserCollections_IGqlpModifier_ -->|"parser"| GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA
          GqlPlus_Parsing_ParserArray_IParserCollections_IGqlpModifier__DA("ParserArray(IParserCollections,IGqlpModifier)+DA")

        

IMerge(IGqlpDomain(IGqlpDomainLabel))

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainLabel__("IMerge(IGqlpDomain(IGqlpDomainLabel))")

          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainLabel__ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainLabel__ -->|"=>"| GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_
          GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_("MergeDomains(DomainLabelAst,IGqlpDomainLabel)")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_[["MergeDomains(DomainLabelAst,IGqlpDomainLabel)"]]
click GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_ href "#GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_" "- GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_"

          GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_ -->|"->"| GqlPlus_Merging_Simple_MergeDomains
          GqlPlus_Merging_Simple_MergeDomains("MergeDomains")

          GqlPlus_Merging_Simple_MergeDomains_DomainLabelAst_IGqlpDomainLabel_ -->|"items"| GqlPlus_Merging_IMerge_IGqlpDomainLabel_
          GqlPlus_Merging_IMerge_IGqlpDomainLabel_("IMerge(IGqlpDomainLabel)")

          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainRange__("IMerge(IGqlpDomain(IGqlpDomainRange))")

          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainRange__ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainRange__ -->|"=>"| GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_
          GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_("MergeDomains(DomainRangeAst,IGqlpDomainRange)")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_[["MergeDomains(DomainRangeAst,IGqlpDomainRange)"]]
click GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_ href "#GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_" "- GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_"

          GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_ -->|"->"| GqlPlus_Merging_Simple_MergeDomains
          GqlPlus_Merging_Simple_MergeDomains("MergeDomains")

          GqlPlus_Merging_Simple_MergeDomains_DomainRangeAst_IGqlpDomainRange_ -->|"items"| GqlPlus_Merging_IMerge_IGqlpDomainRange_
          GqlPlus_Merging_IMerge_IGqlpDomainRange_("IMerge(IGqlpDomainRange)")

        

IMerge(IGqlpDomain(IGqlpDomainRegex))

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainRegex__("IMerge(IGqlpDomain(IGqlpDomainRegex))")

          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainRegex__ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainRegex__ -->|"=>"| GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_
          GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_("MergeDomains(DomainRegexAst,IGqlpDomainRegex)")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_[["MergeDomains(DomainRegexAst,IGqlpDomainRegex)"]]
click GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_ href "#GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_" "- GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_"

          GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_ -->|"->"| GqlPlus_Merging_Simple_MergeDomains
          GqlPlus_Merging_Simple_MergeDomains("MergeDomains")

          GqlPlus_Merging_Simple_MergeDomains_DomainRegexAst_IGqlpDomainRegex_ -->|"items"| GqlPlus_Merging_IMerge_IGqlpDomainRegex_
          GqlPlus_Merging_IMerge_IGqlpDomainRegex_("IMerge(IGqlpDomainRegex)")

          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainTrueFalse__("IMerge(IGqlpDomain(IGqlpDomainTrueFalse))")

          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainTrueFalse__ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomain_IGqlpDomainTrueFalse__ -->|"=>"| GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_
          GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_("MergeDomains(DomainTrueFalseAst,IGqlpDomainTrueFalse)")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_[["MergeDomains(DomainTrueFalseAst,IGqlpDomainTrueFalse)"]]
click GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_ href "#GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_" "- GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_"

          GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_ -->|"->"| GqlPlus_Merging_Simple_MergeDomains
          GqlPlus_Merging_Simple_MergeDomains("MergeDomains")

          GqlPlus_Merging_Simple_MergeDomains_DomainTrueFalseAst_IGqlpDomainTrueFalse_ -->|"items"| GqlPlus_Merging_IMerge_IGqlpDomainTrueFalse_
          GqlPlus_Merging_IMerge_IGqlpDomainTrueFalse_("IMerge(IGqlpDomainTrueFalse)")

        

IMerge(IGqlpDomain)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpDomain_("IMerge(IGqlpDomain)")

          GqlPlus_Merging_IMerge_IGqlpDomain_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDomain_ -->|"=>"| GqlPlus_Merging_Simple_MergeAllDomains
          GqlPlus_Merging_Simple_MergeAllDomains("MergeAllDomains")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeAllDomains[["MergeAllDomains"]]
click GqlPlus_Merging_Simple_MergeAllDomains href "#GqlPlus_Merging_Simple_MergeAllDomains" "- GqlPlus_Merging_Simple_MergeAllDomains"

          GqlPlus_Merging_Simple_MergeAllDomains -->|"domains[]"| GqlPlus_Merging_IMergeAll_IGqlpDomain_
          GqlPlus_Merging_IMergeAll_IGqlpDomain_("IMergeAll(IGqlpDomain)")

          GqlPlus_Merging_IMerge_IGqlpDualObject_("IMerge(IGqlpDualObject)")

          GqlPlus_Merging_IMerge_IGqlpDualObject_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpDualObject_ -->|"=>"| GqlPlus_Merging_Objects_MergeDualObjects
          GqlPlus_Merging_Objects_MergeDualObjects("MergeDualObjects")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Objects_MergeDualObjects[["MergeDualObjects"]]
click GqlPlus_Merging_Objects_MergeDualObjects href "#GqlPlus_Merging_Objects_MergeDualObjects" "- GqlPlus_Merging_Objects_MergeDualObjects"

          GqlPlus_Merging_Objects_MergeDualObjects -->|"fields"| GqlPlus_Merging_IMerge_IGqlpDualField_
          GqlPlus_Merging_IMerge_IGqlpDualField_("IMerge(IGqlpDualField)")

          GqlPlus_Merging_Objects_MergeDualObjects -->|"typeParams"| GqlPlus_Merging_IMerge_IGqlpTypeParam_
          GqlPlus_Merging_IMerge_IGqlpTypeParam_("IMerge(IGqlpTypeParam)")

          GqlPlus_Merging_Objects_MergeDualObjects -->|"alternates"| GqlPlus_Merging_IMerge_IGqlpDualAlternate_
          GqlPlus_Merging_IMerge_IGqlpDualAlternate_("IMerge(IGqlpDualAlternate)")

        

IMerge(IGqlpEnum)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpEnum_("IMerge(IGqlpEnum)")

          GqlPlus_Merging_IMerge_IGqlpEnum_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpEnum_ -->|"=>"| GqlPlus_Merging_Simple_MergeEnums
          GqlPlus_Merging_Simple_MergeEnums("MergeEnums")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeEnums[["MergeEnums"]]
click GqlPlus_Merging_Simple_MergeEnums href "#GqlPlus_Merging_Simple_MergeEnums" "- GqlPlus_Merging_Simple_MergeEnums"

          GqlPlus_Merging_Simple_MergeEnums -->|"enumLabels"| GqlPlus_Merging_IMerge_IGqlpEnumLabel_
          GqlPlus_Merging_IMerge_IGqlpEnumLabel_("IMerge(IGqlpEnumLabel)")

          GqlPlus_Merging_IMerge_IGqlpInputObject_("IMerge(IGqlpInputObject)")

          GqlPlus_Merging_IMerge_IGqlpInputObject_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpInputObject_ -->|"=>"| GqlPlus_Merging_Objects_MergeInputObjects
          GqlPlus_Merging_Objects_MergeInputObjects("MergeInputObjects")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Objects_MergeInputObjects[["MergeInputObjects"]]
click GqlPlus_Merging_Objects_MergeInputObjects href "#GqlPlus_Merging_Objects_MergeInputObjects" "- GqlPlus_Merging_Objects_MergeInputObjects"

          GqlPlus_Merging_Objects_MergeInputObjects -->|"fields"| GqlPlus_Merging_IMerge_IGqlpInputField_
          GqlPlus_Merging_IMerge_IGqlpInputField_("IMerge(IGqlpInputField)")

          GqlPlus_Merging_Objects_MergeInputObjects -->|"typeParams"| GqlPlus_Merging_IMerge_IGqlpTypeParam_
          GqlPlus_Merging_IMerge_IGqlpTypeParam_("IMerge(IGqlpTypeParam)")

          GqlPlus_Merging_Objects_MergeInputObjects -->|"alternates"| GqlPlus_Merging_IMerge_IGqlpInputAlternate_
          GqlPlus_Merging_IMerge_IGqlpInputAlternate_("IMerge(IGqlpInputAlternate)")

        

IMerge(IGqlpOutputObject)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpOutputObject_("IMerge(IGqlpOutputObject)")

          GqlPlus_Merging_IMerge_IGqlpOutputObject_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpOutputObject_ -->|"=>"| GqlPlus_Merging_Objects_MergeOutputObjects
          GqlPlus_Merging_Objects_MergeOutputObjects("MergeOutputObjects")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Objects_MergeOutputObjects[["MergeOutputObjects"]]
click GqlPlus_Merging_Objects_MergeOutputObjects href "#GqlPlus_Merging_Objects_MergeOutputObjects" "- GqlPlus_Merging_Objects_MergeOutputObjects"

          GqlPlus_Merging_Objects_MergeOutputObjects -->|"fields"| GqlPlus_Merging_IMerge_IGqlpOutputField_
          GqlPlus_Merging_IMerge_IGqlpOutputField_("IMerge(IGqlpOutputField)")

          GqlPlus_Merging_Objects_MergeOutputObjects -->|"typeParams"| GqlPlus_Merging_IMerge_IGqlpTypeParam_
          GqlPlus_Merging_IMerge_IGqlpTypeParam_("IMerge(IGqlpTypeParam)")

          GqlPlus_Merging_Objects_MergeOutputObjects -->|"alternates"| GqlPlus_Merging_IMerge_IGqlpOutputAlternate_
          GqlPlus_Merging_IMerge_IGqlpOutputAlternate_("IMerge(IGqlpOutputAlternate)")

        

IMerge(IGqlpSchema)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpSchema_("IMerge(IGqlpSchema)")

          GqlPlus_Merging_IMerge_IGqlpSchema_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpSchema_ -->|"1"| GqlPlus_Merging_MergeSchemas
          GqlPlus_Merging_MergeSchemas("MergeSchemas")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_MergeSchemas("MergeSchemas")

          GqlPlus_Merging_MergeSchemas -->|"categoryMerger"| GqlPlus_Merging_IMerge_IGqlpSchemaCategory_
          GqlPlus_Merging_IMerge_IGqlpSchemaCategory_("IMerge(IGqlpSchemaCategory)")

          GqlPlus_Merging_MergeSchemas -->|"directiveMerger"| GqlPlus_Merging_IMerge_IGqlpSchemaDirective_
          GqlPlus_Merging_IMerge_IGqlpSchemaDirective_("IMerge(IGqlpSchemaDirective)")

          GqlPlus_Merging_MergeSchemas -->|"optionMerger"| GqlPlus_Merging_IMerge_IGqlpSchemaOption_
          GqlPlus_Merging_IMerge_IGqlpSchemaOption_("IMerge(IGqlpSchemaOption)")

          GqlPlus_Merging_MergeSchemas -->|"astTypeMerger"| GqlPlus_Merging_IMerge_IGqlpType_
          GqlPlus_Merging_IMerge_IGqlpType_("IMerge(IGqlpType)")

          GqlPlus_Merging_IMerge_IGqlpSchemaCategory_[["IMerge(IGqlpSchemaCategory)"]]
click GqlPlus_Merging_IMerge_IGqlpSchemaCategory_ href "#GqlPlus_Merging_IMerge_IGqlpSchemaCategory_" "- GqlPlus_Merging_IMerge_IGqlpSchemaCategory_"

          GqlPlus_Merging_IMerge_IGqlpSchemaCategory_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpSchemaCategory_ -->|"1"| GqlPlus_Merging_Globals_MergeCategories
          GqlPlus_Merging_Globals_MergeCategories("MergeCategories")

          GqlPlus_Merging_IMerge_IGqlpSchemaDirective_[["IMerge(IGqlpSchemaDirective)"]]
click GqlPlus_Merging_IMerge_IGqlpSchemaDirective_ href "#GqlPlus_Merging_IMerge_IGqlpSchemaDirective_" "- GqlPlus_Merging_IMerge_IGqlpSchemaDirective_"

          GqlPlus_Merging_IMerge_IGqlpSchemaDirective_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpSchemaDirective_ -->|"1"| GqlPlus_Merging_Globals_MergeDirectives
          GqlPlus_Merging_Globals_MergeDirectives("MergeDirectives")

          GqlPlus_Merging_IMerge_IGqlpSchemaOption_[["IMerge(IGqlpSchemaOption)"]]
click GqlPlus_Merging_IMerge_IGqlpSchemaOption_ href "#GqlPlus_Merging_IMerge_IGqlpSchemaOption_" "- GqlPlus_Merging_IMerge_IGqlpSchemaOption_"

          GqlPlus_Merging_IMerge_IGqlpSchemaOption_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpSchemaOption_ -->|"1"| GqlPlus_Merging_Globals_MergeOptions
          GqlPlus_Merging_Globals_MergeOptions("MergeOptions")

          GqlPlus_Merging_IMerge_IGqlpType_[["IMerge(IGqlpType)"]]
click GqlPlus_Merging_IMerge_IGqlpType_ href "#GqlPlus_Merging_IMerge_IGqlpType_" "- GqlPlus_Merging_IMerge_IGqlpType_"

          GqlPlus_Merging_IMerge_IGqlpType_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpType_ -->|"1"| GqlPlus_Merging_MergeAllTypes
          GqlPlus_Merging_MergeAllTypes("MergeAllTypes")

        

IMerge(IGqlpUnion)

          flowchart TD
          GqlPlus_Merging_IMerge_IGqlpUnion_("IMerge(IGqlpUnion)")

          GqlPlus_Merging_IMerge_IGqlpUnion_ -->|"->"| GqlPlus_Merging_IMerge
          GqlPlus_Merging_IMerge("IMerge")

          GqlPlus_Merging_IMerge_IGqlpUnion_ -->|"=>"| GqlPlus_Merging_Simple_MergeUnions
          GqlPlus_Merging_Simple_MergeUnions("MergeUnions")

          GqlPlus_Merging_IMerge[["IMerge"]]
click GqlPlus_Merging_IMerge href "#GqlPlus_Merging_IMerge" "- GqlPlus_Merging_IMerge"

          GqlPlus_Merging_Simple_MergeUnions[["MergeUnions"]]
click GqlPlus_Merging_Simple_MergeUnions href "#GqlPlus_Merging_Simple_MergeUnions" "- GqlPlus_Merging_Simple_MergeUnions"

          GqlPlus_Merging_Simple_MergeUnions -->|"unionMembers"| GqlPlus_Merging_IMerge_IGqlpUnionMember_
          GqlPlus_Merging_IMerge_IGqlpUnionMember_("IMerge(IGqlpUnionMember)")

          GqlPlus_IOneChecksParser_IGqlpConstant_("IOneChecksParser(IGqlpConstant)")

          GqlPlus_IOneChecksParser_IGqlpConstant_ -->|"->"| GqlPlus_IOneChecksParser
          GqlPlus_IOneChecksParser("IOneChecksParser")

          GqlPlus_IOneChecksParser_IGqlpConstant_ -->|"1"| GqlPlus_OneChecksParser_IGqlpConstant_
          GqlPlus_OneChecksParser_IGqlpConstant_("OneChecksParser(IGqlpConstant)")

          GqlPlus_IOneChecksParser("IOneChecksParser")

          GqlPlus_OneChecksParser_IGqlpConstant_[["OneChecksParser(IGqlpConstant)"]]
click GqlPlus_OneChecksParser_IGqlpConstant_ href "#GqlPlus_OneChecksParser_IGqlpConstant_" "- GqlPlus_OneChecksParser_IGqlpConstant_"

          GqlPlus_OneChecksParser_IGqlpConstant_ -->|"parser"| GqlPlus_Parsing_Parser_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IGqlpConstant__D("Parser(IGqlpConstant)+D")

        

IOneChecksParser(IGqlpFieldKey)

          flowchart TD
          GqlPlus_IOneChecksParser_IGqlpFieldKey_("IOneChecksParser(IGqlpFieldKey)")

          GqlPlus_IOneChecksParser_IGqlpFieldKey_ -->|"->"| GqlPlus_IOneChecksParser
          GqlPlus_IOneChecksParser("IOneChecksParser")

          GqlPlus_IOneChecksParser_IGqlpFieldKey_ -->|"1"| GqlPlus_OneChecksParser_IGqlpFieldKey_
          GqlPlus_OneChecksParser_IGqlpFieldKey_("OneChecksParser(IGqlpFieldKey)")

          GqlPlus_IOneChecksParser[["IOneChecksParser"]]
click GqlPlus_IOneChecksParser href "#GqlPlus_IOneChecksParser" "- GqlPlus_IOneChecksParser"

          GqlPlus_OneChecksParser_IGqlpFieldKey_[["OneChecksParser(IGqlpFieldKey)"]]
click GqlPlus_OneChecksParser_IGqlpFieldKey_ href "#GqlPlus_OneChecksParser_IGqlpFieldKey_" "- GqlPlus_OneChecksParser_IGqlpFieldKey_"

          GqlPlus_OneChecksParser_IGqlpFieldKey_ -->|"parser"| GqlPlus_Parsing_Parser_IGqlpFieldKey__D
          GqlPlus_Parsing_Parser_IGqlpFieldKey__D("Parser(IGqlpFieldKey)+D")

          GqlPlus_IOneChecksParser_IParserDefault_IGqlpConstant_("IOneChecksParser(IParserDefault,IGqlpConstant)")

          GqlPlus_IOneChecksParser_IParserDefault_IGqlpConstant_ -->|"->"| GqlPlus_IOneChecksParser
          GqlPlus_IOneChecksParser("IOneChecksParser")

          GqlPlus_IOneChecksParser_IParserDefault_IGqlpConstant_ -->|"1"| GqlPlus_OneChecksParser_IParserDefault_IGqlpConstant_
          GqlPlus_OneChecksParser_IParserDefault_IGqlpConstant_("OneChecksParser(IParserDefault,IGqlpConstant)")

          GqlPlus_IOneChecksParser[["IOneChecksParser"]]
click GqlPlus_IOneChecksParser href "#GqlPlus_IOneChecksParser" "- GqlPlus_IOneChecksParser"

          GqlPlus_OneChecksParser_IParserDefault_IGqlpConstant_[["OneChecksParser(IParserDefault,IGqlpConstant)"]]
click GqlPlus_OneChecksParser_IParserDefault_IGqlpConstant_ href "#GqlPlus_OneChecksParser_IParserDefault_IGqlpConstant_" "- GqlPlus_OneChecksParser_IParserDefault_IGqlpConstant_"

          GqlPlus_OneChecksParser_IParserDefault_IGqlpConstant_ -->|"parser"| GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D
          GqlPlus_Parsing_Parser_IParserDefault_IGqlpConstant__D("Parser(IParserDefault,IGqlpConstant)+D")

        

IOneChecksParser(KeyValue(IGqlpConstant))

          flowchart TD
          GqlPlus_IOneChecksParser_KeyValue_IGqlpConstant__("IOneChecksParser(KeyValue(IGqlpConstant))")

          GqlPlus_IOneChecksParser_KeyValue_IGqlpConstant__ -->|"->"| GqlPlus_IOneChecksParser
          GqlPlus_IOneChecksParser("IOneChecksParser")

          GqlPlus_IOneChecksParser_KeyValue_IGqlpConstant__ -->|"1"| GqlPlus_OneChecksParser_KeyValue_IGqlpConstant__
          GqlPlus_OneChecksParser_KeyValue_IGqlpConstant__("OneChecksParser(KeyValue(IGqlpConstant))")

          GqlPlus_IOneChecksParser[["IOneChecksParser"]]
click GqlPlus_IOneChecksParser href "#GqlPlus_IOneChecksParser" "- GqlPlus_IOneChecksParser"

          GqlPlus_OneChecksParser_KeyValue_IGqlpConstant__[["OneChecksParser(KeyValue(IGqlpConstant))"]]
click GqlPlus_OneChecksParser_KeyValue_IGqlpConstant__ href "#GqlPlus_OneChecksParser_KeyValue_IGqlpConstant__" "- GqlPlus_OneChecksParser_KeyValue_IGqlpConstant__"

          GqlPlus_OneChecksParser_KeyValue_IGqlpConstant__ -->|"parser"| GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D
          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D("Parser(KeyValue(IGqlpConstant))+D")

          GqlPlus_Parsing_Parser_CategoryOption__D("Parser(CategoryOption)+D")

          GqlPlus_Parsing_Parser_CategoryOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_CategoryOption__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_
          GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_("EnumParser(CategoryOption)")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_[["EnumParser(CategoryOption)"]]
click GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_ href "#GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_" "- GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_"

          GqlPlus_Parsing_Schema_Simple_EnumParser_CategoryOption_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

        

Parser(DirectiveOption)+D

          flowchart TD
          GqlPlus_Parsing_Parser_DirectiveOption__D("Parser(DirectiveOption)+D")

          GqlPlus_Parsing_Parser_DirectiveOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_DirectiveOption__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_
          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_("EnumParser(DirectiveOption)")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_[["EnumParser(DirectiveOption)"]]
click GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_ href "#GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_" "- GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_"

          GqlPlus_Parsing_Schema_Simple_EnumParser_DirectiveOption_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

          GqlPlus_Parsing_Parser_DomainKind__D("Parser(DomainKind)+D")

          GqlPlus_Parsing_Parser_DomainKind__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_DomainKind__D -->|"=>"| GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_
          GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_("EnumParser(DomainKind)")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_[["EnumParser(DomainKind)"]]
click GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_ href "#GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_" "- GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_"

          GqlPlus_Parsing_Schema_Simple_EnumParser_DomainKind_ -->|"->"| GqlPlus_Parsing_Schema_Simple_EnumParser
          GqlPlus_Parsing_Schema_Simple_EnumParser("EnumParser")

        

Parser(IEnumParser(NullOption),NullOption)+D

          flowchart TD
          GqlPlus_Parsing_Parser_IEnumParser_NullOption__NullOption__D("Parser(IEnumParser(NullOption),NullOption)+D")

          GqlPlus_Parsing_Parser_IEnumParser_NullOption__NullOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IEnumParser_NullOption__NullOption__D -->|"=>"| GqlPlus_Parsing_Schema_ParseNullOption
          GqlPlus_Parsing_Schema_ParseNullOption("ParseNullOption")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_ParseNullOption[["ParseNullOption"]]
click GqlPlus_Parsing_Schema_ParseNullOption href "#GqlPlus_Parsing_Schema_ParseNullOption" "- GqlPlus_Parsing_Schema_ParseNullOption"

        

Parser(IGqlpOperation)+D

          flowchart TD
          GqlPlus_Parsing_Parser_IGqlpOperation__D("Parser(IGqlpOperation)+D")

          GqlPlus_Parsing_Parser_IGqlpOperation__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpOperation__D -->|"=>"| GqlPlus_Parsing_Operation_ParseOperation
          GqlPlus_Parsing_Operation_ParseOperation("ParseOperation")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Operation_ParseOperation("ParseOperation")

          GqlPlus_Parsing_Operation_ParseOperation -->|"argument"| GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D
          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D("Parser(IParserArg,IGqlpArg)+D")

          GqlPlus_Parsing_Operation_ParseOperation -->|"directives"| GqlPlus_Parsing_Parser_IGqlpDirective__DA
          GqlPlus_Parsing_Parser_IGqlpDirective__DA("Parser(IGqlpDirective)+DA")

          GqlPlus_Parsing_Operation_ParseOperation -->|"startFragments"| GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA
          GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA("ParserArray(IParserStartFragments,IGqlpFragment)+DA")

          GqlPlus_Parsing_Operation_ParseOperation -->|"endFragments"| GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA
          GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA("ParserArray(IParserEndFragments,IGqlpFragment)+DA")

          GqlPlus_Parsing_Operation_ParseOperation -->|"modifiers"| GqlPlus_Parsing_Parser_IGqlpModifier__DA
          GqlPlus_Parsing_Parser_IGqlpModifier__DA("Parser(IGqlpModifier)+DA")

          GqlPlus_Parsing_Operation_ParseOperation -->|"objectParser"| GqlPlus_Parsing_Parser_IGqlpSelection__DA
          GqlPlus_Parsing_Parser_IGqlpSelection__DA("Parser(IGqlpSelection)+DA")

          GqlPlus_Parsing_Operation_ParseOperation -->|"variables"| GqlPlus_Parsing_Parser_IGqlpVariable__DA
          GqlPlus_Parsing_Parser_IGqlpVariable__DA("Parser(IGqlpVariable)+DA")

          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D[["Parser(IParserArg,IGqlpArg)+D"]]
click GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D href "#GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D" "- GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D"

          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IParserArg_IGqlpArg__D -->|"=>"| GqlPlus_Parsing_Operation_ParseArg
          GqlPlus_Parsing_Operation_ParseArg("ParseArg")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA[["Parser(IGqlpDirective)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpDirective__DA href "#GqlPlus_Parsing_Parser_IGqlpDirective__DA" "- GqlPlus_Parsing_Parser_IGqlpDirective__DA"

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpDirective__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseDirectives
          GqlPlus_Parsing_Operation_ParseDirectives("ParseDirectives")

          GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA[["ParserArray(IParserStartFragments,IGqlpFragment)+DA"]]
click GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA href "#GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA" "- GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA"

          GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA -->|"->"| GqlPlus_Parsing_ParserArray
          GqlPlus_Parsing_ParserArray("ParserArray")

          GqlPlus_Parsing_ParserArray_IParserStartFragments_IGqlpFragment__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseStartFragments
          GqlPlus_Parsing_Operation_ParseStartFragments("ParseStartFragments")

          GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA[["ParserArray(IParserEndFragments,IGqlpFragment)+DA"]]
click GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA href "#GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA" "- GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA"

          GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA -->|"->"| GqlPlus_Parsing_ParserArray
          GqlPlus_Parsing_ParserArray("ParserArray")

          GqlPlus_Parsing_ParserArray_IParserEndFragments_IGqlpFragment__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseEndFragments
          GqlPlus_Parsing_Operation_ParseEndFragments("ParseEndFragments")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA[["Parser(IGqlpModifier)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpModifier__DA href "#GqlPlus_Parsing_Parser_IGqlpModifier__DA" "- GqlPlus_Parsing_Parser_IGqlpModifier__DA"

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpModifier__DA -->|"=>"| GqlPlus_Parsing_ParseModifiers
          GqlPlus_Parsing_ParseModifiers("ParseModifiers")

          GqlPlus_Parsing_Parser_IGqlpSelection__DA[["Parser(IGqlpSelection)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpSelection__DA href "#GqlPlus_Parsing_Parser_IGqlpSelection__DA" "- GqlPlus_Parsing_Parser_IGqlpSelection__DA"

          GqlPlus_Parsing_Parser_IGqlpSelection__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpSelection__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseObject
          GqlPlus_Parsing_Operation_ParseObject("ParseObject")

          GqlPlus_Parsing_Parser_IGqlpVariable__DA[["Parser(IGqlpVariable)+DA"]]
click GqlPlus_Parsing_Parser_IGqlpVariable__DA href "#GqlPlus_Parsing_Parser_IGqlpVariable__DA" "- GqlPlus_Parsing_Parser_IGqlpVariable__DA"

          GqlPlus_Parsing_Parser_IGqlpVariable__DA -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IGqlpVariable__DA -->|"=>"| GqlPlus_Parsing_Operation_ParseVariables
          GqlPlus_Parsing_Operation_ParseVariables("ParseVariables")

        

Parser(IValueParser(IGqlpConstant),IGqlpConstant)+D

          flowchart TD
          GqlPlus_Parsing_Parser_IValueParser_IGqlpConstant__IGqlpConstant__D("Parser(IValueParser(IGqlpConstant),IGqlpConstant)+D")

          GqlPlus_Parsing_Parser_IValueParser_IGqlpConstant__IGqlpConstant__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_IValueParser_IGqlpConstant__IGqlpConstant__D -->|"=>"| GqlPlus_Parsing_ParseConstant
          GqlPlus_Parsing_ParseConstant("ParseConstant")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_ParseConstant[["ParseConstant"]]
click GqlPlus_Parsing_ParseConstant href "#GqlPlus_Parsing_ParseConstant" "- GqlPlus_Parsing_ParseConstant"

          GqlPlus_Parsing_ParseConstant -->|"fieldKey"| GqlPlus_Parsing_Parser_IGqlpFieldKey__D
          GqlPlus_Parsing_Parser_IGqlpFieldKey__D("Parser(IGqlpFieldKey)+D")

          GqlPlus_Parsing_ParseConstant -->|"keyValueParser"| GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D
          GqlPlus_Parsing_Parser_KeyValue_IGqlpConstant___D("Parser(KeyValue(IGqlpConstant))+D")

          GqlPlus_Parsing_ParseConstant -->|"listParser"| GqlPlus_Parsing_Parser_IGqlpConstant__DA
          GqlPlus_Parsing_Parser_IGqlpConstant__DA("Parser(IGqlpConstant)+DA")

          GqlPlus_Parsing_ParseConstant -->|"objectParser"| GqlPlus_Parsing_Parser_IGqlpFields_IGqlpConstant___D
          GqlPlus_Parsing_Parser_IGqlpFields_IGqlpConstant___D("Parser(IGqlpFields(IGqlpConstant))+D")

          GqlPlus_Parsing_Parser_NullOption__D("Parser(NullOption)+D")

          GqlPlus_Parsing_Parser_NullOption__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_NullOption__D -->|"=>"| GqlPlus_Parsing_Schema_ParseNullOption
          GqlPlus_Parsing_Schema_ParseNullOption("ParseNullOption")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Schema_ParseNullOption[["ParseNullOption"]]
click GqlPlus_Parsing_Schema_ParseNullOption href "#GqlPlus_Parsing_Schema_ParseNullOption" "- GqlPlus_Parsing_Schema_ParseNullOption"

        

Parser(String)+D

          flowchart TD
          GqlPlus_Parsing_Parser_String__D("Parser(String)+D")

          GqlPlus_Parsing_Parser_String__D -->|"->"| GqlPlus_Parsing_Parser
          GqlPlus_Parsing_Parser("Parser")

          GqlPlus_Parsing_Parser_String__D -->|"=>"| GqlPlus_Parsing_Operation_ParseVarType
          GqlPlus_Parsing_Operation_ParseVarType("ParseVarType")

          GqlPlus_Parsing_Parser[["Parser"]]
click GqlPlus_Parsing_Parser href "#GqlPlus_Parsing_Parser" "- GqlPlus_Parsing_Parser"

          GqlPlus_Parsing_Operation_ParseVarType[["ParseVarType"]]
click GqlPlus_Parsing_Operation_ParseVarType href "#GqlPlus_Parsing_Operation_ParseVarType" "- GqlPlus_Parsing_Operation_ParseVarType"