flowchart TD
AllModellers("AllModellers")
AllModellers -->|"TypesModellers"| ITypesModeller
ITypesModeller("ITypesModeller")
ITypesModeller -->|"="| TypesModeller
TypesModeller("TypesModeller")
TypesModeller -->|"_typeModellers"| ITypeModeller
ITypeModeller("ITypeModeller")
ITypeModeller -->|"="| SpecialTypeModeller
CategoryModeller("CategoryModeller")
CategoryModeller -->|"_modifier"| ModifierModel
ConstantModeller("ConstantModeller")
ConstantModeller -->|"_value"| SimpleModel
flowchart TD
DirectiveModeller("DirectiveModeller")
DirectiveModeller -->|"_parameter"| InputParamModel
IModeller(IAstAlternate,AlternateModel)
flowchart TD
IModeller_IAstAlternate_AlternateModel_("IModeller(IAstAlternate,AlternateModel)")
IModeller_IAstAlternate_AlternateModel_ -->|"="| AlternateModeller
AlternateModeller("AlternateModeller")
AlternateModeller -->|"_collection"| CollectionModel
AlternateModeller -->|"_objBase"| ObjBaseModel
IModeller_IAstArg_OpArgumentModel_("IModeller(IAstArg,OpArgumentModel)")
IModeller_IAstArg_OpArgumentModel_ -->|"="| OpArgumentModeller
IModeller_IAstConstant_ConstantModel_("IModeller(IAstConstant,ConstantModel)")
IModeller_IAstConstant_ConstantModel_ -->|"="| ConstantModeller
ConstantModeller("ConstantModeller")
ConstantModeller -->|"_value"| SimpleModel
IModeller_IAstDirective_OpDirectiveModel_("IModeller(IAstDirective,OpDirectiveModel)")
IModeller_IAstDirective_OpDirectiveModel_ -->|"="| OpDirectiveModeller
IModeller(IAstDomain(IAstDomainLabel),BaseDomainModel(DomainLabelModel))
flowchart TD
IModeller_IAstDomain_IAstDomainLabel__BaseDomainModel_DomainLabelModel__("IModeller(IAstDomain(IAstDomainLabel),BaseDomainModel(DomainLabelModel))")
IModeller_IAstDomain_IAstDomainLabel__BaseDomainModel_DomainLabelModel__ -->|"="| DomainEnumModeller
IModeller_IAstDomain_IAstDomainRange__BaseDomainModel_DomainRangeModel__("IModeller(IAstDomain(IAstDomainRange),BaseDomainModel(DomainRangeModel))")
IModeller_IAstDomain_IAstDomainRange__BaseDomainModel_DomainRangeModel__ -->|"="| DomainNumberModeller
IModeller_IAstDomain_IAstDomainRegex__BaseDomainModel_DomainRegexModel__("IModeller(IAstDomain(IAstDomainRegex),BaseDomainModel(DomainRegexModel))")
IModeller_IAstDomain_IAstDomainRegex__BaseDomainModel_DomainRegexModel__ -->|"="| DomainStringModeller
IModeller_IAstDomain_IAstDomainTrueFalse__BaseDomainModel_DomainTrueFalseModel__("IModeller(IAstDomain(IAstDomainTrueFalse),BaseDomainModel(DomainTrueFalseModel))")
IModeller_IAstDomain_IAstDomainTrueFalse__BaseDomainModel_DomainTrueFalseModel__ -->|"="| DomainBooleanModeller
IModeller_IAstDualField_DualFieldModel_("IModeller(IAstDualField,DualFieldModel)")
IModeller_IAstDualField_DualFieldModel_ -->|"="| DualFieldModeller
DualFieldModeller("DualFieldModeller")
DualFieldModeller -->|"_modifier"| IModifierModeller
DualFieldModeller -->|"_objBase"| ObjBaseModel
IModifierModeller("IModifierModeller")
IModifierModeller -->|"="| ModifierModeller
ModifierModeller("ModifierModeller")
ModifierModeller -->|"Existing"| IModifierModeller
IModeller(IAstEnum,TypeEnumModel)
flowchart TD
IModeller_IAstEnum_TypeEnumModel_("IModeller(IAstEnum,TypeEnumModel)")
IModeller_IAstEnum_TypeEnumModel_ -->|"="| EnumModeller
IModeller_IAstEnumValue_EnumValueModel_("IModeller(IAstEnumValue,EnumValueModel)")
IModeller_IAstEnumValue_EnumValueModel_ -->|"="| EnumValueModeller
IModeller_IAstFieldKey_SimpleModel_("IModeller(IAstFieldKey,SimpleModel)")
IModeller_IAstFieldKey_SimpleModel_ -->|"="| SimpleModeller
SimpleModeller("SimpleModeller")
SimpleModeller -->|"_enumValue"| EnumValueModel
IModeller_IAstFragment_OpFragmentModel_("IModeller(IAstFragment,OpFragmentModel)")
IModeller_IAstFragment_OpFragmentModel_ -->|"="| OpFragmentModeller
IModeller_IAstInputField_InputFieldModel_("IModeller(IAstInputField,InputFieldModel)")
IModeller_IAstInputField_InputFieldModel_ -->|"="| InputFieldModeller
InputFieldModeller("InputFieldModeller")
InputFieldModeller -->|"_constant"| ConstantModel
InputFieldModeller -->|"_modifier"| IModifierModeller
InputFieldModeller -->|"_objBase"| ObjBaseModel
IModifierModeller("IModifierModeller")
IModifierModeller -->|"="| ModifierModeller
flowchart TD
IModeller_IAstInputParam_InputParamModel_("IModeller(IAstInputParam,InputParamModel)")
IModeller_IAstInputParam_InputParamModel_ -->|"="| InputParamModeller
InputParamModeller("InputParamModeller")
InputParamModeller -->|"_constant"| ConstantModel
InputParamModeller -->|"_modifier"| IModifierModeller
IModifierModeller("IModifierModeller")
IModifierModeller -->|"="| ModifierModeller
IModeller_IAstModifier_CollectionModel_("IModeller(IAstModifier,CollectionModel)")
IModeller_IAstModifier_CollectionModel_ -->|"="| ModifierModeller
ModifierModeller("ModifierModeller")
ModifierModeller -->|"Existing"| IModifierModeller
IModeller_IAstModifier_ModifierModel_("IModeller(IAstModifier,ModifierModel)")
IModeller_IAstModifier_ModifierModel_ -->|"="| ModifierModeller
ModifierModeller("ModifierModeller")
ModifierModeller -->|"Existing"| IModifierModeller
IModeller(IAstObjBase,ObjBaseModel)
flowchart TD
IModeller_IAstObjBase_ObjBaseModel_("IModeller(IAstObjBase,ObjBaseModel)")
IModeller_IAstObjBase_ObjBaseModel_ -->|"="| ObjBaseModeller
ObjBaseModeller("ObjBaseModeller")
ObjBaseModeller -->|"_objArg"| TypeArgModel
IModeller_IAstObject_IAstDualField__TypeDualModel_("IModeller(IAstObject(IAstDualField),TypeDualModel)")
IModeller_IAstObject_IAstDualField__TypeDualModel_ -->|"="| DualModeller
DualModeller("DualModeller")
DualModeller -->|"_alternate"| AlternateModel
DualModeller -->|"_base"| ObjBaseModel
DualModeller -->|"_field"| DualFieldModel
DualModeller -->|"_typeParams"| TypeParamModel
IModeller_IAstObject_IAstInputField__TypeInputModel_("IModeller(IAstObject(IAstInputField),TypeInputModel)")
IModeller_IAstObject_IAstInputField__TypeInputModel_ -->|"="| InputModeller
InputModeller("InputModeller")
InputModeller -->|"_alternate"| AlternateModel
InputModeller -->|"_base"| ObjBaseModel
InputModeller -->|"_field"| InputFieldModel
InputModeller -->|"_typeParams"| TypeParamModel
IModeller(IAstObject(IAstOutputField),TypeOutputModel)
flowchart TD
IModeller_IAstObject_IAstOutputField__TypeOutputModel_("IModeller(IAstObject(IAstOutputField),TypeOutputModel)")
IModeller_IAstObject_IAstOutputField__TypeOutputModel_ -->|"="| OutputModeller
OutputModeller("OutputModeller")
OutputModeller -->|"_alternate"| AlternateModel
OutputModeller -->|"_base"| ObjBaseModel
OutputModeller -->|"_field"| OutputFieldModel
OutputModeller -->|"_typeParams"| TypeParamModel
IModeller(IAstOutputField,OutputFieldModel)
flowchart TD
IModeller_IAstOutputField_OutputFieldModel_("IModeller(IAstOutputField,OutputFieldModel)")
IModeller_IAstOutputField_OutputFieldModel_ -->|"="| OutputFieldModeller
OutputFieldModeller("OutputFieldModeller")
OutputFieldModeller -->|"_modifier"| IModifierModeller
OutputFieldModeller -->|"_objBase"| ObjBaseModel
OutputFieldModeller -->|"_parameter"| InputParamModel
IModifierModeller("IModifierModeller")
IModifierModeller -->|"="| ModifierModeller
IModeller_IAstSchema_SchemaModel_("IModeller(IAstSchema,SchemaModel)")
IModeller_IAstSchema_SchemaModel_ -->|"="| SchemaModeller
SchemaModeller("SchemaModeller")
SchemaModeller -->|"_category"| CategoryModel
SchemaModeller -->|"_directive"| DirectiveModel
SchemaModeller -->|"_operation"| OperationModel
SchemaModeller -->|"_setting"| SettingModel
SchemaModeller -->|"_types"| ITypesModeller
ITypesModeller("ITypesModeller")
ITypesModeller -->|"="| TypesModeller
IModeller(IAstSchemaCategory,CategoryModel)
flowchart TD
IModeller_IAstSchemaCategory_CategoryModel_("IModeller(IAstSchemaCategory,CategoryModel)")
IModeller_IAstSchemaCategory_CategoryModel_ -->|"="| CategoryModeller
CategoryModeller("CategoryModeller")
CategoryModeller -->|"_modifier"| ModifierModel
IModeller_IAstSchemaDirective_DirectiveModel_("IModeller(IAstSchemaDirective,DirectiveModel)")
IModeller_IAstSchemaDirective_DirectiveModel_ -->|"="| DirectiveModeller
DirectiveModeller("DirectiveModeller")
DirectiveModeller -->|"_parameter"| InputParamModel
IModeller_IAstSchemaOperation_OperationModel_("IModeller(IAstSchemaOperation,OperationModel)")
IModeller_IAstSchemaOperation_OperationModel_ -->|"="| OperationModeller
OperationModeller("OperationModeller")
OperationModeller -->|"_directive"| OpDirectiveModel
OperationModeller -->|"_fragment"| OpFragmentModel
OperationModeller -->|"_modifier"| ModifierModel
OperationModeller -->|"_result"| OpResultModel
OperationModeller -->|"_selection"| OpSelectionModel
OperationModeller -->|"_variable"| OpVariableModel
IModeller(IAstSchemaSetting,SettingModel)
flowchart TD
IModeller_IAstSchemaSetting_SettingModel_("IModeller(IAstSchemaSetting,SettingModel)")
IModeller_IAstSchemaSetting_SettingModel_ -->|"="| SettingModeller
SettingModeller("SettingModeller")
SettingModeller -->|"_constant"| ConstantModel
IModeller_IAstSelection_OpSelectionModel_("IModeller(IAstSelection,OpSelectionModel)")
IModeller_IAstSelection_OpSelectionModel_ -->|"="| OpSelectionModeller
OpSelectionModeller("OpSelectionModeller")
OpSelectionModeller -->|"_argument"| OpArgumentModel
OpSelectionModeller -->|"_directive"| OpDirectiveModel
OpSelectionModeller -->|"_modifier"| ModifierModel
IModeller_IAstType_BaseTypeModel_("IModeller(IAstType,BaseTypeModel)")
IModeller_IAstType_BaseTypeModel_ -->|"="| TypesModeller
TypesModeller("TypesModeller")
TypesModeller -->|"_typeModellers"| ITypeModeller
IModeller(IAstTypeArg,TypeArgModel)
flowchart TD
IModeller_IAstTypeArg_TypeArgModel_("IModeller(IAstTypeArg,TypeArgModel)")
IModeller_IAstTypeArg_TypeArgModel_ -->|"="| TypeArgModeller
TypeArgModeller("TypeArgModeller")
TypeArgModeller -->|"_enumValue"| EnumValueModel
IModeller_IAstTypeParam_TypeParamModel_("IModeller(IAstTypeParam,TypeParamModel)")
IModeller_IAstTypeParam_TypeParamModel_ -->|"="| TypeParamModeller
IModeller_IAstTypeRef_OpResultModel_("IModeller(IAstTypeRef,OpResultModel)")
IModeller_IAstTypeRef_OpResultModel_ -->|"="| OpResultModeller
IModeller_IAstTypeSpecial_SpecialTypeModel_("IModeller(IAstTypeSpecial,SpecialTypeModel)")
IModeller_IAstTypeSpecial_SpecialTypeModel_ -->|"="| SpecialTypeModeller
IModeller_IAstUnion_TypeUnionModel_("IModeller(IAstUnion,TypeUnionModel)")
IModeller_IAstUnion_TypeUnionModel_ -->|"="| UnionModeller
IModeller(IAstVariable,OpVariableModel)
flowchart TD
IModeller_IAstVariable_OpVariableModel_("IModeller(IAstVariable,OpVariableModel)")
IModeller_IAstVariable_OpVariableModel_ -->|"="| OpVariableModeller
ModellerRepositoryBuilder("ModellerRepositoryBuilder")
ModellerRepositoryBuilder -->|"TypeModellerFor"| SpecialTypeModel