models

package
v0.0.0-...-28c371a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 28, 2025 License: MIT Imports: 24 Imported by: 0

Documentation

Overview

Default generated models package docs (at least one file is necessary in a models package)

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

Index

Constants

View Source
const IdentifiersDecls = `
	{{Identifier}} := (&models.{{GeneratedStructName}}{}).Stage(stage)`
View Source
const ModelsFileTemplate = `// generated code - do not edit
package models

import "encoding/xml"

// to avoid compilation error if no xml element is generated
var _ xml.Attr` +
	`

// insertion point for enums declaration{{` + string(rune(Level0AllGongenumsCode)) + `}}` +
	`

	// insertion point for gongstructs declarations{{` + string(rune(Level0AllGongstructsCode)) + `}}`
View Source
const NumberInitStatement = `
	{{Identifier}}.{{GeneratedFieldName}} = {{GeneratedFieldNameValue}}`
View Source
const PointerFieldInitStatement = `
	{{Identifier}}.{{GeneratedFieldName}} = {{GeneratedFieldNameValue}}`
View Source
const SliceOfPointersFieldInitStatement = `
	{{Identifier}}.{{GeneratedFieldName}} = append({{Identifier}}.{{GeneratedFieldName}}, {{GeneratedFieldNameValue}})`
View Source
const StringEnumInitStatement = `
	{{Identifier}}.{{GeneratedFieldName}} = {{GeneratedFieldNameValue}}`
View Source
const StringInitStatement = `
	{{Identifier}}.{{GeneratedFieldName}} = ` + "`" + `{{GeneratedFieldNameValue}}` + "`"
View Source
const TimeInitStatement = `` /* 129-byte string literal not displayed */

Variables

View Source
var Depth int
View Source
var Level0Code map[Level0]string = map[Level0]string{
	Level0AllGongstructsCode: ``,
}
View Source
var Level1Code map[Level1]string = map[Level1]string{
	Level1NamedStructCode: `

// {{` + string(rune(Level2Structname)) +
		`}} Named source {{` + string(rune(Level2Source)) +
		`}}` + `{{` + string(rune(Level2Comment)) + `}}` +
		`
type {{` + string(rune(Level2Structname)) + `}} struct {
	Name string ` + "`" + "xml:\"-\"" + "`" + `

	// insertion point for fields{{` + string(rune(Level2Fields)) + `}}
}`,
	Level1UnNamedStructCode: `

// {{` + string(rune(Level2Structname)) +
		`}} UnNamed source {{` + string(rune(Level2Source)) +
		`}}
type {{` + string(rune(Level2Structname)) + `}} struct {

	// insertion point for fields{{` + string(rune(Level2Fields)) + `}}
}`,

	Level1NamedEnumCode: `` +

		`

// {{` + string(rune(Level2EnumComment)) + `}}` +
		`
type {{` + string(rune(Level2Enumname)) + `}} string

const ({{` + string(rune(Level2EnumValues)) + `}}
)`,
}
View Source
var Order = 1

Functions

func AfterCreateFromFront

func AfterCreateFromFront[Type Gongstruct](stage *StageStruct, instance *Type)

AfterCreateFromFront is called after a create from front

func AfterDeleteFromFront

func AfterDeleteFromFront[Type Gongstruct](stage *StageStruct, staged, front *Type)

AfterDeleteFromFront is called after a delete from front

func AfterReadFromFront

func AfterReadFromFront[Type Gongstruct](stage *StageStruct, instance *Type)

AfterReadFromFront is called after a Read from front

func AfterUpdateFromFront

func AfterUpdateFromFront[Type Gongstruct](stage *StageStruct, old, new *Type)

AfterUpdateFromFront is called after a update from front

func CompareGongstructByName

func CompareGongstructByName[T PointerToGongstruct](a, b T) int

func CopyBranch

func CopyBranch[Type Gongstruct](from *Type) (to *Type)

CopyBranch stages instance and apply CopyBranch on all gongstruct instances that are referenced by pointers or slices of pointers of the instance

the algorithm stops along the course of graph if a vertex is already staged

func Generate

func Generate(stage *StageStruct, outputFilePath string)

Generate process the xsd

- all Named Complex Type => Gongstruct - all Elements with inlined ComplexType => Gongstruct

func GetAssociationName

func GetAssociationName[Type Gongstruct]() *Type

GetAssociationName is a generic function that returns an instance of Type where each association is filled with an instance whose name is the name of the association

This function can be handy for generating navigation function that are refactorable

func GetFields

func GetFields[Type Gongstruct]() (res []string)

GetFields return the array of the fields

func GetFieldsFromPointer

func GetFieldsFromPointer[Type PointerToGongstruct]() (res []string)

GetFieldsFromPointer return the array of the fields

func GetGongstrucsSorted

func GetGongstrucsSorted[T PointerToGongstruct](stage *StageStruct) (sortedSlice []T)

func GetGongstructInstancesMap

func GetGongstructInstancesMap[Type Gongstruct](stage *StageStruct) *map[string]*Type

GetGongstructInstancesMap returns the map of staged GongstructType instances it is usefull because it allows refactoring of gong struct identifier

func GetGongstructInstancesSet

func GetGongstructInstancesSet[Type Gongstruct](stage *StageStruct) *map[*Type]any

GetGongstructInstancesSet returns the set staged GongstructType instances it is usefull because it allows refactoring of gongstruct identifier

func GetGongstructInstancesSetFromPointerType

func GetGongstructInstancesSetFromPointerType[Type PointerToGongstruct](stage *StageStruct) *map[Type]any

GetGongstructInstancesSetFromPointerType returns the set staged GongstructType instances it is usefull because it allows refactoring of gongstruct identifier

func GetGongstructName

func GetGongstructName[Type Gongstruct]() (res string)

GetGongstructName returns the name of the Gongstruct this can be usefull if one want program robust to refactoring

func GetPointerReverseMap

func GetPointerReverseMap[Start, End Gongstruct](fieldname string, stage *StageStruct) map[*End][]*Start

GetPointerReverseMap allows backtrack navigation of any Start.Fieldname associations (0..1) that is a pointer from one staged Gongstruct (type Start) instances to another (type End)

The function provides a map with keys as instances of End and values to arrays of *Start the map is construed by iterating over all Start instances and populationg keys with End instances and values with slice of Start instances

func GetPointerToGongstructName

func GetPointerToGongstructName[Type PointerToGongstruct]() (res string)

GetPointerToGongstructName returns the name of the Gongstruct this can be usefull if one want program robust to refactoring

func GetSliceOfPointersReverseMap

func GetSliceOfPointersReverseMap[Start, End Gongstruct](fieldname string, stage *StageStruct) map[*End]*Start

GetSliceOfPointersReverseMap allows backtrack navigation of any Start.Fieldname associations (0..N) between one staged Gongstruct instances and many others

The function provides a map with keys as instances of End and values to *Start instances the map is construed by iterating over all Start instances and populating keys with End instances and values with the Start instances

func GongGetMap

func GongGetMap[Type GongstructMapString](stage *StageStruct) *Type

GongGetMap returns the map of staged GongstructType instances it is usefull because it allows refactoring of gong struct identifier

func GongGetSet

func GongGetSet[Type GongstructSet](stage *StageStruct) *Type

GongGetSet returns the set staged GongstructType instances it is usefull because it allows refactoring of gong struct identifier

func IntToLetters

func IntToLetters(number int32) (letters string)

func IsStaged

func IsStaged[Type Gongstruct](stage *StageStruct, instance *Type) (ok bool)

func IsStaticType

func IsStaticType(name string) bool

func Name

func Name(ref string) string

func NsPrefix

func NsPrefix(ref string) string

func ParseAstFile

func ParseAstFile(stage *StageStruct, pathToFile string) error

ParseAstFile Parse pathToFile and stages all instances declared in the file

func ParseAstFileFromAst

func ParseAstFileFromAst(stage *StageStruct, inFile *ast.File, fset *token.FileSet) error

ParseAstFile Parse pathToFile and stages all instances declared in the file

func PostProcessing

func PostProcessing(stage *StageStruct)

func PostProcessingAnalyzeXSDStructure

func PostProcessingAnalyzeXSDStructure(stage *StageStruct)

func PostProcessingComputeAnonymousity

func PostProcessingComputeAnonymousity(stage *StageStruct)

func PostProcessingNames

func PostProcessingNames(stage *StageStruct)

func PrefixLines

func PrefixLines(input string) string

PrefixLines prefixes each line of the input string with "// "

func Replace1

func Replace1(template, match1, replace1 string) string

func Replace10

func Replace10(template, match1, replace1, match2, replace2, match3, replace3,
	match4, replace4, match5, replace5, match6, replace6, match7, replace7, match8, replace8, match9, replace9,
	match10, replace10 string) string

func Replace2

func Replace2(template, match1, replace1, match2, replace2 string) string

func Replace3

func Replace3(template, match1, replace1, match2, replace2, match3, replace3 string) string

func Replace4

func Replace4(template, match1, replace1, match2, replace2, match3, replace3, match4, replace4 string) string

func Replace5

func Replace5(template, match1, replace1, match2, replace2, match3, replace3,
	match4, replace4, match5, replace5 string) string

func Replace6

func Replace6(template, match1, replace1, match2, replace2, match3, replace3,
	match4, replace4, match5, replace5, match6, replace6 string) string

func Replace7

func Replace7(template, match1, replace1, match2, replace2, match3, replace3,
	match4, replace4, match5, replace5, match6, replace6, match7, replace7 string) string

func Replace8

func Replace8(template, match1, replace1, match2, replace2, match3, replace3,
	match4, replace4, match5, replace5, match6, replace6, match7, replace7, match8, replace8 string) string

func Replace9

func Replace9(template, match1, replace1, match2, replace2, match3, replace3,
	match4, replace4, match5, replace5, match6, replace6, match7, replace7, match8, replace8, match9, replace9 string) string

func ReplaceOldDeclarationsInFile

func ReplaceOldDeclarationsInFile(pathToFile string) error

ReplaceOldDeclarationsInFile replaces specific text in a file at the given path.

func Serialize

func Serialize[Type Gongstruct](stage *StageStruct, tab Tabulator)

func SerializeExcelize

func SerializeExcelize[Type Gongstruct](stage *StageStruct, f *excelize.File)

func SerializeExcelizePointerToGongstruct

func SerializeExcelizePointerToGongstruct[Type PointerToGongstruct](stage *StageStruct, f *excelize.File)

func SerializeStage

func SerializeStage(stage *StageStruct, filename string)

func SetCallbackAfterCreateFromFront

func SetCallbackAfterCreateFromFront[Type Gongstruct](stage *StageStruct, callback OnAfterCreateInterface[Type])

func SetCallbackAfterDeleteFromFront

func SetCallbackAfterDeleteFromFront[Type Gongstruct](stage *StageStruct, callback OnAfterDeleteInterface[Type])

func SetCallbackAfterReadFromFront

func SetCallbackAfterReadFromFront[Type Gongstruct](stage *StageStruct, callback OnAfterReadInterface[Type])

func SetCallbackAfterUpdateFromFront

func SetCallbackAfterUpdateFromFront[Type Gongstruct](stage *StageStruct, callback OnAfterUpdateInterface[Type])

SetCallbackAfterUpdateFromFront is a function to set up callback that is robust to refactoring

func SetOrchestratorOnAfterUpdate

func SetOrchestratorOnAfterUpdate[Type Gongstruct](stage *StageStruct)

func SortGongstructSetByName

func SortGongstructSetByName[T PointerToGongstruct](set map[T]any) (sortedSlice []T)

func StageBranch

func StageBranch[Type Gongstruct](stage *StageStruct, instance *Type)

StageBranch stages instance and apply StageBranch on all gongstruct instances that are referenced by pointers or slices of pointers of the instance

the algorithm stops along the course of graph if a vertex is already staged

func StaticType

func StaticType(name string) staticType

func UnmarshallGongstructStaging

func UnmarshallGongstructStaging(stage *StageStruct, cmap *ast.CommentMap, assignStmt *ast.AssignStmt, astCoordinate_ string) (
	instance any,
	identifier string,
	gongstructName string,
	fieldName string)

UnmarshallGoStaging unmarshall a go assign statement

func UnstageBranch

func UnstageBranch[Type Gongstruct](stage *StageStruct, instance *Type)

UnstageBranch stages instance and apply UnstageBranch on all gongstruct instances that are referenced by pointers or slices of pointers of the insance

the algorithm stops along the course of graph if a vertex is already staged

Types

type All

type All struct {
	Name string
	Annotated

	ModelGroup
}

func CopyBranchAll

func CopyBranchAll(mapOrigCopy map[any]any, allFrom *All) (allTo *All)

insertion point for stage branch per struct

func (*All) Checkout

func (all *All) Checkout(stage *StageStruct) *All

Checkout all to the back repo (if it is already staged)

func (*All) Commit

func (all *All) Commit(stage *StageStruct) *All

commit all to the back repo (if it is already staged)

func (*All) CommitVoid

func (all *All) CommitVoid(stage *StageStruct)

func (*All) CopyBasicFields

func (from *All) CopyBasicFields(to *All)

func (*All) GetName

func (all *All) GetName() (res string)

for satisfaction of GongStruct interface

func (*All) Stage

func (all *All) Stage(stage *StageStruct) *All

insertion point for cumulative sub template with model space calls Stage puts all to the model stage

func (*All) Unstage

func (all *All) Unstage(stage *StageStruct) *All

Unstage removes all off the model stage

func (*All) UnstageVoid

func (all *All) UnstageVoid(stage *StageStruct)

UnstageVoid removes all off the model stage

type AllModelsStructCreateInterface

type AllModelsStructCreateInterface interface {
	CreateORMAll(All *All)
	CreateORMAnnotation(Annotation *Annotation)
	CreateORMAttribute(Attribute *Attribute)
	CreateORMAttributeGroup(AttributeGroup *AttributeGroup)
	CreateORMChoice(Choice *Choice)
	CreateORMComplexContent(ComplexContent *ComplexContent)
	CreateORMComplexType(ComplexType *ComplexType)
	CreateORMDocumentation(Documentation *Documentation)
	CreateORMElement(Element *Element)
	CreateORMEnumeration(Enumeration *Enumeration)
	CreateORMExtension(Extension *Extension)
	CreateORMGroup(Group *Group)
	CreateORMLength(Length *Length)
	CreateORMMaxInclusive(MaxInclusive *MaxInclusive)
	CreateORMMaxLength(MaxLength *MaxLength)
	CreateORMMinInclusive(MinInclusive *MinInclusive)
	CreateORMMinLength(MinLength *MinLength)
	CreateORMPattern(Pattern *Pattern)
	CreateORMRestriction(Restriction *Restriction)
	CreateORMSchema(Schema *Schema)
	CreateORMSequence(Sequence *Sequence)
	CreateORMSimpleContent(SimpleContent *SimpleContent)
	CreateORMSimpleType(SimpleType *SimpleType)
	CreateORMTotalDigit(TotalDigit *TotalDigit)
	CreateORMUnion(Union *Union)
	CreateORMWhiteSpace(WhiteSpace *WhiteSpace)
}

swagger:ignore

type AllModelsStructDeleteInterface

type AllModelsStructDeleteInterface interface {
	DeleteORMAll(All *All)
	DeleteORMAnnotation(Annotation *Annotation)
	DeleteORMAttribute(Attribute *Attribute)
	DeleteORMAttributeGroup(AttributeGroup *AttributeGroup)
	DeleteORMChoice(Choice *Choice)
	DeleteORMComplexContent(ComplexContent *ComplexContent)
	DeleteORMComplexType(ComplexType *ComplexType)
	DeleteORMDocumentation(Documentation *Documentation)
	DeleteORMElement(Element *Element)
	DeleteORMEnumeration(Enumeration *Enumeration)
	DeleteORMExtension(Extension *Extension)
	DeleteORMGroup(Group *Group)
	DeleteORMLength(Length *Length)
	DeleteORMMaxInclusive(MaxInclusive *MaxInclusive)
	DeleteORMMaxLength(MaxLength *MaxLength)
	DeleteORMMinInclusive(MinInclusive *MinInclusive)
	DeleteORMMinLength(MinLength *MinLength)
	DeleteORMPattern(Pattern *Pattern)
	DeleteORMRestriction(Restriction *Restriction)
	DeleteORMSchema(Schema *Schema)
	DeleteORMSequence(Sequence *Sequence)
	DeleteORMSimpleContent(SimpleContent *SimpleContent)
	DeleteORMSimpleType(SimpleType *SimpleType)
	DeleteORMTotalDigit(TotalDigit *TotalDigit)
	DeleteORMUnion(Union *Union)
	DeleteORMWhiteSpace(WhiteSpace *WhiteSpace)
}

type All_WOP

type All_WOP struct {
	// insertion point
	Name             string
	OuterElementName string
	Order            int
	Depth            int
	MinOccurs        string
	MaxOccurs        string
}

insertion point

type Annotated

type Annotated struct {
	Annotation *Annotation `xml:"annotation"`
}

type Annotation

type Annotation struct {
	Name           string
	Documentations []*Documentation `xml:"documentation"`
}

func CopyBranchAnnotation

func CopyBranchAnnotation(mapOrigCopy map[any]any, annotationFrom *Annotation) (annotationTo *Annotation)

func (*Annotation) Checkout

func (annotation *Annotation) Checkout(stage *StageStruct) *Annotation

Checkout annotation to the back repo (if it is already staged)

func (*Annotation) Commit

func (annotation *Annotation) Commit(stage *StageStruct) *Annotation

commit annotation to the back repo (if it is already staged)

func (*Annotation) CommitVoid

func (annotation *Annotation) CommitVoid(stage *StageStruct)

func (*Annotation) CopyBasicFields

func (from *Annotation) CopyBasicFields(to *Annotation)

func (*Annotation) GetName

func (annotation *Annotation) GetName() (res string)

for satisfaction of GongStruct interface

func (*Annotation) Stage

func (annotation *Annotation) Stage(stage *StageStruct) *Annotation

Stage puts annotation to the model stage

func (*Annotation) Unstage

func (annotation *Annotation) Unstage(stage *StageStruct) *Annotation

Unstage removes annotation off the model stage

func (*Annotation) UnstageVoid

func (annotation *Annotation) UnstageVoid(stage *StageStruct)

UnstageVoid removes annotation off the model stage

type Annotation_WOP

type Annotation_WOP struct {
	// insertion point
	Name string
}

type Attribute

type Attribute struct {
	Name string
	ElementWithNameAttribute
	ElementWithTypeAttribute
	Annotated

	WithGoIdentifier

	Default         string `xml:"default,attr"`
	Use             string `xml:"use,attr"`
	Form            string `xml:"form,attr"`
	Fixed           string `xml:"fixed,attr"`
	Ref             string `xml:"ref,attr"`
	TargetNamespace string `xml:"targetNamespace,attr"`
	SimpleType      string `xml:"simpleType,attr"`
	IDXSD           string `xml:"id,attr"`
}

func CopyBranchAttribute

func CopyBranchAttribute(mapOrigCopy map[any]any, attributeFrom *Attribute) (attributeTo *Attribute)

func (*Attribute) Checkout

func (attribute *Attribute) Checkout(stage *StageStruct) *Attribute

Checkout attribute to the back repo (if it is already staged)

func (*Attribute) Commit

func (attribute *Attribute) Commit(stage *StageStruct) *Attribute

commit attribute to the back repo (if it is already staged)

func (*Attribute) CommitVoid

func (attribute *Attribute) CommitVoid(stage *StageStruct)

func (*Attribute) CopyBasicFields

func (from *Attribute) CopyBasicFields(to *Attribute)

func (*Attribute) GetName

func (attribute *Attribute) GetName() (res string)

for satisfaction of GongStruct interface

func (*Attribute) Stage

func (attribute *Attribute) Stage(stage *StageStruct) *Attribute

Stage puts attribute to the model stage

func (*Attribute) Unstage

func (attribute *Attribute) Unstage(stage *StageStruct) *Attribute

Unstage removes attribute off the model stage

func (*Attribute) UnstageVoid

func (attribute *Attribute) UnstageVoid(stage *StageStruct)

UnstageVoid removes attribute off the model stage

type AttributeGroup

type AttributeGroup struct {
	Name string
	ElementWithNameAttribute
	Annotated
	WithGoIdentifier

	AttributeGroups []*AttributeGroup `xml:"attributeGroup"`

	Ref string `xml:"ref,attr"`

	Attributes []*Attribute `xml:"attribute"`

	ParticleAbstract
}

func CopyBranchAttributeGroup

func CopyBranchAttributeGroup(mapOrigCopy map[any]any, attributegroupFrom *AttributeGroup) (attributegroupTo *AttributeGroup)

func (*AttributeGroup) Checkout

func (attributegroup *AttributeGroup) Checkout(stage *StageStruct) *AttributeGroup

Checkout attributegroup to the back repo (if it is already staged)

func (*AttributeGroup) Commit

func (attributegroup *AttributeGroup) Commit(stage *StageStruct) *AttributeGroup

commit attributegroup to the back repo (if it is already staged)

func (*AttributeGroup) CommitVoid

func (attributegroup *AttributeGroup) CommitVoid(stage *StageStruct)

func (*AttributeGroup) CopyBasicFields

func (from *AttributeGroup) CopyBasicFields(to *AttributeGroup)

func (*AttributeGroup) GetName

func (attributegroup *AttributeGroup) GetName() (res string)

for satisfaction of GongStruct interface

func (*AttributeGroup) SetParentAndChildren

func (ag *AttributeGroup) SetParentAndChildren(parent Particle)

func (*AttributeGroup) Stage

func (attributegroup *AttributeGroup) Stage(stage *StageStruct) *AttributeGroup

Stage puts attributegroup to the model stage

func (*AttributeGroup) UnmarshalXML

func (e *AttributeGroup) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error

func (*AttributeGroup) Unstage

func (attributegroup *AttributeGroup) Unstage(stage *StageStruct) *AttributeGroup

Unstage removes attributegroup off the model stage

func (*AttributeGroup) UnstageVoid

func (attributegroup *AttributeGroup) UnstageVoid(stage *StageStruct)

UnstageVoid removes attributegroup off the model stage

type AttributeGroup_WOP

type AttributeGroup_WOP struct {
	// insertion point
	Name            string
	NameXSD         string
	HasNameConflict bool
	GoIdentifier    string
	Ref             string
	Order           int
	Depth           int
}

type Attribute_WOP

type Attribute_WOP struct {
	// insertion point
	Name            string
	NameXSD         string
	Type            string
	HasNameConflict bool
	GoIdentifier    string
	Default         string
	Use             string
	Form            string
	Fixed           string
	Ref             string
	TargetNamespace string
	SimpleType      string
	IDXSD           string
}

type BackRepoInterface

type BackRepoInterface interface {
	Commit(stage *StageStruct)
	Checkout(stage *StageStruct)
	Backup(stage *StageStruct, dirPath string)
	Restore(stage *StageStruct, dirPath string)
	BackupXL(stage *StageStruct, dirPath string)
	RestoreXL(stage *StageStruct, dirPath string)
	// insertion point for Commit and Checkout signatures
	CommitAll(all *All)
	CheckoutAll(all *All)
	CommitAnnotation(annotation *Annotation)
	CheckoutAnnotation(annotation *Annotation)
	CommitAttribute(attribute *Attribute)
	CheckoutAttribute(attribute *Attribute)
	CommitAttributeGroup(attributegroup *AttributeGroup)
	CheckoutAttributeGroup(attributegroup *AttributeGroup)
	CommitChoice(choice *Choice)
	CheckoutChoice(choice *Choice)
	CommitComplexContent(complexcontent *ComplexContent)
	CheckoutComplexContent(complexcontent *ComplexContent)
	CommitComplexType(complextype *ComplexType)
	CheckoutComplexType(complextype *ComplexType)
	CommitDocumentation(documentation *Documentation)
	CheckoutDocumentation(documentation *Documentation)
	CommitElement(element *Element)
	CheckoutElement(element *Element)
	CommitEnumeration(enumeration *Enumeration)
	CheckoutEnumeration(enumeration *Enumeration)
	CommitExtension(extension *Extension)
	CheckoutExtension(extension *Extension)
	CommitGroup(group *Group)
	CheckoutGroup(group *Group)
	CommitLength(length *Length)
	CheckoutLength(length *Length)
	CommitMaxInclusive(maxinclusive *MaxInclusive)
	CheckoutMaxInclusive(maxinclusive *MaxInclusive)
	CommitMaxLength(maxlength *MaxLength)
	CheckoutMaxLength(maxlength *MaxLength)
	CommitMinInclusive(mininclusive *MinInclusive)
	CheckoutMinInclusive(mininclusive *MinInclusive)
	CommitMinLength(minlength *MinLength)
	CheckoutMinLength(minlength *MinLength)
	CommitPattern(pattern *Pattern)
	CheckoutPattern(pattern *Pattern)
	CommitRestriction(restriction *Restriction)
	CheckoutRestriction(restriction *Restriction)
	CommitSchema(schema *Schema)
	CheckoutSchema(schema *Schema)
	CommitSequence(sequence *Sequence)
	CheckoutSequence(sequence *Sequence)
	CommitSimpleContent(simplecontent *SimpleContent)
	CheckoutSimpleContent(simplecontent *SimpleContent)
	CommitSimpleType(simpletype *SimpleType)
	CheckoutSimpleType(simpletype *SimpleType)
	CommitTotalDigit(totaldigit *TotalDigit)
	CheckoutTotalDigit(totaldigit *TotalDigit)
	CommitUnion(union *Union)
	CheckoutUnion(union *Union)
	CommitWhiteSpace(whitespace *WhiteSpace)
	CheckoutWhiteSpace(whitespace *WhiteSpace)
	GetLastCommitFromBackNb() uint
	GetLastPushFromFrontNb() uint
}

type Choice

type Choice struct {
	Name string
	Annotated

	ModelGroup

	IsDuplicatedInXSD bool

	OuterParticle Particle
}

func CopyBranchChoice

func CopyBranchChoice(mapOrigCopy map[any]any, choiceFrom *Choice) (choiceTo *Choice)

func (*Choice) Checkout

func (choice *Choice) Checkout(stage *StageStruct) *Choice

Checkout choice to the back repo (if it is already staged)

func (*Choice) Commit

func (choice *Choice) Commit(stage *StageStruct) *Choice

commit choice to the back repo (if it is already staged)

func (*Choice) CommitVoid

func (choice *Choice) CommitVoid(stage *StageStruct)

func (*Choice) CopyBasicFields

func (from *Choice) CopyBasicFields(to *Choice)

func (*Choice) GetName

func (choice *Choice) GetName() (res string)

for satisfaction of GongStruct interface

func (*Choice) Stage

func (choice *Choice) Stage(stage *StageStruct) *Choice

Stage puts choice to the model stage

func (*Choice) Unstage

func (choice *Choice) Unstage(stage *StageStruct) *Choice

Unstage removes choice off the model stage

func (*Choice) UnstageVoid

func (choice *Choice) UnstageVoid(stage *StageStruct)

UnstageVoid removes choice off the model stage

type Choice_WOP

type Choice_WOP struct {
	// insertion point
	Name              string
	OuterElementName  string
	Order             int
	Depth             int
	MinOccurs         string
	MaxOccurs         string
	IsDuplicatedInXSD bool
}

type ComplexContent

type ComplexContent struct {
	Name string
}

func CopyBranchComplexContent

func CopyBranchComplexContent(mapOrigCopy map[any]any, complexcontentFrom *ComplexContent) (complexcontentTo *ComplexContent)

func (*ComplexContent) Checkout

func (complexcontent *ComplexContent) Checkout(stage *StageStruct) *ComplexContent

Checkout complexcontent to the back repo (if it is already staged)

func (*ComplexContent) Commit

func (complexcontent *ComplexContent) Commit(stage *StageStruct) *ComplexContent

commit complexcontent to the back repo (if it is already staged)

func (*ComplexContent) CommitVoid

func (complexcontent *ComplexContent) CommitVoid(stage *StageStruct)

func (*ComplexContent) CopyBasicFields

func (from *ComplexContent) CopyBasicFields(to *ComplexContent)

func (*ComplexContent) GetName

func (complexcontent *ComplexContent) GetName() (res string)

for satisfaction of GongStruct interface

func (*ComplexContent) Stage

func (complexcontent *ComplexContent) Stage(stage *StageStruct) *ComplexContent

Stage puts complexcontent to the model stage

func (*ComplexContent) Unstage

func (complexcontent *ComplexContent) Unstage(stage *StageStruct) *ComplexContent

Unstage removes complexcontent off the model stage

func (*ComplexContent) UnstageVoid

func (complexcontent *ComplexContent) UnstageVoid(stage *StageStruct)

UnstageVoid removes complexcontent off the model stage

type ComplexContent_WOP

type ComplexContent_WOP struct {
	// insertion point
	Name string
}

type ComplexType

type ComplexType struct {
	Name string

	WithGoIdentifier

	// analysis
	IsAnonymous  bool
	OuterElement *Element // if anonymous

	Annotated
	ElementWithNameAttribute

	ModelGroup

	Extension *Extension `xml:"extension"`

	// xs:simpleContent element is used exclusively within an xs:complexType element
	// to define complex types that contain simple content along with
	// attributes or restrictions.
	SimpleContent *SimpleContent `xml:"simpleContent"`

	ComplexContent *ComplexContent `xml:"complexContent"`

	Attributes      []*Attribute      `xml:"attribute"`
	AttributeGroups []*AttributeGroup `xml:"attributeGroup"`

	IsDuplicatedInXSD bool

	OuterParticleOwnerAbstract
}

func CopyBranchComplexType

func CopyBranchComplexType(mapOrigCopy map[any]any, complextypeFrom *ComplexType) (complextypeTo *ComplexType)

func (*ComplexType) Checkout

func (complextype *ComplexType) Checkout(stage *StageStruct) *ComplexType

Checkout complextype to the back repo (if it is already staged)

func (*ComplexType) Commit

func (complextype *ComplexType) Commit(stage *StageStruct) *ComplexType

commit complextype to the back repo (if it is already staged)

func (*ComplexType) CommitVoid

func (complextype *ComplexType) CommitVoid(stage *StageStruct)

func (*ComplexType) CopyBasicFields

func (from *ComplexType) CopyBasicFields(to *ComplexType)

func (*ComplexType) GetFields

func (ct *ComplexType) GetFields(stage *StageStruct) (fields string)

func (*ComplexType) GetName

func (complextype *ComplexType) GetName() (res string)

for satisfaction of GongStruct interface

func (*ComplexType) Stage

func (complextype *ComplexType) Stage(stage *StageStruct) *ComplexType

Stage puts complextype to the model stage

func (*ComplexType) UnmarshalXML

func (e *ComplexType) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error

func (*ComplexType) Unstage

func (complextype *ComplexType) Unstage(stage *StageStruct) *ComplexType

Unstage removes complextype off the model stage

func (*ComplexType) UnstageVoid

func (complextype *ComplexType) UnstageVoid(stage *StageStruct)

UnstageVoid removes complextype off the model stage

type ComplexType_WOP

type ComplexType_WOP struct {
	// insertion point
	Name              string
	HasNameConflict   bool
	GoIdentifier      string
	IsAnonymous       bool
	NameXSD           string
	OuterElementName  string
	Order             int
	Depth             int
	MinOccurs         string
	MaxOccurs         string
	IsDuplicatedInXSD bool
}

type Documentation

type Documentation struct {
	Name   string
	Text   string `xml:",chardata"`
	Source string `xml:"source,attr"`
	Lang   string `xml:"lang,attr"`
}

func CopyBranchDocumentation

func CopyBranchDocumentation(mapOrigCopy map[any]any, documentationFrom *Documentation) (documentationTo *Documentation)

func (*Documentation) Checkout

func (documentation *Documentation) Checkout(stage *StageStruct) *Documentation

Checkout documentation to the back repo (if it is already staged)

func (*Documentation) Commit

func (documentation *Documentation) Commit(stage *StageStruct) *Documentation

commit documentation to the back repo (if it is already staged)

func (*Documentation) CommitVoid

func (documentation *Documentation) CommitVoid(stage *StageStruct)

func (*Documentation) CopyBasicFields

func (from *Documentation) CopyBasicFields(to *Documentation)

func (*Documentation) GetName

func (documentation *Documentation) GetName() (res string)

for satisfaction of GongStruct interface

func (*Documentation) Stage

func (documentation *Documentation) Stage(stage *StageStruct) *Documentation

Stage puts documentation to the model stage

func (*Documentation) Unstage

func (documentation *Documentation) Unstage(stage *StageStruct) *Documentation

Unstage removes documentation off the model stage

func (*Documentation) UnstageVoid

func (documentation *Documentation) UnstageVoid(stage *StageStruct)

UnstageVoid removes documentation off the model stage

type Documentation_WOP

type Documentation_WOP struct {
	// insertion point
	Name   string
	Text   string
	Source string
	Lang   string
}

type Element

type Element struct {
	Name string

	ParticleAbstract

	// analysis
	WithGoIdentifier

	Annotated
	ElementWithNameAttribute
	ElementWithTypeAttribute

	OccurrenceDefinitionAbstract

	Default  string `xml:"default,attr"`
	Fixed    string `xml:"fixed,attr"`
	Nillable string `xml:"nillable,attr"`
	Ref      string `xml:"ref,attr"`
	Abstract string `xml:"abstract,attr"`
	Form     string `xml:"form,attr"`
	Block    string `xml:"block,attr"`
	Final    string `xml:"final,attr"`

	SimpleType  *SimpleType  `xml:"simpleType"`
	ComplexType *ComplexType `xml:"complexType"`
	Groups      []*Group     `xml:"group"`

	OuterParticleOwnerAbstract

	IsDuplicatedInXSD bool
}

func CopyBranchElement

func CopyBranchElement(mapOrigCopy map[any]any, elementFrom *Element) (elementTo *Element)

func (*Element) Checkout

func (element *Element) Checkout(stage *StageStruct) *Element

Checkout element to the back repo (if it is already staged)

func (*Element) Commit

func (element *Element) Commit(stage *StageStruct) *Element

commit element to the back repo (if it is already staged)

func (*Element) CommitVoid

func (element *Element) CommitVoid(stage *StageStruct)

func (*Element) CopyBasicFields

func (from *Element) CopyBasicFields(to *Element)

func (*Element) GetName

func (element *Element) GetName() (res string)

for satisfaction of GongStruct interface

func (*Element) SetParentAndChildren

func (e *Element) SetParentAndChildren(parent Particle)

func (*Element) Stage

func (element *Element) Stage(stage *StageStruct) *Element

Stage puts element to the model stage

func (*Element) UnmarshalXML

func (e *Element) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error

func (*Element) Unstage

func (element *Element) Unstage(stage *StageStruct) *Element

Unstage removes element off the model stage

func (*Element) UnstageVoid

func (element *Element) UnstageVoid(stage *StageStruct)

UnstageVoid removes element off the model stage

type ElementWithNameAttribute

type ElementWithNameAttribute struct {
	NameXSD string `xml:"name,attr"`
}

type ElementWithTypeAttribute

type ElementWithTypeAttribute struct {
	Type string `xml:"type,attr"`
}

type ElementWithValueAttribute

type ElementWithValueAttribute struct {
	Value string `xml:"value,attr"`
}

type Element_WOP

type Element_WOP struct {
	// insertion point
	Name              string
	Order             int
	Depth             int
	HasNameConflict   bool
	GoIdentifier      string
	NameXSD           string
	Type              string
	MinOccurs         string
	MaxOccurs         string
	Default           string
	Fixed             string
	Nillable          string
	Ref               string
	Abstract          string
	Form              string
	Block             string
	Final             string
	IsDuplicatedInXSD bool
}

type Enumeration

type Enumeration struct {
	Name string
	Annotated
	ElementWithValueAttribute
}

func CopyBranchEnumeration

func CopyBranchEnumeration(mapOrigCopy map[any]any, enumerationFrom *Enumeration) (enumerationTo *Enumeration)

func (*Enumeration) Checkout

func (enumeration *Enumeration) Checkout(stage *StageStruct) *Enumeration

Checkout enumeration to the back repo (if it is already staged)

func (*Enumeration) Commit

func (enumeration *Enumeration) Commit(stage *StageStruct) *Enumeration

commit enumeration to the back repo (if it is already staged)

func (*Enumeration) CommitVoid

func (enumeration *Enumeration) CommitVoid(stage *StageStruct)

func (*Enumeration) CopyBasicFields

func (from *Enumeration) CopyBasicFields(to *Enumeration)

func (*Enumeration) GetName

func (enumeration *Enumeration) GetName() (res string)

for satisfaction of GongStruct interface

func (*Enumeration) Stage

func (enumeration *Enumeration) Stage(stage *StageStruct) *Enumeration

Stage puts enumeration to the model stage

func (*Enumeration) Unstage

func (enumeration *Enumeration) Unstage(stage *StageStruct) *Enumeration

Unstage removes enumeration off the model stage

func (*Enumeration) UnstageVoid

func (enumeration *Enumeration) UnstageVoid(stage *StageStruct)

UnstageVoid removes enumeration off the model stage

type Enumeration_WOP

type Enumeration_WOP struct {
	// insertion point
	Name  string
	Value string
}

type ExcelizeTabulator

type ExcelizeTabulator struct {
	// contains filtered or unexported fields
}

func (*ExcelizeTabulator) AddCell

func (tab *ExcelizeTabulator) AddCell(sheetName string, rowId, columnIndex int, value string)

func (*ExcelizeTabulator) AddRow

func (tab *ExcelizeTabulator) AddRow(sheetName string) (rowId int)

func (*ExcelizeTabulator) AddSheet

func (tab *ExcelizeTabulator) AddSheet(sheetName string)

func (*ExcelizeTabulator) SetExcelizeFile

func (tab *ExcelizeTabulator) SetExcelizeFile(f *excelize.File)

type Extension

type Extension struct {
	Name string
	ModelGroup

	Base string `xml:"base,attr"`
	Ref  string `xml:"ref,attr"`

	Attributes      []*Attribute      `xml:"attribute"`
	AttributeGroups []*AttributeGroup `xml:"attributeGroup"`
}

func CopyBranchExtension

func CopyBranchExtension(mapOrigCopy map[any]any, extensionFrom *Extension) (extensionTo *Extension)

func (*Extension) Checkout

func (extension *Extension) Checkout(stage *StageStruct) *Extension

Checkout extension to the back repo (if it is already staged)

func (*Extension) Commit

func (extension *Extension) Commit(stage *StageStruct) *Extension

commit extension to the back repo (if it is already staged)

func (*Extension) CommitVoid

func (extension *Extension) CommitVoid(stage *StageStruct)

func (*Extension) CopyBasicFields

func (from *Extension) CopyBasicFields(to *Extension)

func (*Extension) GetName

func (extension *Extension) GetName() (res string)

for satisfaction of GongStruct interface

func (*Extension) Stage

func (extension *Extension) Stage(stage *StageStruct) *Extension

Stage puts extension to the model stage

func (*Extension) Unstage

func (extension *Extension) Unstage(stage *StageStruct) *Extension

Unstage removes extension off the model stage

func (*Extension) UnstageVoid

func (extension *Extension) UnstageVoid(stage *StageStruct)

UnstageVoid removes extension off the model stage

type Extension_WOP

type Extension_WOP struct {
	// insertion point
	Name             string
	OuterElementName string
	Order            int
	Depth            int
	MinOccurs        string
	MaxOccurs        string
	Base             string
	Ref              string
}

type GONG__ExpressionType

type GONG__ExpressionType string

swagger:ignore

const (
	GONG__STRUCT_INSTANCE      GONG__ExpressionType = "STRUCT_INSTANCE"
	GONG__FIELD_OR_CONST_VALUE GONG__ExpressionType = "FIELD_OR_CONST_VALUE"
	GONG__FIELD_VALUE          GONG__ExpressionType = "FIELD_VALUE"
	GONG__ENUM_CAST_INT        GONG__ExpressionType = "ENUM_CAST_INT"
	GONG__ENUM_CAST_STRING     GONG__ExpressionType = "ENUM_CAST_STRING"
	GONG__IDENTIFIER_CONST     GONG__ExpressionType = "IDENTIFIER_CONST"
)

type GONG__Identifier

type GONG__Identifier struct {
	Ident string
	Type  GONG__ExpressionType
}

type GongFieldValue

type GongFieldValue struct {
	GongFieldValueType
	// contains filtered or unexported fields
}

func GetFieldStringValue

func GetFieldStringValue(instance any, fieldName string) (res GongFieldValue)

func GetFieldStringValueFromPointer

func GetFieldStringValueFromPointer(instance any, fieldName string) (res GongFieldValue)

func (*GongFieldValue) GetValueBool

func (gongValueField *GongFieldValue) GetValueBool() bool

func (*GongFieldValue) GetValueFloat

func (gongValueField *GongFieldValue) GetValueFloat() float64

func (*GongFieldValue) GetValueInt

func (gongValueField *GongFieldValue) GetValueInt() int

func (*GongFieldValue) GetValueString

func (gongValueField *GongFieldValue) GetValueString() string

type GongFieldValueType

type GongFieldValueType string
const (
	GongFieldValueTypeInt    GongFieldValueType = "GongFieldValueTypeInt"
	GongFieldValueTypeFloat  GongFieldValueType = "GongFieldValueTypeFloat"
	GongFieldValueTypeBool   GongFieldValueType = "GongFieldValueTypeBool"
	GongFieldValueTypeOthers GongFieldValueType = "GongFieldValueTypeOthers"
)

type GongStructInterface

type GongStructInterface interface {
	GetName() (res string)
}

GongStructInterface is the interface met by GongStructs It allows runtime reflexion of instances (without the hassle of the "reflect" package)

type Gongstruct

type Gongstruct interface {
}

Gongstruct is the type parameter for generated generic function that allows - access to staged instances - navigation between staged instances by going backward association links between gongstruct - full refactoring of Gongstruct identifiers / fields

type GongstructEnumIntField

type GongstructEnumIntField interface {
	int | Level0 | Level1 | Level2 | Level3
	Codes() []string
	CodeValues() []int
}

type GongstructEnumStringField

type GongstructEnumStringField interface {
	Codes() []string
	CodeValues() []string
	ToString() string
}

type GongstructMapString

type GongstructMapString interface {
	map[any]any
}

type GongstructSet

type GongstructSet interface {
	map[any]any
}

type GongtructBasicField

type GongtructBasicField interface {
	int | float64 | bool | string | time.Time | time.Duration
}

type Group

type Group struct {
	Name string
	Annotated
	ElementWithNameAttribute
	Ref string `xml:"ref,attr"`

	// analysis
	IsAnonymous  bool // it has been defined by the enclosing element
	OuterElement *Element
	WithGoIdentifier

	ModelGroup
}

func CopyBranchGroup

func CopyBranchGroup(mapOrigCopy map[any]any, groupFrom *Group) (groupTo *Group)

func (*Group) Checkout

func (group *Group) Checkout(stage *StageStruct) *Group

Checkout group to the back repo (if it is already staged)

func (*Group) Commit

func (group *Group) Commit(stage *StageStruct) *Group

commit group to the back repo (if it is already staged)

func (*Group) CommitVoid

func (group *Group) CommitVoid(stage *StageStruct)

func (*Group) CopyBasicFields

func (from *Group) CopyBasicFields(to *Group)

func (*Group) GetFields

func (group *Group) GetFields(stage *StageStruct) (fields string)

func (*Group) GetName

func (group *Group) GetName() (res string)

for satisfaction of GongStruct interface

func (*Group) Stage

func (group *Group) Stage(stage *StageStruct) *Group

Stage puts group to the model stage

func (*Group) UnmarshalXML

func (group *Group) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error

func (*Group) Unstage

func (group *Group) Unstage(stage *StageStruct) *Group

Unstage removes group off the model stage

func (*Group) UnstageVoid

func (group *Group) UnstageVoid(stage *StageStruct)

UnstageVoid removes group off the model stage

type Group_WOP

type Group_WOP struct {
	// insertion point
	Name             string
	NameXSD          string
	Ref              string
	IsAnonymous      bool
	HasNameConflict  bool
	GoIdentifier     string
	OuterElementName string
	Order            int
	Depth            int
	MinOccurs        string
	MaxOccurs        string
}

type Length

type Length struct {
	Name string
	Annotated
	ElementWithValueAttribute
}

func CopyBranchLength

func CopyBranchLength(mapOrigCopy map[any]any, lengthFrom *Length) (lengthTo *Length)

func (*Length) Checkout

func (length *Length) Checkout(stage *StageStruct) *Length

Checkout length to the back repo (if it is already staged)

func (*Length) Commit

func (length *Length) Commit(stage *StageStruct) *Length

commit length to the back repo (if it is already staged)

func (*Length) CommitVoid

func (length *Length) CommitVoid(stage *StageStruct)

func (*Length) CopyBasicFields

func (from *Length) CopyBasicFields(to *Length)

func (*Length) GetName

func (length *Length) GetName() (res string)

for satisfaction of GongStruct interface

func (*Length) Stage

func (length *Length) Stage(stage *StageStruct) *Length

Stage puts length to the model stage

func (*Length) Unstage

func (length *Length) Unstage(stage *StageStruct) *Length

Unstage removes length off the model stage

func (*Length) UnstageVoid

func (length *Length) UnstageVoid(stage *StageStruct)

UnstageVoid removes length off the model stage

type Length_WOP

type Length_WOP struct {
	// insertion point
	Name  string
	Value string
}

type Level0

type Level0 int
const (
	Level0AllGongstructsCode Level0 = iota
	Level0AllGongenumsCode
	Level0Nb
)

func (Level0) CodeValues

func (level0 Level0) CodeValues() (res []int)

func (Level0) Codes

func (level0 Level0) Codes() (res []string)

func (*Level0) FromCodeString

func (level0 *Level0) FromCodeString(input string) (err error)

func (*Level0) FromInt

func (level0 *Level0) FromInt(input int) (err error)

func (*Level0) ToCodeString

func (level0 *Level0) ToCodeString() (res string)

func (Level0) ToInt

func (level0 Level0) ToInt() (res int)

insertion point of enum utility functions Utility function for Level0 if enum values are string, it is stored with the value if enum values are int, they are stored with the code of the value

type Level1

type Level1 int
const (
	Level1NamedStructCode Level1 = iota
	Level1UnNamedStructCode
	Level1NamedEnumCode
	Level1Nb
)

func (Level1) CodeValues

func (level1 Level1) CodeValues() (res []int)

func (Level1) Codes

func (level1 Level1) Codes() (res []string)

func (*Level1) FromCodeString

func (level1 *Level1) FromCodeString(input string) (err error)

func (*Level1) FromInt

func (level1 *Level1) FromInt(input int) (err error)

func (*Level1) ToCodeString

func (level1 *Level1) ToCodeString() (res string)

func (Level1) ToInt

func (level1 Level1) ToInt() (res int)

Utility function for Level1 if enum values are string, it is stored with the value if enum values are int, they are stored with the code of the value

type Level2

type Level2 int
const (
	Level2Structname Level2 = iota
	Level2Comment
	Level2Source
	Level2Fields

	Level2Enumname
	Level2EnumComment
	Level2EnumValues

	Level2Nb
)

func (Level2) CodeValues

func (level2 Level2) CodeValues() (res []int)

func (Level2) Codes

func (level2 Level2) Codes() (res []string)

func (*Level2) FromCodeString

func (level2 *Level2) FromCodeString(input string) (err error)

func (*Level2) FromInt

func (level2 *Level2) FromInt(input int) (err error)

func (*Level2) ToCodeString

func (level2 *Level2) ToCodeString() (res string)

func (Level2) ToInt

func (level2 Level2) ToInt() (res int)

Utility function for Level2 if enum values are string, it is stored with the value if enum values are int, they are stored with the code of the value

type Level3

type Level3 int
const (
	Level3EnumValueIdentifier Level3 = iota
	Level3EnumValueString
	Level3Nb
)

func (Level3) CodeValues

func (level3 Level3) CodeValues() (res []int)

func (Level3) Codes

func (level3 Level3) Codes() (res []string)

func (*Level3) FromCodeString

func (level3 *Level3) FromCodeString(input string) (err error)

func (*Level3) FromInt

func (level3 *Level3) FromInt(input int) (err error)

func (*Level3) ToCodeString

func (level3 *Level3) ToCodeString() (res string)

func (Level3) ToInt

func (level3 Level3) ToInt() (res int)

Utility function for Level3 if enum values are string, it is stored with the value if enum values are int, they are stored with the code of the value

type MaxInclusive

type MaxInclusive struct {
	Name string
	Annotated
	ElementWithValueAttribute
}

func CopyBranchMaxInclusive

func CopyBranchMaxInclusive(mapOrigCopy map[any]any, maxinclusiveFrom *MaxInclusive) (maxinclusiveTo *MaxInclusive)

func (*MaxInclusive) Checkout

func (maxinclusive *MaxInclusive) Checkout(stage *StageStruct) *MaxInclusive

Checkout maxinclusive to the back repo (if it is already staged)

func (*MaxInclusive) Commit

func (maxinclusive *MaxInclusive) Commit(stage *StageStruct) *MaxInclusive

commit maxinclusive to the back repo (if it is already staged)

func (*MaxInclusive) CommitVoid

func (maxinclusive *MaxInclusive) CommitVoid(stage *StageStruct)

func (*MaxInclusive) CopyBasicFields

func (from *MaxInclusive) CopyBasicFields(to *MaxInclusive)

func (*MaxInclusive) GetName

func (maxinclusive *MaxInclusive) GetName() (res string)

for satisfaction of GongStruct interface

func (*MaxInclusive) Stage

func (maxinclusive *MaxInclusive) Stage(stage *StageStruct) *MaxInclusive

Stage puts maxinclusive to the model stage

func (*MaxInclusive) Unstage

func (maxinclusive *MaxInclusive) Unstage(stage *StageStruct) *MaxInclusive

Unstage removes maxinclusive off the model stage

func (*MaxInclusive) UnstageVoid

func (maxinclusive *MaxInclusive) UnstageVoid(stage *StageStruct)

UnstageVoid removes maxinclusive off the model stage

type MaxInclusive_WOP

type MaxInclusive_WOP struct {
	// insertion point
	Name  string
	Value string
}

type MaxLength

type MaxLength struct {
	Name string
	Annotated
	ElementWithValueAttribute
}

func CopyBranchMaxLength

func CopyBranchMaxLength(mapOrigCopy map[any]any, maxlengthFrom *MaxLength) (maxlengthTo *MaxLength)

func (*MaxLength) Checkout

func (maxlength *MaxLength) Checkout(stage *StageStruct) *MaxLength

Checkout maxlength to the back repo (if it is already staged)

func (*MaxLength) Commit

func (maxlength *MaxLength) Commit(stage *StageStruct) *MaxLength

commit maxlength to the back repo (if it is already staged)

func (*MaxLength) CommitVoid

func (maxlength *MaxLength) CommitVoid(stage *StageStruct)

func (*MaxLength) CopyBasicFields

func (from *MaxLength) CopyBasicFields(to *MaxLength)

func (*MaxLength) GetName

func (maxlength *MaxLength) GetName() (res string)

for satisfaction of GongStruct interface

func (*MaxLength) Stage

func (maxlength *MaxLength) Stage(stage *StageStruct) *MaxLength

Stage puts maxlength to the model stage

func (*MaxLength) Unstage

func (maxlength *MaxLength) Unstage(stage *StageStruct) *MaxLength

Unstage removes maxlength off the model stage

func (*MaxLength) UnstageVoid

func (maxlength *MaxLength) UnstageVoid(stage *StageStruct)

UnstageVoid removes maxlength off the model stage

type MaxLength_WOP

type MaxLength_WOP struct {
	// insertion point
	Name  string
	Value string
}

type MinInclusive

type MinInclusive struct {
	Name string
	Annotated
	ElementWithValueAttribute
}

func CopyBranchMinInclusive

func CopyBranchMinInclusive(mapOrigCopy map[any]any, mininclusiveFrom *MinInclusive) (mininclusiveTo *MinInclusive)

func (*MinInclusive) Checkout

func (mininclusive *MinInclusive) Checkout(stage *StageStruct) *MinInclusive

Checkout mininclusive to the back repo (if it is already staged)

func (*MinInclusive) Commit

func (mininclusive *MinInclusive) Commit(stage *StageStruct) *MinInclusive

commit mininclusive to the back repo (if it is already staged)

func (*MinInclusive) CommitVoid

func (mininclusive *MinInclusive) CommitVoid(stage *StageStruct)

func (*MinInclusive) CopyBasicFields

func (from *MinInclusive) CopyBasicFields(to *MinInclusive)

func (*MinInclusive) GetName

func (mininclusive *MinInclusive) GetName() (res string)

for satisfaction of GongStruct interface

func (*MinInclusive) Stage

func (mininclusive *MinInclusive) Stage(stage *StageStruct) *MinInclusive

Stage puts mininclusive to the model stage

func (*MinInclusive) Unstage

func (mininclusive *MinInclusive) Unstage(stage *StageStruct) *MinInclusive

Unstage removes mininclusive off the model stage

func (*MinInclusive) UnstageVoid

func (mininclusive *MinInclusive) UnstageVoid(stage *StageStruct)

UnstageVoid removes mininclusive off the model stage

type MinInclusive_WOP

type MinInclusive_WOP struct {
	// insertion point
	Name  string
	Value string
}

type MinLength

type MinLength struct {
	Name string
	Annotated
	ElementWithValueAttribute
}

func CopyBranchMinLength

func CopyBranchMinLength(mapOrigCopy map[any]any, minlengthFrom *MinLength) (minlengthTo *MinLength)

func (*MinLength) Checkout

func (minlength *MinLength) Checkout(stage *StageStruct) *MinLength

Checkout minlength to the back repo (if it is already staged)

func (*MinLength) Commit

func (minlength *MinLength) Commit(stage *StageStruct) *MinLength

commit minlength to the back repo (if it is already staged)

func (*MinLength) CommitVoid

func (minlength *MinLength) CommitVoid(stage *StageStruct)

func (*MinLength) CopyBasicFields

func (from *MinLength) CopyBasicFields(to *MinLength)

func (*MinLength) GetName

func (minlength *MinLength) GetName() (res string)

for satisfaction of GongStruct interface

func (*MinLength) Stage

func (minlength *MinLength) Stage(stage *StageStruct) *MinLength

Stage puts minlength to the model stage

func (*MinLength) Unstage

func (minlength *MinLength) Unstage(stage *StageStruct) *MinLength

Unstage removes minlength off the model stage

func (*MinLength) UnstageVoid

func (minlength *MinLength) UnstageVoid(stage *StageStruct)

UnstageVoid removes minlength off the model stage

type MinLength_WOP

type MinLength_WOP struct {
	// insertion point
	Name  string
	Value string
}

type ModelGroup

type ModelGroup struct {
	OuterElementName string

	Sequences []*Sequence `xml:"sequence"`
	Alls      []*All      `xml:"all"`
	Choices   []*Choice   `xml:"choice"`
	Groups    []*Group    `xml:"group"`

	Elements []*Element `xml:"element"`

	ParticleAbstract
	OccurrenceDefinitionAbstract
}

ModelGroup is a construct that allows for the specification of complex structures within an XML document. Model groups define how elements within an XML schema are composed and ordered. There are three main types of model groups in XSD

func (*ModelGroup) SetParentAndChildren

func (modelGroup *ModelGroup) SetParentAndChildren(parent Particle)

type OccurrenceDefinition

type OccurrenceDefinition interface {
	GetIsLocalyUnbounded() bool
}

type OccurrenceDefinitionAbstract

type OccurrenceDefinitionAbstract struct {
	MinOccurs string `xml:"minOccurs,attr"`
	MaxOccurs string `xml:"maxOccurs,attr"`
}

func (*OccurrenceDefinitionAbstract) GetIsLocalyUnbounded

func (occurrenceDefinitionAbstract *OccurrenceDefinitionAbstract) GetIsLocalyUnbounded() bool

type OnAfterCreateInterface

type OnAfterCreateInterface[Type Gongstruct] interface {
	OnAfterCreate(stage *StageStruct,
		instance *Type)
}

OnAfterCreateInterface callback when an instance is updated from the front

type OnAfterDeleteInterface

type OnAfterDeleteInterface[Type Gongstruct] interface {
	OnAfterDelete(stage *StageStruct,
		staged, front *Type)
}

OnAfterDeleteInterface callback when an instance is updated from the front

type OnAfterReadInterface

type OnAfterReadInterface[Type Gongstruct] interface {
	OnAfterRead(stage *StageStruct,
		instance *Type)
}

OnAfterReadInterface callback when an instance is updated from the front

type OnAfterUpdateInterface

type OnAfterUpdateInterface[Type Gongstruct] interface {
	OnAfterUpdate(stage *StageStruct, old, new *Type)
}

OnAfterUpdateInterface callback when an instance is updated from the front

type OnInitCommitInterface

type OnInitCommitInterface interface {
	BeforeCommit(stage *StageStruct)
}

type OuterParticleOwner

type OuterParticleOwner interface {
	GetOuterParticle() Particle
	SetOuterParticle(particle Particle)
}

type OuterParticleOwnerAbstract

type OuterParticleOwnerAbstract struct {
	// OuterParticle is the particle that reference the element
	// this is used in the factoring process of non normalized xsd
	OuterParticle Particle `xml:"-"`
}

func (*OuterParticleOwnerAbstract) GetOuterParticle

func (outerParticleOwnerAbstract *OuterParticleOwnerAbstract) GetOuterParticle() Particle

func (*OuterParticleOwnerAbstract) SetOuterParticle

func (outerParticleOwnerAbstract *OuterParticleOwnerAbstract) SetOuterParticle(particle Particle)

type Particle

type Particle interface {
	GetOrder() int
	GetParent() Particle
	SetParentAndChildren(Particle) //
}

Particle in XSD is a component that defines the structure of XML content. Particles can include individual elements, element groups (such as <xs:group>), and other complex structures like sequences (<xs:sequence>), choices (<xs:choice>), and all (<xs:all>). These particles dictate how XML elements are organized within a particular complex type.

In essence, a particle is a generic term that encompasses any component that can occur in the content model of an XML schema, whether it's an individual element or a grouping of elements.

type ParticleAbstract

type ParticleAbstract struct {
	// Order is the order at wich the particle was unmarshalled in the xsd
	// It is important to preserve the order output that is defined in the xsd
	Order int `xml:"-"`
	Depth int `xml:"-"`

	Parent   Particle
	Children []Particle
}

func (*ParticleAbstract) GetChildren

func (p *ParticleAbstract) GetChildren() Particle

func (*ParticleAbstract) GetOrder

func (p *ParticleAbstract) GetOrder() int

GetOrder implements Particle.

func (*ParticleAbstract) GetParent

func (p *ParticleAbstract) GetParent() Particle

GetOrder implements Particle.

type Pattern

type Pattern struct {
	Name string
	Annotated
	ElementWithValueAttribute
}

func CopyBranchPattern

func CopyBranchPattern(mapOrigCopy map[any]any, patternFrom *Pattern) (patternTo *Pattern)

func (*Pattern) Checkout

func (pattern *Pattern) Checkout(stage *StageStruct) *Pattern

Checkout pattern to the back repo (if it is already staged)

func (*Pattern) Commit

func (pattern *Pattern) Commit(stage *StageStruct) *Pattern

commit pattern to the back repo (if it is already staged)

func (*Pattern) CommitVoid

func (pattern *Pattern) CommitVoid(stage *StageStruct)

func (*Pattern) CopyBasicFields

func (from *Pattern) CopyBasicFields(to *Pattern)

func (*Pattern) GetName

func (pattern *Pattern) GetName() (res string)

for satisfaction of GongStruct interface

func (*Pattern) Stage

func (pattern *Pattern) Stage(stage *StageStruct) *Pattern

Stage puts pattern to the model stage

func (*Pattern) Unstage

func (pattern *Pattern) Unstage(stage *StageStruct) *Pattern

Unstage removes pattern off the model stage

func (*Pattern) UnstageVoid

func (pattern *Pattern) UnstageVoid(stage *StageStruct)

UnstageVoid removes pattern off the model stage

type Pattern_WOP

type Pattern_WOP struct {
	// insertion point
	Name  string
	Value string
}

type PointerToGongstruct

type PointerToGongstruct interface {
	GetName() string
	CommitVoid(*StageStruct)
	UnstageVoid(stage *StageStruct)
	comparable
}

Gongstruct is the type parameter for generated generic function that allows - access to staged instances - navigation between staged instances by going backward association links between gongstruct - full refactoring of Gongstruct identifiers / fields

type PointerToGongstructEnumIntField

type PointerToGongstructEnumIntField interface {
	*Level0 | *Level1 | *Level2 | *Level3
	FromCodeString(input string) (err error)
}

type PointerToGongstructEnumStringField

type PointerToGongstructEnumStringField interface {
	FromCodeString(input string) (err error)
}

type Restriction

type Restriction struct {
	Name string
	Annotated

	Base string `xml:"base,attr"`

	Enumerations []*Enumeration `xml:"enumeration"`
	MinInclusive *MinInclusive  `xml:"minInclusive"`
	MaxInclusive *MaxInclusive  `xml:"maxInclusive"`
	Pattern      *Pattern       `xml:"pattern"`
	WhiteSpace   *WhiteSpace    `xml:"whiteSpace"`
	MinLength    *MinLength     `xml:"minLength"`
	MaxLength    *MaxLength     `xml:"maxLength"`
	Length       *Length        `xml:"length"`
	TotalDigit   *TotalDigit    `xml:"totalDigits"`
}

func CopyBranchRestriction

func CopyBranchRestriction(mapOrigCopy map[any]any, restrictionFrom *Restriction) (restrictionTo *Restriction)

func (*Restriction) Checkout

func (restriction *Restriction) Checkout(stage *StageStruct) *Restriction

Checkout restriction to the back repo (if it is already staged)

func (*Restriction) Commit

func (restriction *Restriction) Commit(stage *StageStruct) *Restriction

commit restriction to the back repo (if it is already staged)

func (*Restriction) CommitVoid

func (restriction *Restriction) CommitVoid(stage *StageStruct)

func (*Restriction) CopyBasicFields

func (from *Restriction) CopyBasicFields(to *Restriction)

func (*Restriction) GetName

func (restriction *Restriction) GetName() (res string)

for satisfaction of GongStruct interface

func (*Restriction) Stage

func (restriction *Restriction) Stage(stage *StageStruct) *Restriction

Stage puts restriction to the model stage

func (*Restriction) Unstage

func (restriction *Restriction) Unstage(stage *StageStruct) *Restriction

Unstage removes restriction off the model stage

func (*Restriction) UnstageVoid

func (restriction *Restriction) UnstageVoid(stage *StageStruct)

UnstageVoid removes restriction off the model stage

type Restriction_WOP

type Restriction_WOP struct {
	// insertion point
	Name string
	Base string
}

type ReverseField

type ReverseField struct {
	GongstructName string
	Fieldname      string
}

func GetReverseFields

func GetReverseFields[Type Gongstruct]() (res []ReverseField)

type Schema

type Schema struct {
	Name string
	Xs   string `xml:"xs,attr"`

	// Xmlns represents namespaces like xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	// they are unmarshall via a custom unmarshaller
	Xmlns Xmlns `xml:"-"`

	Annotated
	Elements        []*Element        `xml:"element"`
	SimpleTypes     []*SimpleType     `xml:"simpleType"`
	ComplexTypes    []*ComplexType    `xml:"complexType"`
	AttributeGroups []*AttributeGroup `xml:"attributeGroup"`
	Groups          []*Group          `xml:"group"`

	ParticleAbstract
}
var SchemaSingloton Schema

func CopyBranchSchema

func CopyBranchSchema(mapOrigCopy map[any]any, schemaFrom *Schema) (schemaTo *Schema)

func (*Schema) Checkout

func (schema *Schema) Checkout(stage *StageStruct) *Schema

Checkout schema to the back repo (if it is already staged)

func (*Schema) Commit

func (schema *Schema) Commit(stage *StageStruct) *Schema

commit schema to the back repo (if it is already staged)

func (*Schema) CommitVoid

func (schema *Schema) CommitVoid(stage *StageStruct)

func (*Schema) CopyBasicFields

func (from *Schema) CopyBasicFields(to *Schema)

func (*Schema) FactorDuplicates

func (schema *Schema) FactorDuplicates()

FactorDuplicates performs a simplification of the xsd schema.

For instance, in REQIF schema, the same "ALTERNATIVE-ID" element and its inner anonymous complex type are repeated 24 times. in order to avoid duplicated go code, one need to factor the xsd before

This function is currently suited for REQIF schema and could be generalized later

func (*Schema) GetName

func (schema *Schema) GetName() (res string)

for satisfaction of GongStruct interface

func (*Schema) RenameTypeAnonymousComplexType

func (schema *Schema) RenameTypeAnonymousComplexType()

specific for RE-QIF

many anonymous complex types

A_TYPE_1 Named source within outer element "TYPE"
type A_TYPE_1 struct {

func (*Schema) SetParentAndChildren

func (schema *Schema) SetParentAndChildren(parent Particle)

func (*Schema) Stage

func (schema *Schema) Stage(stage *StageStruct) *Schema

Stage puts schema to the model stage

func (*Schema) UnmarshalXML

func (sch *Schema) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error

func (*Schema) Unstage

func (schema *Schema) Unstage(stage *StageStruct) *Schema

Unstage removes schema off the model stage

func (*Schema) UnstageVoid

func (schema *Schema) UnstageVoid(stage *StageStruct)

UnstageVoid removes schema off the model stage

type Schema_WOP

type Schema_WOP struct {
	// insertion point
	Name  string
	Xs    string
	Order int
	Depth int
}

type Sequence

type Sequence struct {
	Name string
	Annotated

	ModelGroup

	OuterParticleOwnerAbstract
}

func CopyBranchSequence

func CopyBranchSequence(mapOrigCopy map[any]any, sequenceFrom *Sequence) (sequenceTo *Sequence)

func (*Sequence) Checkout

func (sequence *Sequence) Checkout(stage *StageStruct) *Sequence

Checkout sequence to the back repo (if it is already staged)

func (*Sequence) Commit

func (sequence *Sequence) Commit(stage *StageStruct) *Sequence

commit sequence to the back repo (if it is already staged)

func (*Sequence) CommitVoid

func (sequence *Sequence) CommitVoid(stage *StageStruct)

func (*Sequence) CopyBasicFields

func (from *Sequence) CopyBasicFields(to *Sequence)

func (*Sequence) GetName

func (sequence *Sequence) GetName() (res string)

for satisfaction of GongStruct interface

func (*Sequence) Stage

func (sequence *Sequence) Stage(stage *StageStruct) *Sequence

Stage puts sequence to the model stage

func (*Sequence) Unstage

func (sequence *Sequence) Unstage(stage *StageStruct) *Sequence

Unstage removes sequence off the model stage

func (*Sequence) UnstageVoid

func (sequence *Sequence) UnstageVoid(stage *StageStruct)

UnstageVoid removes sequence off the model stage

type Sequence_WOP

type Sequence_WOP struct {
	// insertion point
	Name             string
	OuterElementName string
	Order            int
	Depth            int
	MinOccurs        string
	MaxOccurs        string
}

type SimpleContent

type SimpleContent struct {
	Name string

	Extension   *Extension   `xml:"extension"`
	Restriction *Restriction `xml:"restriction"`
}

func CopyBranchSimpleContent

func CopyBranchSimpleContent(mapOrigCopy map[any]any, simplecontentFrom *SimpleContent) (simplecontentTo *SimpleContent)

func (*SimpleContent) Checkout

func (simplecontent *SimpleContent) Checkout(stage *StageStruct) *SimpleContent

Checkout simplecontent to the back repo (if it is already staged)

func (*SimpleContent) Commit

func (simplecontent *SimpleContent) Commit(stage *StageStruct) *SimpleContent

commit simplecontent to the back repo (if it is already staged)

func (*SimpleContent) CommitVoid

func (simplecontent *SimpleContent) CommitVoid(stage *StageStruct)

func (*SimpleContent) CopyBasicFields

func (from *SimpleContent) CopyBasicFields(to *SimpleContent)

func (*SimpleContent) GetName

func (simplecontent *SimpleContent) GetName() (res string)

for satisfaction of GongStruct interface

func (*SimpleContent) Stage

func (simplecontent *SimpleContent) Stage(stage *StageStruct) *SimpleContent

Stage puts simplecontent to the model stage

func (*SimpleContent) Unstage

func (simplecontent *SimpleContent) Unstage(stage *StageStruct) *SimpleContent

Unstage removes simplecontent off the model stage

func (*SimpleContent) UnstageVoid

func (simplecontent *SimpleContent) UnstageVoid(stage *StageStruct)

UnstageVoid removes simplecontent off the model stage

type SimpleContent_WOP

type SimpleContent_WOP struct {
	// insertion point
	Name string
}

type SimpleType

type SimpleType struct {
	Name string
	Annotated
	ElementWithNameAttribute
	Restriction *Restriction `xml:"restriction"`
	Union       *Union       `xml:"union"`

	ParticleAbstract
}

func CopyBranchSimpleType

func CopyBranchSimpleType(mapOrigCopy map[any]any, simpletypeFrom *SimpleType) (simpletypeTo *SimpleType)

func (*SimpleType) Checkout

func (simpletype *SimpleType) Checkout(stage *StageStruct) *SimpleType

Checkout simpletype to the back repo (if it is already staged)

func (*SimpleType) Commit

func (simpletype *SimpleType) Commit(stage *StageStruct) *SimpleType

commit simpletype to the back repo (if it is already staged)

func (*SimpleType) CommitVoid

func (simpletype *SimpleType) CommitVoid(stage *StageStruct)

func (*SimpleType) CopyBasicFields

func (from *SimpleType) CopyBasicFields(to *SimpleType)

func (*SimpleType) GetName

func (simpletype *SimpleType) GetName() (res string)

for satisfaction of GongStruct interface

func (*SimpleType) IsStringEnumerate

func (simpleType *SimpleType) IsStringEnumerate() bool

func (*SimpleType) SetParentAndChildren

func (simpleType *SimpleType) SetParentAndChildren(parent Particle)

func (*SimpleType) Stage

func (simpletype *SimpleType) Stage(stage *StageStruct) *SimpleType

Stage puts simpletype to the model stage

func (*SimpleType) UnmarshalXML

func (e *SimpleType) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error

func (*SimpleType) Unstage

func (simpletype *SimpleType) Unstage(stage *StageStruct) *SimpleType

Unstage removes simpletype off the model stage

func (*SimpleType) UnstageVoid

func (simpletype *SimpleType) UnstageVoid(stage *StageStruct)

UnstageVoid removes simpletype off the model stage

type SimpleType_WOP

type SimpleType_WOP struct {
	// insertion point
	Name    string
	NameXSD string
	Order   int
	Depth   int
}

type StageStruct

type StageStruct struct {

	// insertion point for definition of arrays registering instances
	Alls           map[*All]any
	Alls_mapString map[string]*All

	// insertion point for slice of pointers maps
	All_Sequences_reverseMap map[*Sequence]*All

	All_Alls_reverseMap map[*All]*All

	All_Choices_reverseMap map[*Choice]*All

	All_Groups_reverseMap map[*Group]*All

	All_Elements_reverseMap map[*Element]*All

	OnAfterAllCreateCallback OnAfterCreateInterface[All]
	OnAfterAllUpdateCallback OnAfterUpdateInterface[All]
	OnAfterAllDeleteCallback OnAfterDeleteInterface[All]
	OnAfterAllReadCallback   OnAfterReadInterface[All]

	Annotations           map[*Annotation]any
	Annotations_mapString map[string]*Annotation

	// insertion point for slice of pointers maps
	Annotation_Documentations_reverseMap map[*Documentation]*Annotation

	OnAfterAnnotationCreateCallback OnAfterCreateInterface[Annotation]
	OnAfterAnnotationUpdateCallback OnAfterUpdateInterface[Annotation]
	OnAfterAnnotationDeleteCallback OnAfterDeleteInterface[Annotation]
	OnAfterAnnotationReadCallback   OnAfterReadInterface[Annotation]

	Attributes           map[*Attribute]any
	Attributes_mapString map[string]*Attribute

	// insertion point for slice of pointers maps
	OnAfterAttributeCreateCallback OnAfterCreateInterface[Attribute]
	OnAfterAttributeUpdateCallback OnAfterUpdateInterface[Attribute]
	OnAfterAttributeDeleteCallback OnAfterDeleteInterface[Attribute]
	OnAfterAttributeReadCallback   OnAfterReadInterface[Attribute]

	AttributeGroups           map[*AttributeGroup]any
	AttributeGroups_mapString map[string]*AttributeGroup

	// insertion point for slice of pointers maps
	AttributeGroup_AttributeGroups_reverseMap map[*AttributeGroup]*AttributeGroup

	AttributeGroup_Attributes_reverseMap map[*Attribute]*AttributeGroup

	OnAfterAttributeGroupCreateCallback OnAfterCreateInterface[AttributeGroup]
	OnAfterAttributeGroupUpdateCallback OnAfterUpdateInterface[AttributeGroup]
	OnAfterAttributeGroupDeleteCallback OnAfterDeleteInterface[AttributeGroup]
	OnAfterAttributeGroupReadCallback   OnAfterReadInterface[AttributeGroup]

	Choices           map[*Choice]any
	Choices_mapString map[string]*Choice

	// insertion point for slice of pointers maps
	Choice_Sequences_reverseMap map[*Sequence]*Choice

	Choice_Alls_reverseMap map[*All]*Choice

	Choice_Choices_reverseMap map[*Choice]*Choice

	Choice_Groups_reverseMap map[*Group]*Choice

	Choice_Elements_reverseMap map[*Element]*Choice

	OnAfterChoiceCreateCallback OnAfterCreateInterface[Choice]
	OnAfterChoiceUpdateCallback OnAfterUpdateInterface[Choice]
	OnAfterChoiceDeleteCallback OnAfterDeleteInterface[Choice]
	OnAfterChoiceReadCallback   OnAfterReadInterface[Choice]

	ComplexContents           map[*ComplexContent]any
	ComplexContents_mapString map[string]*ComplexContent

	// insertion point for slice of pointers maps
	OnAfterComplexContentCreateCallback OnAfterCreateInterface[ComplexContent]
	OnAfterComplexContentUpdateCallback OnAfterUpdateInterface[ComplexContent]
	OnAfterComplexContentDeleteCallback OnAfterDeleteInterface[ComplexContent]
	OnAfterComplexContentReadCallback   OnAfterReadInterface[ComplexContent]

	ComplexTypes           map[*ComplexType]any
	ComplexTypes_mapString map[string]*ComplexType

	// insertion point for slice of pointers maps
	ComplexType_Sequences_reverseMap map[*Sequence]*ComplexType

	ComplexType_Alls_reverseMap map[*All]*ComplexType

	ComplexType_Choices_reverseMap map[*Choice]*ComplexType

	ComplexType_Groups_reverseMap map[*Group]*ComplexType

	ComplexType_Elements_reverseMap map[*Element]*ComplexType

	ComplexType_Attributes_reverseMap map[*Attribute]*ComplexType

	ComplexType_AttributeGroups_reverseMap map[*AttributeGroup]*ComplexType

	OnAfterComplexTypeCreateCallback OnAfterCreateInterface[ComplexType]
	OnAfterComplexTypeUpdateCallback OnAfterUpdateInterface[ComplexType]
	OnAfterComplexTypeDeleteCallback OnAfterDeleteInterface[ComplexType]
	OnAfterComplexTypeReadCallback   OnAfterReadInterface[ComplexType]

	Documentations           map[*Documentation]any
	Documentations_mapString map[string]*Documentation

	// insertion point for slice of pointers maps
	OnAfterDocumentationCreateCallback OnAfterCreateInterface[Documentation]
	OnAfterDocumentationUpdateCallback OnAfterUpdateInterface[Documentation]
	OnAfterDocumentationDeleteCallback OnAfterDeleteInterface[Documentation]
	OnAfterDocumentationReadCallback   OnAfterReadInterface[Documentation]

	Elements           map[*Element]any
	Elements_mapString map[string]*Element

	// insertion point for slice of pointers maps
	Element_Groups_reverseMap map[*Group]*Element

	OnAfterElementCreateCallback OnAfterCreateInterface[Element]
	OnAfterElementUpdateCallback OnAfterUpdateInterface[Element]
	OnAfterElementDeleteCallback OnAfterDeleteInterface[Element]
	OnAfterElementReadCallback   OnAfterReadInterface[Element]

	Enumerations           map[*Enumeration]any
	Enumerations_mapString map[string]*Enumeration

	// insertion point for slice of pointers maps
	OnAfterEnumerationCreateCallback OnAfterCreateInterface[Enumeration]
	OnAfterEnumerationUpdateCallback OnAfterUpdateInterface[Enumeration]
	OnAfterEnumerationDeleteCallback OnAfterDeleteInterface[Enumeration]
	OnAfterEnumerationReadCallback   OnAfterReadInterface[Enumeration]

	Extensions           map[*Extension]any
	Extensions_mapString map[string]*Extension

	// insertion point for slice of pointers maps
	Extension_Sequences_reverseMap map[*Sequence]*Extension

	Extension_Alls_reverseMap map[*All]*Extension

	Extension_Choices_reverseMap map[*Choice]*Extension

	Extension_Groups_reverseMap map[*Group]*Extension

	Extension_Elements_reverseMap map[*Element]*Extension

	Extension_Attributes_reverseMap map[*Attribute]*Extension

	Extension_AttributeGroups_reverseMap map[*AttributeGroup]*Extension

	OnAfterExtensionCreateCallback OnAfterCreateInterface[Extension]
	OnAfterExtensionUpdateCallback OnAfterUpdateInterface[Extension]
	OnAfterExtensionDeleteCallback OnAfterDeleteInterface[Extension]
	OnAfterExtensionReadCallback   OnAfterReadInterface[Extension]

	Groups           map[*Group]any
	Groups_mapString map[string]*Group

	// insertion point for slice of pointers maps
	Group_Sequences_reverseMap map[*Sequence]*Group

	Group_Alls_reverseMap map[*All]*Group

	Group_Choices_reverseMap map[*Choice]*Group

	Group_Groups_reverseMap map[*Group]*Group

	Group_Elements_reverseMap map[*Element]*Group

	OnAfterGroupCreateCallback OnAfterCreateInterface[Group]
	OnAfterGroupUpdateCallback OnAfterUpdateInterface[Group]
	OnAfterGroupDeleteCallback OnAfterDeleteInterface[Group]
	OnAfterGroupReadCallback   OnAfterReadInterface[Group]

	Lengths           map[*Length]any
	Lengths_mapString map[string]*Length

	// insertion point for slice of pointers maps
	OnAfterLengthCreateCallback OnAfterCreateInterface[Length]
	OnAfterLengthUpdateCallback OnAfterUpdateInterface[Length]
	OnAfterLengthDeleteCallback OnAfterDeleteInterface[Length]
	OnAfterLengthReadCallback   OnAfterReadInterface[Length]

	MaxInclusives           map[*MaxInclusive]any
	MaxInclusives_mapString map[string]*MaxInclusive

	// insertion point for slice of pointers maps
	OnAfterMaxInclusiveCreateCallback OnAfterCreateInterface[MaxInclusive]
	OnAfterMaxInclusiveUpdateCallback OnAfterUpdateInterface[MaxInclusive]
	OnAfterMaxInclusiveDeleteCallback OnAfterDeleteInterface[MaxInclusive]
	OnAfterMaxInclusiveReadCallback   OnAfterReadInterface[MaxInclusive]

	MaxLengths           map[*MaxLength]any
	MaxLengths_mapString map[string]*MaxLength

	// insertion point for slice of pointers maps
	OnAfterMaxLengthCreateCallback OnAfterCreateInterface[MaxLength]
	OnAfterMaxLengthUpdateCallback OnAfterUpdateInterface[MaxLength]
	OnAfterMaxLengthDeleteCallback OnAfterDeleteInterface[MaxLength]
	OnAfterMaxLengthReadCallback   OnAfterReadInterface[MaxLength]

	MinInclusives           map[*MinInclusive]any
	MinInclusives_mapString map[string]*MinInclusive

	// insertion point for slice of pointers maps
	OnAfterMinInclusiveCreateCallback OnAfterCreateInterface[MinInclusive]
	OnAfterMinInclusiveUpdateCallback OnAfterUpdateInterface[MinInclusive]
	OnAfterMinInclusiveDeleteCallback OnAfterDeleteInterface[MinInclusive]
	OnAfterMinInclusiveReadCallback   OnAfterReadInterface[MinInclusive]

	MinLengths           map[*MinLength]any
	MinLengths_mapString map[string]*MinLength

	// insertion point for slice of pointers maps
	OnAfterMinLengthCreateCallback OnAfterCreateInterface[MinLength]
	OnAfterMinLengthUpdateCallback OnAfterUpdateInterface[MinLength]
	OnAfterMinLengthDeleteCallback OnAfterDeleteInterface[MinLength]
	OnAfterMinLengthReadCallback   OnAfterReadInterface[MinLength]

	Patterns           map[*Pattern]any
	Patterns_mapString map[string]*Pattern

	// insertion point for slice of pointers maps
	OnAfterPatternCreateCallback OnAfterCreateInterface[Pattern]
	OnAfterPatternUpdateCallback OnAfterUpdateInterface[Pattern]
	OnAfterPatternDeleteCallback OnAfterDeleteInterface[Pattern]
	OnAfterPatternReadCallback   OnAfterReadInterface[Pattern]

	Restrictions           map[*Restriction]any
	Restrictions_mapString map[string]*Restriction

	// insertion point for slice of pointers maps
	Restriction_Enumerations_reverseMap map[*Enumeration]*Restriction

	OnAfterRestrictionCreateCallback OnAfterCreateInterface[Restriction]
	OnAfterRestrictionUpdateCallback OnAfterUpdateInterface[Restriction]
	OnAfterRestrictionDeleteCallback OnAfterDeleteInterface[Restriction]
	OnAfterRestrictionReadCallback   OnAfterReadInterface[Restriction]

	Schemas           map[*Schema]any
	Schemas_mapString map[string]*Schema

	// insertion point for slice of pointers maps
	Schema_Elements_reverseMap map[*Element]*Schema

	Schema_SimpleTypes_reverseMap map[*SimpleType]*Schema

	Schema_ComplexTypes_reverseMap map[*ComplexType]*Schema

	Schema_AttributeGroups_reverseMap map[*AttributeGroup]*Schema

	Schema_Groups_reverseMap map[*Group]*Schema

	OnAfterSchemaCreateCallback OnAfterCreateInterface[Schema]
	OnAfterSchemaUpdateCallback OnAfterUpdateInterface[Schema]
	OnAfterSchemaDeleteCallback OnAfterDeleteInterface[Schema]
	OnAfterSchemaReadCallback   OnAfterReadInterface[Schema]

	Sequences           map[*Sequence]any
	Sequences_mapString map[string]*Sequence

	// insertion point for slice of pointers maps
	Sequence_Sequences_reverseMap map[*Sequence]*Sequence

	Sequence_Alls_reverseMap map[*All]*Sequence

	Sequence_Choices_reverseMap map[*Choice]*Sequence

	Sequence_Groups_reverseMap map[*Group]*Sequence

	Sequence_Elements_reverseMap map[*Element]*Sequence

	OnAfterSequenceCreateCallback OnAfterCreateInterface[Sequence]
	OnAfterSequenceUpdateCallback OnAfterUpdateInterface[Sequence]
	OnAfterSequenceDeleteCallback OnAfterDeleteInterface[Sequence]
	OnAfterSequenceReadCallback   OnAfterReadInterface[Sequence]

	SimpleContents           map[*SimpleContent]any
	SimpleContents_mapString map[string]*SimpleContent

	// insertion point for slice of pointers maps
	OnAfterSimpleContentCreateCallback OnAfterCreateInterface[SimpleContent]
	OnAfterSimpleContentUpdateCallback OnAfterUpdateInterface[SimpleContent]
	OnAfterSimpleContentDeleteCallback OnAfterDeleteInterface[SimpleContent]
	OnAfterSimpleContentReadCallback   OnAfterReadInterface[SimpleContent]

	SimpleTypes           map[*SimpleType]any
	SimpleTypes_mapString map[string]*SimpleType

	// insertion point for slice of pointers maps
	OnAfterSimpleTypeCreateCallback OnAfterCreateInterface[SimpleType]
	OnAfterSimpleTypeUpdateCallback OnAfterUpdateInterface[SimpleType]
	OnAfterSimpleTypeDeleteCallback OnAfterDeleteInterface[SimpleType]
	OnAfterSimpleTypeReadCallback   OnAfterReadInterface[SimpleType]

	TotalDigits           map[*TotalDigit]any
	TotalDigits_mapString map[string]*TotalDigit

	// insertion point for slice of pointers maps
	OnAfterTotalDigitCreateCallback OnAfterCreateInterface[TotalDigit]
	OnAfterTotalDigitUpdateCallback OnAfterUpdateInterface[TotalDigit]
	OnAfterTotalDigitDeleteCallback OnAfterDeleteInterface[TotalDigit]
	OnAfterTotalDigitReadCallback   OnAfterReadInterface[TotalDigit]

	Unions           map[*Union]any
	Unions_mapString map[string]*Union

	// insertion point for slice of pointers maps
	OnAfterUnionCreateCallback OnAfterCreateInterface[Union]
	OnAfterUnionUpdateCallback OnAfterUpdateInterface[Union]
	OnAfterUnionDeleteCallback OnAfterDeleteInterface[Union]
	OnAfterUnionReadCallback   OnAfterReadInterface[Union]

	WhiteSpaces           map[*WhiteSpace]any
	WhiteSpaces_mapString map[string]*WhiteSpace

	// insertion point for slice of pointers maps
	OnAfterWhiteSpaceCreateCallback OnAfterCreateInterface[WhiteSpace]
	OnAfterWhiteSpaceUpdateCallback OnAfterUpdateInterface[WhiteSpace]
	OnAfterWhiteSpaceDeleteCallback OnAfterDeleteInterface[WhiteSpace]
	OnAfterWhiteSpaceReadCallback   OnAfterReadInterface[WhiteSpace]

	AllModelsStructCreateCallback AllModelsStructCreateInterface

	AllModelsStructDeleteCallback AllModelsStructDeleteInterface

	BackRepo BackRepoInterface

	// if set will be called before each commit to the back repo
	OnInitCommitCallback          OnInitCommitInterface
	OnInitCommitFromFrontCallback OnInitCommitInterface
	OnInitCommitFromBackCallback  OnInitCommitInterface

	// store the number of instance per gongstruct
	Map_GongStructName_InstancesNb map[string]int

	// store meta package import
	MetaPackageImportPath  string
	MetaPackageImportAlias string

	// to be removed after fix of [issue](https://github.com/golang/go/issues/57559)
	// map to enable docLink renaming when an identifier is renamed
	Map_DocLink_Renaming map[string]GONG__Identifier
	// contains filtered or unexported fields
}

StageStruct enables storage of staged instances swagger:ignore

func NewStage

func NewStage(path string) (stage *StageStruct)

func (*StageStruct) Backup

func (stage *StageStruct) Backup(dirPath string)

backup generates backup files in the dirPath

func (*StageStruct) BackupXL

func (stage *StageStruct) BackupXL(dirPath string)

backup generates backup files in the dirPath

func (*StageStruct) Checkout

func (stage *StageStruct) Checkout()

func (*StageStruct) Commit

func (stage *StageStruct) Commit()

func (*StageStruct) CommitWithSuspendedCallbacks

func (stage *StageStruct) CommitWithSuspendedCallbacks()

func (*StageStruct) ComputeReverseMaps

func (stage *StageStruct) ComputeReverseMaps()

ComputeReverseMaps computes the reverse map, for all intances, for all slice to pointers field Its complexity is in O(n)O(p) where p is the number of pointers

func (*StageStruct) GetPath

func (stage *StageStruct) GetPath() string

func (*StageStruct) GetType

func (stage *StageStruct) GetType() string

func (*StageStruct) IsStagedAll

func (stage *StageStruct) IsStagedAll(all *All) (ok bool)

insertion point for stage per struct

func (*StageStruct) IsStagedAnnotation

func (stage *StageStruct) IsStagedAnnotation(annotation *Annotation) (ok bool)

func (*StageStruct) IsStagedAttribute

func (stage *StageStruct) IsStagedAttribute(attribute *Attribute) (ok bool)

func (*StageStruct) IsStagedAttributeGroup

func (stage *StageStruct) IsStagedAttributeGroup(attributegroup *AttributeGroup) (ok bool)

func (*StageStruct) IsStagedChoice

func (stage *StageStruct) IsStagedChoice(choice *Choice) (ok bool)

func (*StageStruct) IsStagedComplexContent

func (stage *StageStruct) IsStagedComplexContent(complexcontent *ComplexContent) (ok bool)

func (*StageStruct) IsStagedComplexType

func (stage *StageStruct) IsStagedComplexType(complextype *ComplexType) (ok bool)

func (*StageStruct) IsStagedDocumentation

func (stage *StageStruct) IsStagedDocumentation(documentation *Documentation) (ok bool)

func (*StageStruct) IsStagedElement

func (stage *StageStruct) IsStagedElement(element *Element) (ok bool)

func (*StageStruct) IsStagedEnumeration

func (stage *StageStruct) IsStagedEnumeration(enumeration *Enumeration) (ok bool)

func (*StageStruct) IsStagedExtension

func (stage *StageStruct) IsStagedExtension(extension *Extension) (ok bool)

func (*StageStruct) IsStagedGroup

func (stage *StageStruct) IsStagedGroup(group *Group) (ok bool)

func (*StageStruct) IsStagedLength

func (stage *StageStruct) IsStagedLength(length *Length) (ok bool)

func (*StageStruct) IsStagedMaxInclusive

func (stage *StageStruct) IsStagedMaxInclusive(maxinclusive *MaxInclusive) (ok bool)

func (*StageStruct) IsStagedMaxLength

func (stage *StageStruct) IsStagedMaxLength(maxlength *MaxLength) (ok bool)

func (*StageStruct) IsStagedMinInclusive

func (stage *StageStruct) IsStagedMinInclusive(mininclusive *MinInclusive) (ok bool)

func (*StageStruct) IsStagedMinLength

func (stage *StageStruct) IsStagedMinLength(minlength *MinLength) (ok bool)

func (*StageStruct) IsStagedPattern

func (stage *StageStruct) IsStagedPattern(pattern *Pattern) (ok bool)

func (*StageStruct) IsStagedRestriction

func (stage *StageStruct) IsStagedRestriction(restriction *Restriction) (ok bool)

func (*StageStruct) IsStagedSchema

func (stage *StageStruct) IsStagedSchema(schema *Schema) (ok bool)

func (*StageStruct) IsStagedSequence

func (stage *StageStruct) IsStagedSequence(sequence *Sequence) (ok bool)

func (*StageStruct) IsStagedSimpleContent

func (stage *StageStruct) IsStagedSimpleContent(simplecontent *SimpleContent) (ok bool)

func (*StageStruct) IsStagedSimpleType

func (stage *StageStruct) IsStagedSimpleType(simpletype *SimpleType) (ok bool)

func (*StageStruct) IsStagedTotalDigit

func (stage *StageStruct) IsStagedTotalDigit(totaldigit *TotalDigit) (ok bool)

func (*StageStruct) IsStagedUnion

func (stage *StageStruct) IsStagedUnion(union *Union) (ok bool)

func (*StageStruct) IsStagedWhiteSpace

func (stage *StageStruct) IsStagedWhiteSpace(whitespace *WhiteSpace) (ok bool)

func (*StageStruct) Marshall

func (stage *StageStruct) Marshall(file *os.File, modelsPackageName, packageName string)

Marshall marshall the stage content into the file as an instanciation into a stage

func (*StageStruct) Nil

func (stage *StageStruct) Nil()

func (*StageStruct) Reset

func (stage *StageStruct) Reset()

func (*StageStruct) Restore

func (stage *StageStruct) Restore(dirPath string)

Restore resets Stage & BackRepo and restores their content from the restore files in dirPath

func (*StageStruct) RestoreXL

func (stage *StageStruct) RestoreXL(dirPath string)

Restore resets Stage & BackRepo and restores their content from the restore files in dirPath

func (*StageStruct) StageBranchAll

func (stage *StageStruct) StageBranchAll(all *All)

insertion point for stage branch per struct

func (*StageStruct) StageBranchAnnotation

func (stage *StageStruct) StageBranchAnnotation(annotation *Annotation)

func (*StageStruct) StageBranchAttribute

func (stage *StageStruct) StageBranchAttribute(attribute *Attribute)

func (*StageStruct) StageBranchAttributeGroup

func (stage *StageStruct) StageBranchAttributeGroup(attributegroup *AttributeGroup)

func (*StageStruct) StageBranchChoice

func (stage *StageStruct) StageBranchChoice(choice *Choice)

func (*StageStruct) StageBranchComplexContent

func (stage *StageStruct) StageBranchComplexContent(complexcontent *ComplexContent)

func (*StageStruct) StageBranchComplexType

func (stage *StageStruct) StageBranchComplexType(complextype *ComplexType)

func (*StageStruct) StageBranchDocumentation

func (stage *StageStruct) StageBranchDocumentation(documentation *Documentation)

func (*StageStruct) StageBranchElement

func (stage *StageStruct) StageBranchElement(element *Element)

func (*StageStruct) StageBranchEnumeration

func (stage *StageStruct) StageBranchEnumeration(enumeration *Enumeration)

func (*StageStruct) StageBranchExtension

func (stage *StageStruct) StageBranchExtension(extension *Extension)

func (*StageStruct) StageBranchGroup

func (stage *StageStruct) StageBranchGroup(group *Group)

func (*StageStruct) StageBranchLength

func (stage *StageStruct) StageBranchLength(length *Length)

func (*StageStruct) StageBranchMaxInclusive

func (stage *StageStruct) StageBranchMaxInclusive(maxinclusive *MaxInclusive)

func (*StageStruct) StageBranchMaxLength

func (stage *StageStruct) StageBranchMaxLength(maxlength *MaxLength)

func (*StageStruct) StageBranchMinInclusive

func (stage *StageStruct) StageBranchMinInclusive(mininclusive *MinInclusive)

func (*StageStruct) StageBranchMinLength

func (stage *StageStruct) StageBranchMinLength(minlength *MinLength)

func (*StageStruct) StageBranchPattern

func (stage *StageStruct) StageBranchPattern(pattern *Pattern)

func (*StageStruct) StageBranchRestriction

func (stage *StageStruct) StageBranchRestriction(restriction *Restriction)

func (*StageStruct) StageBranchSchema

func (stage *StageStruct) StageBranchSchema(schema *Schema)

func (*StageStruct) StageBranchSequence

func (stage *StageStruct) StageBranchSequence(sequence *Sequence)

func (*StageStruct) StageBranchSimpleContent

func (stage *StageStruct) StageBranchSimpleContent(simplecontent *SimpleContent)

func (*StageStruct) StageBranchSimpleType

func (stage *StageStruct) StageBranchSimpleType(simpletype *SimpleType)

func (*StageStruct) StageBranchTotalDigit

func (stage *StageStruct) StageBranchTotalDigit(totaldigit *TotalDigit)

func (*StageStruct) StageBranchUnion

func (stage *StageStruct) StageBranchUnion(union *Union)

func (*StageStruct) StageBranchWhiteSpace

func (stage *StageStruct) StageBranchWhiteSpace(whitespace *WhiteSpace)

func (*StageStruct) Unstage

func (stage *StageStruct) Unstage()

func (*StageStruct) UnstageBranchAll

func (stage *StageStruct) UnstageBranchAll(all *All)

insertion point for unstage branch per struct

func (*StageStruct) UnstageBranchAnnotation

func (stage *StageStruct) UnstageBranchAnnotation(annotation *Annotation)

func (*StageStruct) UnstageBranchAttribute

func (stage *StageStruct) UnstageBranchAttribute(attribute *Attribute)

func (*StageStruct) UnstageBranchAttributeGroup

func (stage *StageStruct) UnstageBranchAttributeGroup(attributegroup *AttributeGroup)

func (*StageStruct) UnstageBranchChoice

func (stage *StageStruct) UnstageBranchChoice(choice *Choice)

func (*StageStruct) UnstageBranchComplexContent

func (stage *StageStruct) UnstageBranchComplexContent(complexcontent *ComplexContent)

func (*StageStruct) UnstageBranchComplexType

func (stage *StageStruct) UnstageBranchComplexType(complextype *ComplexType)

func (*StageStruct) UnstageBranchDocumentation

func (stage *StageStruct) UnstageBranchDocumentation(documentation *Documentation)

func (*StageStruct) UnstageBranchElement

func (stage *StageStruct) UnstageBranchElement(element *Element)

func (*StageStruct) UnstageBranchEnumeration

func (stage *StageStruct) UnstageBranchEnumeration(enumeration *Enumeration)

func (*StageStruct) UnstageBranchExtension

func (stage *StageStruct) UnstageBranchExtension(extension *Extension)

func (*StageStruct) UnstageBranchGroup

func (stage *StageStruct) UnstageBranchGroup(group *Group)

func (*StageStruct) UnstageBranchLength

func (stage *StageStruct) UnstageBranchLength(length *Length)

func (*StageStruct) UnstageBranchMaxInclusive

func (stage *StageStruct) UnstageBranchMaxInclusive(maxinclusive *MaxInclusive)

func (*StageStruct) UnstageBranchMaxLength

func (stage *StageStruct) UnstageBranchMaxLength(maxlength *MaxLength)

func (*StageStruct) UnstageBranchMinInclusive

func (stage *StageStruct) UnstageBranchMinInclusive(mininclusive *MinInclusive)

func (*StageStruct) UnstageBranchMinLength

func (stage *StageStruct) UnstageBranchMinLength(minlength *MinLength)

func (*StageStruct) UnstageBranchPattern

func (stage *StageStruct) UnstageBranchPattern(pattern *Pattern)

func (*StageStruct) UnstageBranchRestriction

func (stage *StageStruct) UnstageBranchRestriction(restriction *Restriction)

func (*StageStruct) UnstageBranchSchema

func (stage *StageStruct) UnstageBranchSchema(schema *Schema)

func (*StageStruct) UnstageBranchSequence

func (stage *StageStruct) UnstageBranchSequence(sequence *Sequence)

func (*StageStruct) UnstageBranchSimpleContent

func (stage *StageStruct) UnstageBranchSimpleContent(simplecontent *SimpleContent)

func (*StageStruct) UnstageBranchSimpleType

func (stage *StageStruct) UnstageBranchSimpleType(simpletype *SimpleType)

func (*StageStruct) UnstageBranchTotalDigit

func (stage *StageStruct) UnstageBranchTotalDigit(totaldigit *TotalDigit)

func (*StageStruct) UnstageBranchUnion

func (stage *StageStruct) UnstageBranchUnion(union *Union)

func (*StageStruct) UnstageBranchWhiteSpace

func (stage *StageStruct) UnstageBranchWhiteSpace(whitespace *WhiteSpace)

type Tabulator

type Tabulator interface {
	AddSheet(sheetName string)
	AddRow(sheetName string) int
	AddCell(sheetName string, rowId, columnIndex int, value string)
}

Tabulator is an interface for writing to a table strings

type TotalDigit

type TotalDigit struct {
	Name string
	Annotated
	ElementWithValueAttribute
}

func CopyBranchTotalDigit

func CopyBranchTotalDigit(mapOrigCopy map[any]any, totaldigitFrom *TotalDigit) (totaldigitTo *TotalDigit)

func (*TotalDigit) Checkout

func (totaldigit *TotalDigit) Checkout(stage *StageStruct) *TotalDigit

Checkout totaldigit to the back repo (if it is already staged)

func (*TotalDigit) Commit

func (totaldigit *TotalDigit) Commit(stage *StageStruct) *TotalDigit

commit totaldigit to the back repo (if it is already staged)

func (*TotalDigit) CommitVoid

func (totaldigit *TotalDigit) CommitVoid(stage *StageStruct)

func (*TotalDigit) CopyBasicFields

func (from *TotalDigit) CopyBasicFields(to *TotalDigit)

func (*TotalDigit) GetName

func (totaldigit *TotalDigit) GetName() (res string)

for satisfaction of GongStruct interface

func (*TotalDigit) Stage

func (totaldigit *TotalDigit) Stage(stage *StageStruct) *TotalDigit

Stage puts totaldigit to the model stage

func (*TotalDigit) Unstage

func (totaldigit *TotalDigit) Unstage(stage *StageStruct) *TotalDigit

Unstage removes totaldigit off the model stage

func (*TotalDigit) UnstageVoid

func (totaldigit *TotalDigit) UnstageVoid(stage *StageStruct)

UnstageVoid removes totaldigit off the model stage

type TotalDigit_WOP

type TotalDigit_WOP struct {
	// insertion point
	Name  string
	Value string
}

type Union

type Union struct {
	Name string
	Annotated
	MemberTypes string `xml:"memberTypes,attr"`
}

func CopyBranchUnion

func CopyBranchUnion(mapOrigCopy map[any]any, unionFrom *Union) (unionTo *Union)

func (*Union) Checkout

func (union *Union) Checkout(stage *StageStruct) *Union

Checkout union to the back repo (if it is already staged)

func (*Union) Commit

func (union *Union) Commit(stage *StageStruct) *Union

commit union to the back repo (if it is already staged)

func (*Union) CommitVoid

func (union *Union) CommitVoid(stage *StageStruct)

func (*Union) CopyBasicFields

func (from *Union) CopyBasicFields(to *Union)

func (*Union) GetName

func (union *Union) GetName() (res string)

for satisfaction of GongStruct interface

func (*Union) Stage

func (union *Union) Stage(stage *StageStruct) *Union

Stage puts union to the model stage

func (*Union) Unstage

func (union *Union) Unstage(stage *StageStruct) *Union

Unstage removes union off the model stage

func (*Union) UnstageVoid

func (union *Union) UnstageVoid(stage *StageStruct)

UnstageVoid removes union off the model stage

type Union_WOP

type Union_WOP struct {
	// insertion point
	Name        string
	MemberTypes string
}

type WhiteSpace

type WhiteSpace struct {
	Name string
	Annotated
	ElementWithValueAttribute
}

func CopyBranchWhiteSpace

func CopyBranchWhiteSpace(mapOrigCopy map[any]any, whitespaceFrom *WhiteSpace) (whitespaceTo *WhiteSpace)

func (*WhiteSpace) Checkout

func (whitespace *WhiteSpace) Checkout(stage *StageStruct) *WhiteSpace

Checkout whitespace to the back repo (if it is already staged)

func (*WhiteSpace) Commit

func (whitespace *WhiteSpace) Commit(stage *StageStruct) *WhiteSpace

commit whitespace to the back repo (if it is already staged)

func (*WhiteSpace) CommitVoid

func (whitespace *WhiteSpace) CommitVoid(stage *StageStruct)

func (*WhiteSpace) CopyBasicFields

func (from *WhiteSpace) CopyBasicFields(to *WhiteSpace)

func (*WhiteSpace) GetName

func (whitespace *WhiteSpace) GetName() (res string)

for satisfaction of GongStruct interface

func (*WhiteSpace) Stage

func (whitespace *WhiteSpace) Stage(stage *StageStruct) *WhiteSpace

Stage puts whitespace to the model stage

func (*WhiteSpace) Unstage

func (whitespace *WhiteSpace) Unstage(stage *StageStruct) *WhiteSpace

Unstage removes whitespace off the model stage

func (*WhiteSpace) UnstageVoid

func (whitespace *WhiteSpace) UnstageVoid(stage *StageStruct)

UnstageVoid removes whitespace off the model stage

type WhiteSpace_WOP

type WhiteSpace_WOP struct {
	// insertion point
	Name  string
	Value string
}

type WithGoIdentifier

type WithGoIdentifier struct {
	// HasNameConflict
	//
	// In XML Schema Definition (XSD), it is technically possible to have a
	// named complex type and an element with the same name or elements with
	// the same (see musicxml.xsd for instance),
	HasNameConflict bool
	GoIdentifier    string
}

type Xmlns

type Xmlns []xmlns

func (Xmlns) PrefixByUri

func (declarations Xmlns) PrefixByUri(uri string) string

func (Xmlns) UriByPrefix

func (declarations Xmlns) UriByPrefix(prefix string) string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL