models

package
v0.0.0-...-cdad75a Latest Latest
Warning

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

Go to latest
Published: Mar 1, 2026 License: MIT Imports: 36 Imported by: 0

Documentation

Overview

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

generated boilerplate code edit the file for adding other stages

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

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 (
	ProbeTreeSidebarSuffix       = ":sidebar of the probe"
	ProbeTableSuffix             = ":table of the probe"
	ProbeNotificationTableSuffix = ":notification table of the probe"
	ProbeFormSuffix              = ":form of the probe"
	ProbeSplitSuffix             = ":probe of the probe"
)
View Source
const (
	GongNavigationModeNormal gongStageNavigationMode = "Normal"
	// when the mode is navigating, each commit backward and forward
	// it is possible to go apply the nbCommitsBackward forward commits
	GongNavigationModeNavigating gongStageNavigationMode = "Navigating"
)
View Source
const GongIdentifiersDecls = `
	{{Identifier}} := (&models.{{GeneratedStructName}}{Name: {{GeneratedFieldNameValue}}}).Stage(stage)`
View Source
const GongUnstageStmt = `
	{{Identifier}}.Unstage(stage)`
View Source
const IdentifiersDeclsWithoutNameInit = `
	{{Identifier}} := (&models.{{GeneratedStructName}}{}).Stage(stage)`

previous version does not hanldle embedded structs (https://github.com/golang/go/issues/9859) simpler version but the name of the instance cannot be human read before the fields initialization

View Source
const MetaFieldStructInitStatement = `
	{{Identifier}}.{{GeneratedFieldName}} = ` + `{{GeneratedFieldNameValue}}`
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

This section is empty.

Functions

func AfterCreateFromFront

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

AfterCreateFromFront is called after a create from front

func AfterDeleteFromFront

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

AfterDeleteFromFront is called after a delete from front

func AfterReadFromFront

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

AfterReadFromFront is called after a Read from front

func CompareGongstructByName

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

func ControlPointToPoint

func ControlPointToPoint(controlPoint *svg.ControlPoint) *svg.Point

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 Diff

func Diff[T1, T2 PointerToGongstruct](stage *Stage, a, b T1, fieldName string, oldSlice, newSlice []T2) (ops string)

Diff returns the sequence of operations to transform oldSlice into newSlice. It requires type T to be comparable (e.g., pointers, ints, strings).

func ExtractMiddleUint

func ExtractMiddleUint(input string) (uint, error)

ExtractMiddleUint takes a formatted string and returns the extracted integer.

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 GetGongstrucsSorted

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

func GetGongstructInstancesMap

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

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

func GetGongstructInstancesSet

func GetGongstructInstancesSet[Type Gongstruct](stage *Stage) *map[*Type]struct{}

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

func GetGongstructInstancesSetFromPointerType

func GetGongstructInstancesSetFromPointerType[Type PointerToGongstruct](stage *Stage) *map[Type]struct{}

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

func GetGongstructNameFromPointer

func GetGongstructNameFromPointer(instance GongstructIF) (res string)

func GetNamedStructInstances

func GetNamedStructInstances[T PointerToGongstruct](set map[T]struct{}, order map[T]uint) (res []string)

func GetOrder

func GetOrder[Type Gongstruct](stage *Stage, instance *Type) uint

func GetOrderPointerGongstruct

func GetOrderPointerGongstruct[Type PointerToGongstruct](stage *Stage, instance Type) uint

func GetPointerReverseMap

func GetPointerReverseMap[Start, End Gongstruct](fieldname string, stage *Stage) 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 GongstructIF]() (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 *Stage) 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 GetStructInstancesByOrder

func GetStructInstancesByOrder[T PointerToGongstruct](set map[T]struct{}, order map[T]uint) (res []T)

func GetStructInstancesByOrderAuto

func GetStructInstancesByOrderAuto[T PointerToGongstruct](stage *Stage) (res []T)

func GongCleanPointer

func GongCleanPointer[T PointerToGongstruct](stage *Stage, element *T) (modified bool)

GongCleanPointer sets the pointer to nil if the referenced element is not staged. T must be a pointer to a struct that implements PointerToGongstruct.

func GongCleanSlice

func GongCleanSlice[T PointerToGongstruct](stage *Stage, slice *[]T) (modified bool)

GongCleanSlice removes unstaged elements from a slice of pointers of type T. T must be a pointer to a struct that implements PointerToGongstruct.

func GongExtractBool

func GongExtractBool(expr ast.Expr) bool

func GongExtractExpr

func GongExtractExpr(expr ast.Expr) any

func GongExtractFloat

func GongExtractFloat(expr ast.Expr) float64

func GongExtractInt

func GongExtractInt(expr ast.Expr) int

func GongExtractString

func GongExtractString(expr ast.Expr) string

func GongGetMap

func GongGetMap[Type GongstructIF](stage *Stage) map[string]Type

GongGetMap returns the map of staged Gonstruct instance by their name Can be usefull if names are unique

func GongGetSet

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

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

func GongParseAstString

func GongParseAstString(stage *Stage, blob string, preserveOrder bool) error

GongParseAstString parses the Go source code from a string

func GongUnmarshallEnum

func GongUnmarshallEnum[T interface{ FromCodeString(string) error }](
	ptr T,
	valueExpr ast.Expr)

GongUnmarshallEnum handles assignment of enum fields (via SelectorExpr or String fallback)

func GongUnmarshallPointer

func GongUnmarshallPointer[T PointerToGongstruct](
	ptr *T,
	valueExpr ast.Expr,
	identifierMap map[string]GongstructIF)

GongUnmarshallPointer handles assignment of a single pointer field

func GongUnmarshallSliceOfPointers

func GongUnmarshallSliceOfPointers[T PointerToGongstruct](
	slice *[]T,
	valueExpr ast.Expr,
	identifierMap map[string]GongstructIF) (err error)

GongUnmarshallSliceOfPointers handles append, slices.Delete, and slices.Insert for slice fields

func IntToLetters

func IntToLetters(number int32) (letters string)

func IsStaged

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

func IsStagedPointerToGongstruct

func IsStagedPointerToGongstruct[Type PointerToGongstruct](stage *Stage, instance Type) (ok bool)

func OnAfterUpdateFromFront

func OnAfterUpdateFromFront[Type Gongstruct](stage *Stage, old, new *Type)

OnAfterUpdateFromFront is called after a update from front

func ParseAstEmbeddedFile

func ParseAstEmbeddedFile(stage *Stage, directory embed.FS, pathToFile string) error

ParseAstEmbeddedFile parses the Go source code from an embedded file

func ParseAstFile

func ParseAstFile(stage *Stage, pathToFile string, preserveOrder bool) error

ParseAstFile Parse pathToFile and stages all instances declared in the file

func ParseAstFileFromAst

func ParseAstFileFromAst(stage *Stage, inFile *ast.File, fset *token.FileSet, preserveOrder bool) error

ParseAstFileFromAst traverses the AST and stages instances using the Unmarshaller registry

func ParseAstFromBytes

func ParseAstFromBytes(stage *Stage, input []byte) error

func PointToControlPoint

func PointToControlPoint(point *svg.Point, link *svg.Link) svg.ControlPoint

PointToControlPoint converts a Point (absolute coords) to a ControlPoint (relative coords) based on the provided Link. This function assumes link.Start and link.End are not nil.

func SerializeExcelizePointerToGongstruct

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

func SerializeExcelizePointerToGongstruct2

func SerializeExcelizePointerToGongstruct2[Type PointerToGongstruct](stage *Stage, f *excelize.File, addIDs bool)

func SerializeStage

func SerializeStage(stage *Stage, filename string)

func SerializeStage2

func SerializeStage2(stage *Stage, filename string, addIDs bool)

func SetCallbackAfterCreateFromFront

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

func SetCallbackAfterDeleteFromFront

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

func SetCallbackAfterReadFromFront

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

func SetCallbackAfterUpdateFromFront

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

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

func SetFieldStringValueFromPointer

func SetFieldStringValueFromPointer(instance GongstructIF, fieldName string, value GongFieldValue, stage *Stage) error

func SetOrchestratorOnAfterUpdate

func SetOrchestratorOnAfterUpdate[Type Gongstruct](stage *Stage)

func SortGongstructSetByName

func SortGongstructSetByName[T PointerToGongstruct](set map[T]struct{}) (sortedSlice []T)

func StageBranch

func StageBranch[Type Gongstruct](stage *Stage, 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 ToRawStringLiteral

func ToRawStringLiteral(s string) string

ToRawStringLiteral formats a string into safe Go source code, using backticks to preserve newlines and readability.

func UnstageBranch

func UnstageBranch[Type Gongstruct](stage *Stage, 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 AllModelsStructCreateInterface

type AllModelsStructCreateInterface interface {
	CreateORMArtefactType(ArtefactType *ArtefactType)
	CreateORMArtefactTypeShape(ArtefactTypeShape *ArtefactTypeShape)
	CreateORMArtist(Artist *Artist)
	CreateORMArtistShape(ArtistShape *ArtistShape)
	CreateORMControlPointShape(ControlPointShape *ControlPointShape)
	CreateORMDesk(Desk *Desk)
	CreateORMDiagram(Diagram *Diagram)
	CreateORMInfluence(Influence *Influence)
	CreateORMInfluenceShape(InfluenceShape *InfluenceShape)
	CreateORMMovement(Movement *Movement)
	CreateORMMovementShape(MovementShape *MovementShape)
	CreateORMPlace(Place *Place)
}

swagger:ignore

type AllModelsStructDeleteInterface

type AllModelsStructDeleteInterface interface {
	DeleteORMArtefactType(ArtefactType *ArtefactType)
	DeleteORMArtefactTypeShape(ArtefactTypeShape *ArtefactTypeShape)
	DeleteORMArtist(Artist *Artist)
	DeleteORMArtistShape(ArtistShape *ArtistShape)
	DeleteORMControlPointShape(ControlPointShape *ControlPointShape)
	DeleteORMDesk(Desk *Desk)
	DeleteORMDiagram(Diagram *Diagram)
	DeleteORMInfluence(Influence *Influence)
	DeleteORMInfluenceShape(InfluenceShape *InfluenceShape)
	DeleteORMMovement(Movement *Movement)
	DeleteORMMovementShape(MovementShape *MovementShape)
	DeleteORMPlace(Place *Place)
}

type ArtElement

type ArtElement interface {
	IsArtElement()
	GetName() string
}

type ArtefactType

type ArtefactType struct {
	Name string
}

func CopyBranchArtefactType

func CopyBranchArtefactType(mapOrigCopy map[any]any, artefacttypeFrom *ArtefactType) (artefacttypeTo *ArtefactType)

insertion point for stage branch per struct

func (*ArtefactType) Checkout

func (artefacttype *ArtefactType) Checkout(stage *Stage) *ArtefactType

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

func (*ArtefactType) Commit

func (artefacttype *ArtefactType) Commit(stage *Stage) *ArtefactType

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

func (*ArtefactType) CommitVoid

func (artefacttype *ArtefactType) CommitVoid(stage *Stage)

func (*ArtefactType) CopyBasicFields

func (from *ArtefactType) CopyBasicFields(to *ArtefactType)

func (*ArtefactType) GetName

func (artefacttype *ArtefactType) GetName() (res string)

for satisfaction of GongStruct interface

func (*ArtefactType) GongClean

func (artefacttype *ArtefactType) GongClean(stage *Stage) (modified bool)

insertion point per named struct Clean garbage collect unstaged instances that are referenced by ArtefactType

func (*ArtefactType) GongCopy

func (artefacttype *ArtefactType) GongCopy() GongstructIF

insertion point per named struct

func (*ArtefactType) GongDiff

func (artefacttype *ArtefactType) GongDiff(stage *Stage, artefacttypeOther *ArtefactType) (diffs []string)

insertion point for diff per struct GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*ArtefactType) GongGetFieldHeaders

func (artefacttype *ArtefactType) GongGetFieldHeaders() (res []GongFieldHeader)

insertion point for get fields header method

func (*ArtefactType) GongGetFieldValue

func (artefacttype *ArtefactType) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

insertion point for generic get gongstruct field value

func (*ArtefactType) GongGetGongstructName

func (artefacttype *ArtefactType) GongGetGongstructName() string

insertion point for generic get gongstruct name

func (*ArtefactType) GongGetIdentifier

func (artefacttype *ArtefactType) GongGetIdentifier(stage *Stage) string

GongGetIdentifier returns a unique identifier of the instance in the staging area This identifier is composed of the Gongstruct name and the order of the instance in the staging area It is used to identify instances across sessions insertion point per named struct

func (*ArtefactType) GongGetOrder

func (artefacttype *ArtefactType) GongGetOrder(stage *Stage) uint

GongGetOrder returns the order of the instance in the staging area This order is set at staging time, and reflects the order of creation of the instances in the staging area It is used when rendering slices of GongstructIF to keep a deterministic order which is important for frontends such as web frontends to avoid unnecessary re-renderings insertion point per named struct

func (*ArtefactType) GongGetReferenceIdentifier

func (artefacttype *ArtefactType) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*ArtefactType) GongGetReverseFieldOwner

func (inst *ArtefactType) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

insertion point

func (*ArtefactType) GongGetReverseFieldOwnerName

func (inst *ArtefactType) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

insertion point

func (*ArtefactType) GongMarshallAllFields

func (artefacttype *ArtefactType) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

insertion point for marshall all fields methods

func (*ArtefactType) GongMarshallField

func (artefacttype *ArtefactType) GongMarshallField(stage *Stage, fieldName string) (res string)

insertion point for marshall field methods

func (*ArtefactType) GongMarshallIdentifier

func (artefacttype *ArtefactType) GongMarshallIdentifier(stage *Stage) (decl string)

MarshallIdentifier returns the code to instantiate the instance in a marshalling file insertion point per named struct

func (*ArtefactType) GongMarshallUnstaging

func (artefacttype *ArtefactType) GongMarshallUnstaging(stage *Stage) (decl string)

insertion point for unstaging

func (*ArtefactType) GongReconstructPointersFromInstances

func (reference *ArtefactType) GongReconstructPointersFromInstances(stage *Stage)

insertion point for pointer reconstruction from instances

func (*ArtefactType) GongReconstructPointersFromReferences

func (reference *ArtefactType) GongReconstructPointersFromReferences(stage *Stage, instance *ArtefactType)

insertion point for pointer reconstruction from references

func (*ArtefactType) GongSetFieldValue

func (artefacttype *ArtefactType) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

insertion point for generic set gongstruct field value

func (*ArtefactType) IsArtElement

func (*ArtefactType) IsArtElement()

func (*ArtefactType) SetName

func (artefacttype *ArtefactType) SetName(name string)

for satisfaction of GongStruct interface

func (*ArtefactType) Stage

func (artefacttype *ArtefactType) Stage(stage *Stage) *ArtefactType

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

func (*ArtefactType) StagePreserveOrder

func (artefacttype *ArtefactType) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts artefacttype to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.ArtefactTypeOrder - update stage.ArtefactTypeOrder accordingly

func (*ArtefactType) StageVoid

func (artefacttype *ArtefactType) StageVoid(stage *Stage)

func (*ArtefactType) Unstage

func (artefacttype *ArtefactType) Unstage(stage *Stage) *ArtefactType

Unstage removes artefacttype off the model stage

func (*ArtefactType) UnstageVoid

func (artefacttype *ArtefactType) UnstageVoid(stage *Stage)

UnstageVoid removes artefacttype off the model stage

type ArtefactTypeNodeProxy

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

func (*ArtefactTypeNodeProxy) OnAfterUpdate

func (d *ArtefactTypeNodeProxy) OnAfterUpdate(stage *tree.Stage, stagedNode *tree.Node, frontNode *tree.Node)

OnAfterUpdate implements models.NodeImplInterface.

type ArtefactTypeShape

type ArtefactTypeShape struct {
	Name string

	ArtefactType *ArtefactType

	X, Y float64

	Width, Height float64
}

func CopyBranchArtefactTypeShape

func CopyBranchArtefactTypeShape(mapOrigCopy map[any]any, artefacttypeshapeFrom *ArtefactTypeShape) (artefacttypeshapeTo *ArtefactTypeShape)

func (*ArtefactTypeShape) Checkout

func (artefacttypeshape *ArtefactTypeShape) Checkout(stage *Stage) *ArtefactTypeShape

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

func (*ArtefactTypeShape) Commit

func (artefacttypeshape *ArtefactTypeShape) Commit(stage *Stage) *ArtefactTypeShape

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

func (*ArtefactTypeShape) CommitVoid

func (artefacttypeshape *ArtefactTypeShape) CommitVoid(stage *Stage)

func (*ArtefactTypeShape) CopyBasicFields

func (from *ArtefactTypeShape) CopyBasicFields(to *ArtefactTypeShape)

func (*ArtefactTypeShape) GetArtElement

func (shape *ArtefactTypeShape) GetArtElement() *ArtefactType

func (*ArtefactTypeShape) GetName

func (artefacttypeshape *ArtefactTypeShape) GetName() (res string)

for satisfaction of GongStruct interface

func (*ArtefactTypeShape) GongClean

func (artefacttypeshape *ArtefactTypeShape) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by ArtefactTypeShape

func (*ArtefactTypeShape) GongCopy

func (artefacttypeshape *ArtefactTypeShape) GongCopy() GongstructIF

func (*ArtefactTypeShape) GongDiff

func (artefacttypeshape *ArtefactTypeShape) GongDiff(stage *Stage, artefacttypeshapeOther *ArtefactTypeShape) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*ArtefactTypeShape) GongGetFieldHeaders

func (artefacttypeshape *ArtefactTypeShape) GongGetFieldHeaders() (res []GongFieldHeader)

func (*ArtefactTypeShape) GongGetFieldValue

func (artefacttypeshape *ArtefactTypeShape) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*ArtefactTypeShape) GongGetGongstructName

func (artefacttypeshape *ArtefactTypeShape) GongGetGongstructName() string

func (*ArtefactTypeShape) GongGetIdentifier

func (artefacttypeshape *ArtefactTypeShape) GongGetIdentifier(stage *Stage) string

func (*ArtefactTypeShape) GongGetOrder

func (artefacttypeshape *ArtefactTypeShape) GongGetOrder(stage *Stage) uint

func (*ArtefactTypeShape) GongGetReferenceIdentifier

func (artefacttypeshape *ArtefactTypeShape) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*ArtefactTypeShape) GongGetReverseFieldOwner

func (inst *ArtefactTypeShape) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*ArtefactTypeShape) GongGetReverseFieldOwnerName

func (inst *ArtefactTypeShape) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*ArtefactTypeShape) GongMarshallAllFields

func (artefacttypeshape *ArtefactTypeShape) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*ArtefactTypeShape) GongMarshallField

func (artefacttypeshape *ArtefactTypeShape) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*ArtefactTypeShape) GongMarshallIdentifier

func (artefacttypeshape *ArtefactTypeShape) GongMarshallIdentifier(stage *Stage) (decl string)

func (*ArtefactTypeShape) GongMarshallUnstaging

func (artefacttypeshape *ArtefactTypeShape) GongMarshallUnstaging(stage *Stage) (decl string)

func (*ArtefactTypeShape) GongReconstructPointersFromInstances

func (reference *ArtefactTypeShape) GongReconstructPointersFromInstances(stage *Stage)

func (*ArtefactTypeShape) GongReconstructPointersFromReferences

func (reference *ArtefactTypeShape) GongReconstructPointersFromReferences(stage *Stage, instance *ArtefactTypeShape)

func (*ArtefactTypeShape) GongSetFieldValue

func (artefacttypeshape *ArtefactTypeShape) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*ArtefactTypeShape) SetName

func (artefacttypeshape *ArtefactTypeShape) SetName(name string)

for satisfaction of GongStruct interface

func (*ArtefactTypeShape) Stage

func (artefacttypeshape *ArtefactTypeShape) Stage(stage *Stage) *ArtefactTypeShape

Stage puts artefacttypeshape to the model stage

func (*ArtefactTypeShape) StagePreserveOrder

func (artefacttypeshape *ArtefactTypeShape) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts artefacttypeshape to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.ArtefactTypeShapeOrder - update stage.ArtefactTypeShapeOrder accordingly

func (*ArtefactTypeShape) StageVoid

func (artefacttypeshape *ArtefactTypeShape) StageVoid(stage *Stage)

func (*ArtefactTypeShape) Unstage

func (artefacttypeshape *ArtefactTypeShape) Unstage(stage *Stage) *ArtefactTypeShape

Unstage removes artefacttypeshape off the model stage

func (*ArtefactTypeShape) UnstageVoid

func (artefacttypeshape *ArtefactTypeShape) UnstageVoid(stage *Stage)

UnstageVoid removes artefacttypeshape off the model stage

type ArtefactTypeShapeProxy

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

func (*ArtefactTypeShapeProxy) RectUpdated

func (p *ArtefactTypeShapeProxy) RectUpdated(updatedRect *svg.Rect)

type ArtefactTypeShapeUnmarshaller

type ArtefactTypeShapeUnmarshaller struct{}

func (*ArtefactTypeShapeUnmarshaller) Initialize

func (u *ArtefactTypeShapeUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*ArtefactTypeShapeUnmarshaller) UnmarshallField

func (u *ArtefactTypeShapeUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type ArtefactTypeShape_WOP

type ArtefactTypeShape_WOP struct {
	Name string

	X float64

	Y float64

	Width float64

	Height float64
}

type ArtefactTypeUnmarshaller

type ArtefactTypeUnmarshaller struct{}

insertion point per named struct

func (*ArtefactTypeUnmarshaller) Initialize

func (u *ArtefactTypeUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*ArtefactTypeUnmarshaller) UnmarshallField

func (u *ArtefactTypeUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type ArtefactType_WOP

type ArtefactType_WOP struct {
	Name string
}

insertion point

type Artist

type Artist struct {
	Name string

	IsDead      bool
	DateOfDeath time.Time
	Place       *Place
}

func CopyBranchArtist

func CopyBranchArtist(mapOrigCopy map[any]any, artistFrom *Artist) (artistTo *Artist)

func (*Artist) Checkout

func (artist *Artist) Checkout(stage *Stage) *Artist

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

func (*Artist) Commit

func (artist *Artist) Commit(stage *Stage) *Artist

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

func (*Artist) CommitVoid

func (artist *Artist) CommitVoid(stage *Stage)

func (*Artist) CopyBasicFields

func (from *Artist) CopyBasicFields(to *Artist)

func (*Artist) GetName

func (artist *Artist) GetName() (res string)

for satisfaction of GongStruct interface

func (*Artist) GongClean

func (artist *Artist) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by Artist

func (*Artist) GongCopy

func (artist *Artist) GongCopy() GongstructIF

func (*Artist) GongDiff

func (artist *Artist) GongDiff(stage *Stage, artistOther *Artist) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*Artist) GongGetFieldHeaders

func (artist *Artist) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Artist) GongGetFieldValue

func (artist *Artist) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Artist) GongGetGongstructName

func (artist *Artist) GongGetGongstructName() string

func (*Artist) GongGetIdentifier

func (artist *Artist) GongGetIdentifier(stage *Stage) string

func (*Artist) GongGetOrder

func (artist *Artist) GongGetOrder(stage *Stage) uint

func (*Artist) GongGetReferenceIdentifier

func (artist *Artist) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*Artist) GongGetReverseFieldOwner

func (inst *Artist) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*Artist) GongGetReverseFieldOwnerName

func (inst *Artist) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*Artist) GongMarshallAllFields

func (artist *Artist) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*Artist) GongMarshallField

func (artist *Artist) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Artist) GongMarshallIdentifier

func (artist *Artist) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Artist) GongMarshallUnstaging

func (artist *Artist) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Artist) GongReconstructPointersFromInstances

func (reference *Artist) GongReconstructPointersFromInstances(stage *Stage)

func (*Artist) GongReconstructPointersFromReferences

func (reference *Artist) GongReconstructPointersFromReferences(stage *Stage, instance *Artist)

func (*Artist) GongSetFieldValue

func (artist *Artist) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Artist) IsArtElement

func (*Artist) IsArtElement()

func (*Artist) SetName

func (artist *Artist) SetName(name string)

for satisfaction of GongStruct interface

func (*Artist) Stage

func (artist *Artist) Stage(stage *Stage) *Artist

Stage puts artist to the model stage

func (*Artist) StagePreserveOrder

func (artist *Artist) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts artist to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.ArtistOrder - update stage.ArtistOrder accordingly

func (*Artist) StageVoid

func (artist *Artist) StageVoid(stage *Stage)

func (*Artist) Unstage

func (artist *Artist) Unstage(stage *Stage) *Artist

Unstage removes artist off the model stage

func (*Artist) UnstageVoid

func (artist *Artist) UnstageVoid(stage *Stage)

UnstageVoid removes artist off the model stage

type ArtistNodeProxy

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

func (*ArtistNodeProxy) OnAfterUpdate

func (d *ArtistNodeProxy) OnAfterUpdate(stage *tree.Stage, stagedNode *tree.Node, frontNode *tree.Node)

OnAfterUpdate implements models.NodeImplInterface.

type ArtistShape

type ArtistShape struct {
	Name   string
	Artist *Artist

	X, Y float64

	Width, Height float64
}

func CopyBranchArtistShape

func CopyBranchArtistShape(mapOrigCopy map[any]any, artistshapeFrom *ArtistShape) (artistshapeTo *ArtistShape)

func (*ArtistShape) Checkout

func (artistshape *ArtistShape) Checkout(stage *Stage) *ArtistShape

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

func (*ArtistShape) Commit

func (artistshape *ArtistShape) Commit(stage *Stage) *ArtistShape

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

func (*ArtistShape) CommitVoid

func (artistshape *ArtistShape) CommitVoid(stage *Stage)

func (*ArtistShape) CopyBasicFields

func (from *ArtistShape) CopyBasicFields(to *ArtistShape)

func (*ArtistShape) GetArtElement

func (shape *ArtistShape) GetArtElement() *Artist

func (*ArtistShape) GetName

func (artistshape *ArtistShape) GetName() (res string)

for satisfaction of GongStruct interface

func (*ArtistShape) GongClean

func (artistshape *ArtistShape) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by ArtistShape

func (*ArtistShape) GongCopy

func (artistshape *ArtistShape) GongCopy() GongstructIF

func (*ArtistShape) GongDiff

func (artistshape *ArtistShape) GongDiff(stage *Stage, artistshapeOther *ArtistShape) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*ArtistShape) GongGetFieldHeaders

func (artistshape *ArtistShape) GongGetFieldHeaders() (res []GongFieldHeader)

func (*ArtistShape) GongGetFieldValue

func (artistshape *ArtistShape) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*ArtistShape) GongGetGongstructName

func (artistshape *ArtistShape) GongGetGongstructName() string

func (*ArtistShape) GongGetIdentifier

func (artistshape *ArtistShape) GongGetIdentifier(stage *Stage) string

func (*ArtistShape) GongGetOrder

func (artistshape *ArtistShape) GongGetOrder(stage *Stage) uint

func (*ArtistShape) GongGetReferenceIdentifier

func (artistshape *ArtistShape) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*ArtistShape) GongGetReverseFieldOwner

func (inst *ArtistShape) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*ArtistShape) GongGetReverseFieldOwnerName

func (inst *ArtistShape) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*ArtistShape) GongMarshallAllFields

func (artistshape *ArtistShape) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*ArtistShape) GongMarshallField

func (artistshape *ArtistShape) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*ArtistShape) GongMarshallIdentifier

func (artistshape *ArtistShape) GongMarshallIdentifier(stage *Stage) (decl string)

func (*ArtistShape) GongMarshallUnstaging

func (artistshape *ArtistShape) GongMarshallUnstaging(stage *Stage) (decl string)

func (*ArtistShape) GongReconstructPointersFromInstances

func (reference *ArtistShape) GongReconstructPointersFromInstances(stage *Stage)

func (*ArtistShape) GongReconstructPointersFromReferences

func (reference *ArtistShape) GongReconstructPointersFromReferences(stage *Stage, instance *ArtistShape)

func (*ArtistShape) GongSetFieldValue

func (artistshape *ArtistShape) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*ArtistShape) SetName

func (artistshape *ArtistShape) SetName(name string)

for satisfaction of GongStruct interface

func (*ArtistShape) Stage

func (artistshape *ArtistShape) Stage(stage *Stage) *ArtistShape

Stage puts artistshape to the model stage

func (*ArtistShape) StagePreserveOrder

func (artistshape *ArtistShape) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts artistshape to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.ArtistShapeOrder - update stage.ArtistShapeOrder accordingly

func (*ArtistShape) StageVoid

func (artistshape *ArtistShape) StageVoid(stage *Stage)

func (*ArtistShape) Unstage

func (artistshape *ArtistShape) Unstage(stage *Stage) *ArtistShape

Unstage removes artistshape off the model stage

func (*ArtistShape) UnstageVoid

func (artistshape *ArtistShape) UnstageVoid(stage *Stage)

UnstageVoid removes artistshape off the model stage

type ArtistShapeProxy

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

func (*ArtistShapeProxy) RectUpdated

func (p *ArtistShapeProxy) RectUpdated(updatedRect *svg.Rect)

type ArtistShapeUnmarshaller

type ArtistShapeUnmarshaller struct{}

func (*ArtistShapeUnmarshaller) Initialize

func (u *ArtistShapeUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*ArtistShapeUnmarshaller) UnmarshallField

func (u *ArtistShapeUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type ArtistShape_WOP

type ArtistShape_WOP struct {
	Name string

	X float64

	Y float64

	Width float64

	Height float64
}

type ArtistUnmarshaller

type ArtistUnmarshaller struct{}

func (*ArtistUnmarshaller) Initialize

func (u *ArtistUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*ArtistUnmarshaller) UnmarshallField

func (u *ArtistUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type Artist_WOP

type Artist_WOP struct {
	Name string

	IsDead bool

	DateOfDeath time.Time
}

type BackRepoInterface

type BackRepoInterface interface {
	Commit(stage *Stage)
	Checkout(stage *Stage)
	Backup(stage *Stage, dirPath string)
	Restore(stage *Stage, dirPath string)
	BackupXL(stage *Stage, dirPath string)
	RestoreXL(stage *Stage, dirPath string)
	// insertion point for Commit and Checkout signatures
	CommitArtefactType(artefacttype *ArtefactType)
	CheckoutArtefactType(artefacttype *ArtefactType)
	CommitArtefactTypeShape(artefacttypeshape *ArtefactTypeShape)
	CheckoutArtefactTypeShape(artefacttypeshape *ArtefactTypeShape)
	CommitArtist(artist *Artist)
	CheckoutArtist(artist *Artist)
	CommitArtistShape(artistshape *ArtistShape)
	CheckoutArtistShape(artistshape *ArtistShape)
	CommitControlPointShape(controlpointshape *ControlPointShape)
	CheckoutControlPointShape(controlpointshape *ControlPointShape)
	CommitDesk(desk *Desk)
	CheckoutDesk(desk *Desk)
	CommitDiagram(diagram *Diagram)
	CheckoutDiagram(diagram *Diagram)
	CommitInfluence(influence *Influence)
	CheckoutInfluence(influence *Influence)
	CommitInfluenceShape(influenceshape *InfluenceShape)
	CheckoutInfluenceShape(influenceshape *InfluenceShape)
	CommitMovement(movement *Movement)
	CheckoutMovement(movement *Movement)
	CommitMovementShape(movementshape *MovementShape)
	CheckoutMovementShape(movementshape *MovementShape)
	CommitPlace(place *Place)
	CheckoutPlace(place *Place)
	GetLastCommitFromBackNb() uint
	GetLastPushFromFrontNb() uint
}

type BackgroundRectProxy

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

func (*BackgroundRectProxy) RectUpdated

func (p *BackgroundRectProxy) RectUpdated(updatedRect *svg.Rect)

type ControlPointShape

type ControlPointShape struct {
	Name string

	// Control Points are defined relative to their
	// closest rect between the start rect and the end rect
	X_Relative, Y_Relative      float64
	IsStartShapeTheClosestShape bool
}

func CopyBranchControlPointShape

func CopyBranchControlPointShape(mapOrigCopy map[any]any, controlpointshapeFrom *ControlPointShape) (controlpointshapeTo *ControlPointShape)

func (*ControlPointShape) Checkout

func (controlpointshape *ControlPointShape) Checkout(stage *Stage) *ControlPointShape

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

func (*ControlPointShape) Commit

func (controlpointshape *ControlPointShape) Commit(stage *Stage) *ControlPointShape

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

func (*ControlPointShape) CommitVoid

func (controlpointshape *ControlPointShape) CommitVoid(stage *Stage)

func (*ControlPointShape) CopyBasicFields

func (from *ControlPointShape) CopyBasicFields(to *ControlPointShape)

func (*ControlPointShape) GetName

func (controlpointshape *ControlPointShape) GetName() (res string)

for satisfaction of GongStruct interface

func (*ControlPointShape) GongClean

func (controlpointshape *ControlPointShape) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by ControlPointShape

func (*ControlPointShape) GongCopy

func (controlpointshape *ControlPointShape) GongCopy() GongstructIF

func (*ControlPointShape) GongDiff

func (controlpointshape *ControlPointShape) GongDiff(stage *Stage, controlpointshapeOther *ControlPointShape) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*ControlPointShape) GongGetFieldHeaders

func (controlpointshape *ControlPointShape) GongGetFieldHeaders() (res []GongFieldHeader)

func (*ControlPointShape) GongGetFieldValue

func (controlpointshape *ControlPointShape) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*ControlPointShape) GongGetGongstructName

func (controlpointshape *ControlPointShape) GongGetGongstructName() string

func (*ControlPointShape) GongGetIdentifier

func (controlpointshape *ControlPointShape) GongGetIdentifier(stage *Stage) string

func (*ControlPointShape) GongGetOrder

func (controlpointshape *ControlPointShape) GongGetOrder(stage *Stage) uint

func (*ControlPointShape) GongGetReferenceIdentifier

func (controlpointshape *ControlPointShape) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*ControlPointShape) GongGetReverseFieldOwner

func (inst *ControlPointShape) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*ControlPointShape) GongGetReverseFieldOwnerName

func (inst *ControlPointShape) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*ControlPointShape) GongMarshallAllFields

func (controlpointshape *ControlPointShape) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*ControlPointShape) GongMarshallField

func (controlpointshape *ControlPointShape) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*ControlPointShape) GongMarshallIdentifier

func (controlpointshape *ControlPointShape) GongMarshallIdentifier(stage *Stage) (decl string)

func (*ControlPointShape) GongMarshallUnstaging

func (controlpointshape *ControlPointShape) GongMarshallUnstaging(stage *Stage) (decl string)

func (*ControlPointShape) GongReconstructPointersFromInstances

func (reference *ControlPointShape) GongReconstructPointersFromInstances(stage *Stage)

func (*ControlPointShape) GongReconstructPointersFromReferences

func (reference *ControlPointShape) GongReconstructPointersFromReferences(stage *Stage, instance *ControlPointShape)

func (*ControlPointShape) GongSetFieldValue

func (controlpointshape *ControlPointShape) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*ControlPointShape) SetName

func (controlpointshape *ControlPointShape) SetName(name string)

for satisfaction of GongStruct interface

func (*ControlPointShape) Stage

func (controlpointshape *ControlPointShape) Stage(stage *Stage) *ControlPointShape

Stage puts controlpointshape to the model stage

func (*ControlPointShape) StagePreserveOrder

func (controlpointshape *ControlPointShape) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts controlpointshape to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.ControlPointShapeOrder - update stage.ControlPointShapeOrder accordingly

func (*ControlPointShape) StageVoid

func (controlpointshape *ControlPointShape) StageVoid(stage *Stage)

func (*ControlPointShape) Unstage

func (controlpointshape *ControlPointShape) Unstage(stage *Stage) *ControlPointShape

Unstage removes controlpointshape off the model stage

func (*ControlPointShape) UnstageVoid

func (controlpointshape *ControlPointShape) UnstageVoid(stage *Stage)

UnstageVoid removes controlpointshape off the model stage

type ControlPointShapeProxy

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

func (*ControlPointShapeProxy) ControlPointUpdated

func (p *ControlPointShapeProxy) ControlPointUpdated(controlPoint *svg.ControlPoint)

type ControlPointShapeUnmarshaller

type ControlPointShapeUnmarshaller struct{}

func (*ControlPointShapeUnmarshaller) Initialize

func (u *ControlPointShapeUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*ControlPointShapeUnmarshaller) UnmarshallField

func (u *ControlPointShapeUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type ControlPointShape_WOP

type ControlPointShape_WOP struct {
	Name string

	X_Relative float64

	Y_Relative float64

	IsStartShapeTheClosestShape bool
}

type Desk

type Desk struct {
	Name            string
	SelectedDiagram *Diagram
}

func CopyBranchDesk

func CopyBranchDesk(mapOrigCopy map[any]any, deskFrom *Desk) (deskTo *Desk)

func (*Desk) Checkout

func (desk *Desk) Checkout(stage *Stage) *Desk

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

func (*Desk) Commit

func (desk *Desk) Commit(stage *Stage) *Desk

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

func (*Desk) CommitVoid

func (desk *Desk) CommitVoid(stage *Stage)

func (*Desk) CopyBasicFields

func (from *Desk) CopyBasicFields(to *Desk)

func (*Desk) GetName

func (desk *Desk) GetName() (res string)

for satisfaction of GongStruct interface

func (*Desk) GongClean

func (desk *Desk) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by Desk

func (*Desk) GongCopy

func (desk *Desk) GongCopy() GongstructIF

func (*Desk) GongDiff

func (desk *Desk) GongDiff(stage *Stage, deskOther *Desk) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*Desk) GongGetFieldHeaders

func (desk *Desk) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Desk) GongGetFieldValue

func (desk *Desk) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Desk) GongGetGongstructName

func (desk *Desk) GongGetGongstructName() string

func (*Desk) GongGetIdentifier

func (desk *Desk) GongGetIdentifier(stage *Stage) string

func (*Desk) GongGetOrder

func (desk *Desk) GongGetOrder(stage *Stage) uint

func (*Desk) GongGetReferenceIdentifier

func (desk *Desk) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*Desk) GongGetReverseFieldOwner

func (inst *Desk) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*Desk) GongGetReverseFieldOwnerName

func (inst *Desk) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*Desk) GongMarshallAllFields

func (desk *Desk) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*Desk) GongMarshallField

func (desk *Desk) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Desk) GongMarshallIdentifier

func (desk *Desk) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Desk) GongMarshallUnstaging

func (desk *Desk) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Desk) GongReconstructPointersFromInstances

func (reference *Desk) GongReconstructPointersFromInstances(stage *Stage)

func (*Desk) GongReconstructPointersFromReferences

func (reference *Desk) GongReconstructPointersFromReferences(stage *Stage, instance *Desk)

func (*Desk) GongSetFieldValue

func (desk *Desk) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Desk) SetName

func (desk *Desk) SetName(name string)

for satisfaction of GongStruct interface

func (*Desk) Stage

func (desk *Desk) Stage(stage *Stage) *Desk

Stage puts desk to the model stage

func (*Desk) StagePreserveOrder

func (desk *Desk) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts desk to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.DeskOrder - update stage.DeskOrder accordingly

func (*Desk) StageVoid

func (desk *Desk) StageVoid(stage *Stage)

func (*Desk) Unstage

func (desk *Desk) Unstage(stage *Stage) *Desk

Unstage removes desk off the model stage

func (*Desk) UnstageVoid

func (desk *Desk) UnstageVoid(stage *Stage)

UnstageVoid removes desk off the model stage

type DeskUnmarshaller

type DeskUnmarshaller struct{}

func (*DeskUnmarshaller) Initialize

func (u *DeskUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*DeskUnmarshaller) UnmarshallField

func (u *DeskUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type Desk_WOP

type Desk_WOP struct {
	Name string
}

type Diagram

type Diagram struct {
	Name               string
	MovementShapes     []*MovementShape
	ArtefactTypeShapes []*ArtefactTypeShape
	ArtistShapes       []*ArtistShape
	InfluenceShapes    []*InfluenceShape

	IsEditable bool

	IsNodeExpanded                     bool
	IsMovementCategoryNodeExpanded     bool
	IsArtefactTypeCategoryNodeExpanded bool
	IsArtistCategoryNodeExpanded       bool
	IsInfluenceCategoryNodeExpanded    bool

	IsMovementCategoryShown     bool
	IsArtefactTypeCategoryShown bool
	IsArtistCategoryShown       bool
	IsInfluenceCategoryShown    bool

	StartDate time.Time
	EndDate   time.Time

	DiagramPresentation
}

func CopyBranchDiagram

func CopyBranchDiagram(mapOrigCopy map[any]any, diagramFrom *Diagram) (diagramTo *Diagram)

func (*Diagram) AlignDatesToFiveYears

func (d *Diagram) AlignDatesToFiveYears() bool

AlignDatesToFiveYears updates the diagram's StartDate and EndDate to align with 5-year intervals.

It returns true if either StartDate or EndDate was changed, and false if they were already aligned.

func (*Diagram) Checkout

func (diagram *Diagram) Checkout(stage *Stage) *Diagram

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

func (*Diagram) Commit

func (diagram *Diagram) Commit(stage *Stage) *Diagram

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

func (*Diagram) CommitVoid

func (diagram *Diagram) CommitVoid(stage *Stage)

func (*Diagram) CopyBasicFields

func (from *Diagram) CopyBasicFields(to *Diagram)

func (*Diagram) GetFiveYearTicks

func (d *Diagram) GetFiveYearTicks() []time.Time

GetFiveYearTicks generates a slice of time.Time, starting at StartDate, incrementing by 5 years, and always including EndDate as the final value.

The 5-year steps are relative to the StartDate, not the calendar.

func (*Diagram) GetName

func (diagram *Diagram) GetName() (res string)

for satisfaction of GongStruct interface

func (*Diagram) GongClean

func (diagram *Diagram) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by Diagram

func (*Diagram) GongCopy

func (diagram *Diagram) GongCopy() GongstructIF

func (*Diagram) GongDiff

func (diagram *Diagram) GongDiff(stage *Stage, diagramOther *Diagram) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*Diagram) GongGetFieldHeaders

func (diagram *Diagram) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Diagram) GongGetFieldValue

func (diagram *Diagram) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Diagram) GongGetGongstructName

func (diagram *Diagram) GongGetGongstructName() string

func (*Diagram) GongGetIdentifier

func (diagram *Diagram) GongGetIdentifier(stage *Stage) string

func (*Diagram) GongGetOrder

func (diagram *Diagram) GongGetOrder(stage *Stage) uint

func (*Diagram) GongGetReferenceIdentifier

func (diagram *Diagram) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*Diagram) GongGetReverseFieldOwner

func (inst *Diagram) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*Diagram) GongGetReverseFieldOwnerName

func (inst *Diagram) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*Diagram) GongMarshallAllFields

func (diagram *Diagram) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*Diagram) GongMarshallField

func (diagram *Diagram) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Diagram) GongMarshallIdentifier

func (diagram *Diagram) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Diagram) GongMarshallUnstaging

func (diagram *Diagram) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Diagram) GongReconstructPointersFromInstances

func (reference *Diagram) GongReconstructPointersFromInstances(stage *Stage)

func (*Diagram) GongReconstructPointersFromReferences

func (reference *Diagram) GongReconstructPointersFromReferences(stage *Stage, instance *Diagram)

func (*Diagram) GongSetFieldValue

func (diagram *Diagram) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Diagram) SetName

func (diagram *Diagram) SetName(name string)

for satisfaction of GongStruct interface

func (*Diagram) Stage

func (diagram *Diagram) Stage(stage *Stage) *Diagram

Stage puts diagram to the model stage

func (*Diagram) StagePreserveOrder

func (diagram *Diagram) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts diagram to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.DiagramOrder - update stage.DiagramOrder accordingly

func (*Diagram) StageVoid

func (diagram *Diagram) StageVoid(stage *Stage)

func (*Diagram) Unstage

func (diagram *Diagram) Unstage(stage *Stage) *Diagram

Unstage removes diagram off the model stage

func (*Diagram) UnstageVoid

func (diagram *Diagram) UnstageVoid(stage *Stage)

UnstageVoid removes diagram off the model stage

type DiagramNodeProxy

type DiagramNodeProxy struct {
	Diagram *Diagram
	Node    *tree.Node
	// contains filtered or unexported fields
}

func (*DiagramNodeProxy) OnAfterUpdate

func (d *DiagramNodeProxy) OnAfterUpdate(stage *tree.Stage, stagedNode *tree.Node, frontNode *tree.Node)

OnAfterUpdate implements models.NodeImplInterface.

type DiagramPresentation

type DiagramPresentation struct {
	XMargin float64
	YMargin float64

	Height                  float64
	NextVerticalDateXMargin float64

	RedColorCode            string
	BackgroundGreyColorCode string
	GrayColorCode           string

	BottomBoxYOffset         float64
	BottomBoxWidth           float64
	BottomBoxHeigth          float64
	BottomBoxFontSize        string
	BottomBoxFontWeigth      string
	BottomBoxFontFamily      string
	BottomBoxLetterSpacing   string
	BottomBoxLetterColorCode string

	MovementRectAnchorType       RectAnchorType
	MovementTextAnchorType       TextAnchorType
	MovementDominantBaselineType DominantBaselineType
	MovementFontSize             string
	MajorMovementFontSize        string
	MinorMovementFontSize        string
	MovementFontWeigth           string
	MovementFontFamily           string
	MovementLetterSpacing        string

	AbstractMovementFontSize       string
	AbstractMovementRectAnchorType RectAnchorType
	AbstractMovementTextAnchorType TextAnchorType
	AbstractDominantBaselineType   DominantBaselineType

	MovementDateRectAnchorType           RectAnchorType
	MovementDateTextAnchorType           TextAnchorType
	MovementDateTextDominantBaselineType DominantBaselineType
	MovementDateAndPlacesFontSize        string
	MovementDateAndPlacesFontWeigth      string
	MovementDateAndPlacesFontFamily      string
	MovementDateAndPlacesLetterSpacing   string

	MovementBelowArcY_Offset         float64
	MovementBelowArcY_OffsetPerPlace float64

	MovementPlacesRectAnchorType       RectAnchorType
	MovementPlacesTextAnchorType       TextAnchorType
	MovementPlacesDominantBaselineType DominantBaselineType

	ArtefactTypeFontSize      string
	ArtefactTypeFontWeigth    string
	ArtefactTypeFontFamily    string
	ArtefactTypeLetterSpacing string

	ArtefactTypeRectAnchorType   RectAnchorType
	ArtefactDominantBaselineType DominantBaselineType
	ArtefactTypeStrokeWidth      float64

	ArtistRectAnchorType       RectAnchorType
	ArtistTextAnchorType       TextAnchorType
	ArtistDominantBaselineType DominantBaselineType
	ArtistFontSize             string
	MajorArtistFontSize        string
	MinorArtistFontSize        string
	ArtistFontWeigth           string
	ArtistFontFamily           string
	ArtistLetterSpacing        string

	ArtistDateRectAnchorType         RectAnchorType
	ArtistDateTextAnchorType         TextAnchorType
	ArtistDateDominantBaselineType   DominantBaselineType
	ArtistDateAndPlacesFontSize      string
	ArtistDateAndPlacesFontWeigth    string
	ArtistDateAndPlacesFontFamily    string
	ArtistDateAndPlacesLetterSpacing string

	ArtistPlacesRectAnchorType       RectAnchorType
	ArtistPlacesTextAnchorType       TextAnchorType
	ArtistPlacesDominantBaselineType DominantBaselineType

	InfluenceArrowSize        float64
	InfluenceArrowStartOffset float64
	InfluenceArrowEndOffset   float64
	InfluenceCornerRadius     float64

	InfluenceDashedLinePattern string
}

type DiagramUnmarshaller

type DiagramUnmarshaller struct{}

func (*DiagramUnmarshaller) Initialize

func (u *DiagramUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*DiagramUnmarshaller) UnmarshallField

func (u *DiagramUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type Diagram_WOP

type Diagram_WOP struct {
	Name string

	IsEditable bool

	IsNodeExpanded bool

	IsMovementCategoryNodeExpanded bool

	IsArtefactTypeCategoryNodeExpanded bool

	IsArtistCategoryNodeExpanded bool

	IsInfluenceCategoryNodeExpanded bool

	IsMovementCategoryShown bool

	IsArtefactTypeCategoryShown bool

	IsArtistCategoryShown bool

	IsInfluenceCategoryShown bool

	StartDate time.Time

	EndDate time.Time

	XMargin float64

	YMargin float64

	Height float64

	NextVerticalDateXMargin float64

	RedColorCode string

	BackgroundGreyColorCode string

	GrayColorCode string

	BottomBoxYOffset float64

	BottomBoxWidth float64

	BottomBoxHeigth float64

	BottomBoxFontSize string

	BottomBoxFontWeigth string

	BottomBoxFontFamily string

	BottomBoxLetterSpacing string

	BottomBoxLetterColorCode string

	MovementRectAnchorType RectAnchorType

	MovementTextAnchorType TextAnchorType

	MovementDominantBaselineType DominantBaselineType

	MovementFontSize string

	MajorMovementFontSize string

	MinorMovementFontSize string

	MovementFontWeigth string

	MovementFontFamily string

	MovementLetterSpacing string

	AbstractMovementFontSize string

	AbstractMovementRectAnchorType RectAnchorType

	AbstractMovementTextAnchorType TextAnchorType

	AbstractDominantBaselineType DominantBaselineType

	MovementDateRectAnchorType RectAnchorType

	MovementDateTextAnchorType TextAnchorType

	MovementDateTextDominantBaselineType DominantBaselineType

	MovementDateAndPlacesFontSize string

	MovementDateAndPlacesFontWeigth string

	MovementDateAndPlacesFontFamily string

	MovementDateAndPlacesLetterSpacing string

	MovementBelowArcY_Offset float64

	MovementBelowArcY_OffsetPerPlace float64

	MovementPlacesRectAnchorType RectAnchorType

	MovementPlacesTextAnchorType TextAnchorType

	MovementPlacesDominantBaselineType DominantBaselineType

	ArtefactTypeFontSize string

	ArtefactTypeFontWeigth string

	ArtefactTypeFontFamily string

	ArtefactTypeLetterSpacing string

	ArtefactTypeRectAnchorType RectAnchorType

	ArtefactDominantBaselineType DominantBaselineType

	ArtefactTypeStrokeWidth float64

	ArtistRectAnchorType RectAnchorType

	ArtistTextAnchorType TextAnchorType

	ArtistDominantBaselineType DominantBaselineType

	ArtistFontSize string

	MajorArtistFontSize string

	MinorArtistFontSize string

	ArtistFontWeigth string

	ArtistFontFamily string

	ArtistLetterSpacing string

	ArtistDateRectAnchorType RectAnchorType

	ArtistDateTextAnchorType TextAnchorType

	ArtistDateDominantBaselineType DominantBaselineType

	ArtistDateAndPlacesFontSize string

	ArtistDateAndPlacesFontWeigth string

	ArtistDateAndPlacesFontFamily string

	ArtistDateAndPlacesLetterSpacing string

	ArtistPlacesRectAnchorType RectAnchorType

	ArtistPlacesTextAnchorType TextAnchorType

	ArtistPlacesDominantBaselineType DominantBaselineType

	InfluenceArrowSize float64

	InfluenceArrowStartOffset float64

	InfluenceArrowEndOffset float64

	InfluenceCornerRadius float64

	InfluenceDashedLinePattern string
}

type DominantBaselineType

type DominantBaselineType string
const (
	// auto: (Default)
	// If this property occurs on a <text> element, the computed value depends on the writing-mode.
	// - If horizontal, the dominant-baseline component is 'alphabetic'.
	// - If vertical, the dominant-baseline component is 'central'.
	//
	// If on a <tspan> or <textPath>, it remains the same as the parent.
	// If there is no parent text content element, it's computed as for <text>.
	DominantBaselineAuto DominantBaselineType = "auto"

	// alphabetic:
	// The baseline-identifier for the dominant-baseline is set to be 'alphabetic'.
	// The derived baseline-table is constructed using the 'alphabetic' baseline-table in the font.
	// The baseline-table font-size is changed to the value of the font-size attribute.
	DominantBaselineAlphabetic DominantBaselineType = "alphabetic"

	// ideographic:
	// The baseline-identifier for the dominant-baseline is set to be 'ideographic'.
	// The derived baseline-table is constructed using the 'ideographic' baseline-table in the font.
	// The baseline-table font-size is changed to the value of the font-size attribute.
	DominantBaselineIdeographic DominantBaselineType = "ideographic"

	// hanging:
	// The baseline-identifier for the dominant-baseline is set to be 'hanging'.
	// The derived baseline-table is constructed using the 'hanging' baseline-table in the font.
	// The baseline-table font-size is changed to the value of the font-size attribute.
	DominantBaselineHanging DominantBaselineType = "hanging"

	// mathematical:
	// The baseline-identifier for the dominant-baseline is set to be 'mathematical'.
	// The derived baseline-table is constructed using the 'mathematical' baseline-table in the font.
	// The baseline-table font-size is changed to the value of the font-size attribute.
	DominantBaselineMathematical DominantBaselineType = "mathematical"

	// central:
	// The baseline-identifier for the dominant-baseline is set to be 'central'.
	// The derived baseline-table is constructed from a font baseline-table chosen using the
	// following priority order: 'ideographic', 'alphabetic', 'hanging', 'mathematical'.
	// The baseline-table font-size is changed to the value of the font-size attribute.
	DominantBaselineCentral DominantBaselineType = "central"

	// middle:
	// The baseline-identifier for the dominant-baseline is set to be 'middle'.
	// The derived baseline-table is constructed from a font baseline-table chosen using the
	// following priority order: 'alphabetic', 'ideographic', 'hanging', 'mathematical'.
	// The baseline-table font-size is changed to the value of the font-size attribute.
	DominantBaselineMiddle DominantBaselineType = "middle"

	// text-after-edge:
	// The baseline-identifier for the dominant-baseline is set to be 'text-after-edge'.
	// The choice of which font baseline-table to use is browser dependent.
	// The baseline-table font-size is changed to the value of the font-size attribute.
	DominantBaselineTextAfterEdge DominantBaselineType = "text-after-edge"

	// text-before-edge:
	// The baseline-identifier for the dominant-baseline is set to be 'text-before-edge'.
	// The choice of which font baseline-table to use is browser dependent.
	// The baseline-table font-size is changed to the value of the font-size attribute.
	DominantBaselineTextBeforeEdge DominantBaselineType = "text-before-edge"

	// text-top:
	// This value uses the top of the em box as the baseline.
	DominantBaselineTextTop DominantBaselineType = "text-top"

	// use-script: [Deprecated]
	// The dominant-baseline and baseline-table are set by determining the predominant script.
	// The writing-mode selects the appropriate baseline-tables, and the dominant baseline
	// selects the table that corresponds to that baseline.
	DominantBaselineUseScript DominantBaselineType = "use-script"

	// no-change: [Deprecated]
	// The dominant-baseline, the baseline-table, and the baseline-table font-size
	// remain the same as that of the parent text content element.
	DominantBaselineNoChange DominantBaselineType = "no-change"

	// reset-size: [Deprecated]
	// The dominant-baseline and the baseline-table remain the same, but the
	// baseline-table font-size is changed to the value of the font-size attribute on this element.
	DominantBaselineResetSize DominantBaselineType = "reset-size"
)

func (DominantBaselineType) CodeValues

func (dominantbaselinetype DominantBaselineType) CodeValues() (res []string)

func (DominantBaselineType) Codes

func (dominantbaselinetype DominantBaselineType) Codes() (res []string)

func (*DominantBaselineType) FromCodeString

func (dominantbaselinetype *DominantBaselineType) FromCodeString(input string) (err error)

func (*DominantBaselineType) FromString

func (dominantbaselinetype *DominantBaselineType) FromString(input string) (err error)

func (*DominantBaselineType) ToCodeString

func (dominantbaselinetype *DominantBaselineType) ToCodeString() (res string)

func (DominantBaselineType) ToString

func (dominantbaselinetype DominantBaselineType) ToString() (res string)

insertion point of enum utility functions Utility function for DominantBaselineType 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 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 FileToUploadProxy

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

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 GongFieldHeader

type GongFieldHeader struct {
	Name string
	GongFieldValueType
	TargetGongstructName string
}

func GetFieldsFromPointer

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

GetFieldsFromPointer return the array of the fields

type GongFieldValue

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

func GetFieldStringValueFromPointer

func GetFieldStringValueFromPointer(instance GongstructIF, fieldName string, stage *Stage) (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"
	GongFieldValueTypeIntDuration     GongFieldValueType = "GongFieldValueTypeIntDuration"
	GongFieldValueTypeFloat           GongFieldValueType = "GongFieldValueTypeFloat"
	GongFieldValueTypeBool            GongFieldValueType = "GongFieldValueTypeBool"
	GongFieldValueTypeString          GongFieldValueType = "GongFieldValueTypeString"
	GongFieldValueTypeBasicKind       GongFieldValueType = "GongFieldValueTypeBasicKind"
	GongFieldValueTypePointer         GongFieldValueType = "GongFieldValueTypePointer"
	GongFieldValueTypeSliceOfPointers GongFieldValueType = "GongFieldValueTypeSliceOfPointers"
)

type GongNodeIF

type GongNodeIF interface {
}

type GongStructInterface

type GongStructInterface interface {
	GetName() (res string)
	// GetID() (res int)
	// GetFields() (res []string)
	// GetFieldStringValue(fieldName string) (res string)
	GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error
	GongGetGongstructName() string
}

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

type Gong__MouseEvent

type Gong__MouseEvent struct {
	ShiftKey bool
}

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
	Codes() []string
	CodeValues() []int
}

type GongstructEnumStringField

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

type GongstructIF

type GongstructIF interface {
	GetName() string
	SetName(string)
	CommitVoid(*Stage)
	StageVoid(*Stage)
	UnstageVoid(stage *Stage)
	GongGetFieldHeaders() []GongFieldHeader
	GongClean(stage *Stage) (modified bool)
	GongGetFieldValue(fieldName string, stage *Stage) GongFieldValue
	GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error
	GongGetGongstructName() string
	GongGetOrder(stage *Stage) uint
	GongGetReferenceIdentifier(stage *Stage) string
	GongGetIdentifier(stage *Stage) string
	GongCopy() GongstructIF
	GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) string
	GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) GongstructIF
}

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 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 Influence

type Influence struct {
	Name string

	SourceMovement     *Movement
	SourceArtefactType *ArtefactType
	SourceArtist       *Artist

	TargetMovement     *Movement
	TargetArtefactType *ArtefactType
	TargetArtist       *Artist

	// hypothetical, some influences are with ashed lines
	// For instance, Marchine Art to Brancusi (indeed)
	IsHypothtical bool
	// contains filtered or unexported fields
}

An Influence is between one Artist/Movement/ArtefactType and another

since gong does not yet support interface, one have to mutliply source/target types

func CopyBranchInfluence

func CopyBranchInfluence(mapOrigCopy map[any]any, influenceFrom *Influence) (influenceTo *Influence)

func (*Influence) Checkout

func (influence *Influence) Checkout(stage *Stage) *Influence

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

func (*Influence) Commit

func (influence *Influence) Commit(stage *Stage) *Influence

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

func (*Influence) CommitVoid

func (influence *Influence) CommitVoid(stage *Stage)

func (*Influence) CopyBasicFields

func (from *Influence) CopyBasicFields(to *Influence)

func (*Influence) GetName

func (influence *Influence) GetName() (res string)

for satisfaction of GongStruct interface

func (*Influence) GongClean

func (influence *Influence) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by Influence

func (*Influence) GongCopy

func (influence *Influence) GongCopy() GongstructIF

func (*Influence) GongDiff

func (influence *Influence) GongDiff(stage *Stage, influenceOther *Influence) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*Influence) GongGetFieldHeaders

func (influence *Influence) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Influence) GongGetFieldValue

func (influence *Influence) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Influence) GongGetGongstructName

func (influence *Influence) GongGetGongstructName() string

func (*Influence) GongGetIdentifier

func (influence *Influence) GongGetIdentifier(stage *Stage) string

func (*Influence) GongGetOrder

func (influence *Influence) GongGetOrder(stage *Stage) uint

func (*Influence) GongGetReferenceIdentifier

func (influence *Influence) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*Influence) GongGetReverseFieldOwner

func (inst *Influence) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*Influence) GongGetReverseFieldOwnerName

func (inst *Influence) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*Influence) GongMarshallAllFields

func (influence *Influence) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*Influence) GongMarshallField

func (influence *Influence) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Influence) GongMarshallIdentifier

func (influence *Influence) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Influence) GongMarshallUnstaging

func (influence *Influence) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Influence) GongReconstructPointersFromInstances

func (reference *Influence) GongReconstructPointersFromInstances(stage *Stage)

func (*Influence) GongReconstructPointersFromReferences

func (reference *Influence) GongReconstructPointersFromReferences(stage *Stage, instance *Influence)

func (*Influence) GongSetFieldValue

func (influence *Influence) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Influence) SetName

func (influence *Influence) SetName(name string)

for satisfaction of GongStruct interface

func (*Influence) Stage

func (influence *Influence) Stage(stage *Stage) *Influence

Stage puts influence to the model stage

func (*Influence) StagePreserveOrder

func (influence *Influence) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts influence to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.InfluenceOrder - update stage.InfluenceOrder accordingly

func (*Influence) StageVoid

func (influence *Influence) StageVoid(stage *Stage)

func (*Influence) Unstage

func (influence *Influence) Unstage(stage *Stage) *Influence

Unstage removes influence off the model stage

func (*Influence) UnstageVoid

func (influence *Influence) UnstageVoid(stage *Stage)

UnstageVoid removes influence off the model stage

type InfluenceNodeProxy

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

func (*InfluenceNodeProxy) OnAfterUpdate

func (d *InfluenceNodeProxy) OnAfterUpdate(stage *tree.Stage, stagedNode *tree.Node, frontNode *tree.Node)

OnAfterUpdate implements models.NodeImplInterface.

type InfluenceShape

type InfluenceShape struct {
	Name      string
	Influence *Influence

	ControlPointShapes []*ControlPointShape
}

func CopyBranchInfluenceShape

func CopyBranchInfluenceShape(mapOrigCopy map[any]any, influenceshapeFrom *InfluenceShape) (influenceshapeTo *InfluenceShape)

func (*InfluenceShape) Checkout

func (influenceshape *InfluenceShape) Checkout(stage *Stage) *InfluenceShape

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

func (*InfluenceShape) Commit

func (influenceshape *InfluenceShape) Commit(stage *Stage) *InfluenceShape

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

func (*InfluenceShape) CommitVoid

func (influenceshape *InfluenceShape) CommitVoid(stage *Stage)

func (*InfluenceShape) CopyBasicFields

func (from *InfluenceShape) CopyBasicFields(to *InfluenceShape)

func (*InfluenceShape) GetArtElement

func (shape *InfluenceShape) GetArtElement() *Influence

func (*InfluenceShape) GetName

func (influenceshape *InfluenceShape) GetName() (res string)

for satisfaction of GongStruct interface

func (*InfluenceShape) GongClean

func (influenceshape *InfluenceShape) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by InfluenceShape

func (*InfluenceShape) GongCopy

func (influenceshape *InfluenceShape) GongCopy() GongstructIF

func (*InfluenceShape) GongDiff

func (influenceshape *InfluenceShape) GongDiff(stage *Stage, influenceshapeOther *InfluenceShape) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*InfluenceShape) GongGetFieldHeaders

func (influenceshape *InfluenceShape) GongGetFieldHeaders() (res []GongFieldHeader)

func (*InfluenceShape) GongGetFieldValue

func (influenceshape *InfluenceShape) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*InfluenceShape) GongGetGongstructName

func (influenceshape *InfluenceShape) GongGetGongstructName() string

func (*InfluenceShape) GongGetIdentifier

func (influenceshape *InfluenceShape) GongGetIdentifier(stage *Stage) string

func (*InfluenceShape) GongGetOrder

func (influenceshape *InfluenceShape) GongGetOrder(stage *Stage) uint

func (*InfluenceShape) GongGetReferenceIdentifier

func (influenceshape *InfluenceShape) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*InfluenceShape) GongGetReverseFieldOwner

func (inst *InfluenceShape) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*InfluenceShape) GongGetReverseFieldOwnerName

func (inst *InfluenceShape) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*InfluenceShape) GongMarshallAllFields

func (influenceshape *InfluenceShape) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*InfluenceShape) GongMarshallField

func (influenceshape *InfluenceShape) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*InfluenceShape) GongMarshallIdentifier

func (influenceshape *InfluenceShape) GongMarshallIdentifier(stage *Stage) (decl string)

func (*InfluenceShape) GongMarshallUnstaging

func (influenceshape *InfluenceShape) GongMarshallUnstaging(stage *Stage) (decl string)

func (*InfluenceShape) GongReconstructPointersFromInstances

func (reference *InfluenceShape) GongReconstructPointersFromInstances(stage *Stage)

func (*InfluenceShape) GongReconstructPointersFromReferences

func (reference *InfluenceShape) GongReconstructPointersFromReferences(stage *Stage, instance *InfluenceShape)

func (*InfluenceShape) GongSetFieldValue

func (influenceshape *InfluenceShape) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*InfluenceShape) SetName

func (influenceshape *InfluenceShape) SetName(name string)

for satisfaction of GongStruct interface

func (*InfluenceShape) Stage

func (influenceshape *InfluenceShape) Stage(stage *Stage) *InfluenceShape

Stage puts influenceshape to the model stage

func (*InfluenceShape) StagePreserveOrder

func (influenceshape *InfluenceShape) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts influenceshape to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.InfluenceShapeOrder - update stage.InfluenceShapeOrder accordingly

func (*InfluenceShape) StageVoid

func (influenceshape *InfluenceShape) StageVoid(stage *Stage)

func (*InfluenceShape) Unstage

func (influenceshape *InfluenceShape) Unstage(stage *Stage) *InfluenceShape

Unstage removes influenceshape off the model stage

func (*InfluenceShape) UnstageVoid

func (influenceshape *InfluenceShape) UnstageVoid(stage *Stage)

UnstageVoid removes influenceshape off the model stage

type InfluenceShapeProxy

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

func (*InfluenceShapeProxy) LinkUpdated

func (p *InfluenceShapeProxy) LinkUpdated(updatedLink *svg.Link)

type InfluenceShapeUnmarshaller

type InfluenceShapeUnmarshaller struct{}

func (*InfluenceShapeUnmarshaller) Initialize

func (u *InfluenceShapeUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*InfluenceShapeUnmarshaller) UnmarshallField

func (u *InfluenceShapeUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type InfluenceShape_WOP

type InfluenceShape_WOP struct {
	Name string
}

type InfluenceUnmarshaller

type InfluenceUnmarshaller struct{}

func (*InfluenceUnmarshaller) Initialize

func (u *InfluenceUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*InfluenceUnmarshaller) UnmarshallField

func (u *InfluenceUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type Influence_WOP

type Influence_WOP struct {
	Name string

	IsHypothtical bool
}

type ModelUnmarshaller

type ModelUnmarshaller interface {
	// Initialize creates the struct, stages it, and returns the pointer as 'any'
	Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

	// UnmarshallField sets a field's value based on the AST expression
	UnmarshallField(stage *Stage, instance GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error
}

ModelUnmarshaller abstracts the logic for setting fields on a staged instance

type Movement

type Movement struct {
	Name   string
	Date   time.Time
	Places []*Place

	IsAbstract bool // some mouvements are abstracts

	// the "Modern" in "Modern Architecture" is rendered above.
	// We surmise this is a Alfred Barr"s intentional caterogy choice
	IsModern bool

	IsMajor bool // cubism
	IsMinor bool // orphism

	// For DE STILJ and NEOPLATICISM, the
	// rendering is different the "and" is in lower cases
	// and NEOPLATICISM is on the next line
	// So, for this movement, the
	// Name is "DE STILJ" and the AdditionnalName
	// AdditionnalName is NEOPLATICISM
	AdditionnalName string

	// NON GEOMETRICAL and GEOMTRICAL ABSRTACT ART
	// have no dates shown
	HideDate bool
}

func CopyBranchMovement

func CopyBranchMovement(mapOrigCopy map[any]any, movementFrom *Movement) (movementTo *Movement)

func (*Movement) Checkout

func (movement *Movement) Checkout(stage *Stage) *Movement

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

func (*Movement) Commit

func (movement *Movement) Commit(stage *Stage) *Movement

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

func (*Movement) CommitVoid

func (movement *Movement) CommitVoid(stage *Stage)

func (*Movement) CopyBasicFields

func (from *Movement) CopyBasicFields(to *Movement)

func (*Movement) GetName

func (movement *Movement) GetName() (res string)

for satisfaction of GongStruct interface

func (*Movement) GongClean

func (movement *Movement) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by Movement

func (*Movement) GongCopy

func (movement *Movement) GongCopy() GongstructIF

func (*Movement) GongDiff

func (movement *Movement) GongDiff(stage *Stage, movementOther *Movement) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*Movement) GongGetFieldHeaders

func (movement *Movement) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Movement) GongGetFieldValue

func (movement *Movement) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Movement) GongGetGongstructName

func (movement *Movement) GongGetGongstructName() string

func (*Movement) GongGetIdentifier

func (movement *Movement) GongGetIdentifier(stage *Stage) string

func (*Movement) GongGetOrder

func (movement *Movement) GongGetOrder(stage *Stage) uint

func (*Movement) GongGetReferenceIdentifier

func (movement *Movement) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*Movement) GongGetReverseFieldOwner

func (inst *Movement) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*Movement) GongGetReverseFieldOwnerName

func (inst *Movement) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*Movement) GongMarshallAllFields

func (movement *Movement) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*Movement) GongMarshallField

func (movement *Movement) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Movement) GongMarshallIdentifier

func (movement *Movement) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Movement) GongMarshallUnstaging

func (movement *Movement) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Movement) GongReconstructPointersFromInstances

func (reference *Movement) GongReconstructPointersFromInstances(stage *Stage)

func (*Movement) GongReconstructPointersFromReferences

func (reference *Movement) GongReconstructPointersFromReferences(stage *Stage, instance *Movement)

func (*Movement) GongSetFieldValue

func (movement *Movement) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Movement) IsArtElement

func (*Movement) IsArtElement()

func (*Movement) SetName

func (movement *Movement) SetName(name string)

for satisfaction of GongStruct interface

func (*Movement) Stage

func (movement *Movement) Stage(stage *Stage) *Movement

Stage puts movement to the model stage

func (*Movement) StagePreserveOrder

func (movement *Movement) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts movement to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.MovementOrder - update stage.MovementOrder accordingly

func (*Movement) StageVoid

func (movement *Movement) StageVoid(stage *Stage)

func (*Movement) Unstage

func (movement *Movement) Unstage(stage *Stage) *Movement

Unstage removes movement off the model stage

func (*Movement) UnstageVoid

func (movement *Movement) UnstageVoid(stage *Stage)

UnstageVoid removes movement off the model stage

type MovementNodeProxy

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

func (*MovementNodeProxy) OnAfterUpdate

func (d *MovementNodeProxy) OnAfterUpdate(stage *tree.Stage, stagedNode *tree.Node, frontNode *tree.Node)

OnAfterUpdate implements models.NodeImplInterface.

type MovementShape

type MovementShape struct {
	Name     string
	Movement *Movement

	X, Y float64

	Width, Height float64
}

func CopyBranchMovementShape

func CopyBranchMovementShape(mapOrigCopy map[any]any, movementshapeFrom *MovementShape) (movementshapeTo *MovementShape)

func (*MovementShape) Checkout

func (movementshape *MovementShape) Checkout(stage *Stage) *MovementShape

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

func (*MovementShape) Commit

func (movementshape *MovementShape) Commit(stage *Stage) *MovementShape

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

func (*MovementShape) CommitVoid

func (movementshape *MovementShape) CommitVoid(stage *Stage)

func (*MovementShape) CopyBasicFields

func (from *MovementShape) CopyBasicFields(to *MovementShape)

func (*MovementShape) GetArtElement

func (shape *MovementShape) GetArtElement() *Movement

func (*MovementShape) GetName

func (movementshape *MovementShape) GetName() (res string)

for satisfaction of GongStruct interface

func (*MovementShape) GongClean

func (movementshape *MovementShape) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by MovementShape

func (*MovementShape) GongCopy

func (movementshape *MovementShape) GongCopy() GongstructIF

func (*MovementShape) GongDiff

func (movementshape *MovementShape) GongDiff(stage *Stage, movementshapeOther *MovementShape) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*MovementShape) GongGetFieldHeaders

func (movementshape *MovementShape) GongGetFieldHeaders() (res []GongFieldHeader)

func (*MovementShape) GongGetFieldValue

func (movementshape *MovementShape) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*MovementShape) GongGetGongstructName

func (movementshape *MovementShape) GongGetGongstructName() string

func (*MovementShape) GongGetIdentifier

func (movementshape *MovementShape) GongGetIdentifier(stage *Stage) string

func (*MovementShape) GongGetOrder

func (movementshape *MovementShape) GongGetOrder(stage *Stage) uint

func (*MovementShape) GongGetReferenceIdentifier

func (movementshape *MovementShape) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*MovementShape) GongGetReverseFieldOwner

func (inst *MovementShape) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*MovementShape) GongGetReverseFieldOwnerName

func (inst *MovementShape) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*MovementShape) GongMarshallAllFields

func (movementshape *MovementShape) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*MovementShape) GongMarshallField

func (movementshape *MovementShape) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*MovementShape) GongMarshallIdentifier

func (movementshape *MovementShape) GongMarshallIdentifier(stage *Stage) (decl string)

func (*MovementShape) GongMarshallUnstaging

func (movementshape *MovementShape) GongMarshallUnstaging(stage *Stage) (decl string)

func (*MovementShape) GongReconstructPointersFromInstances

func (reference *MovementShape) GongReconstructPointersFromInstances(stage *Stage)

func (*MovementShape) GongReconstructPointersFromReferences

func (reference *MovementShape) GongReconstructPointersFromReferences(stage *Stage, instance *MovementShape)

func (*MovementShape) GongSetFieldValue

func (movementshape *MovementShape) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*MovementShape) SetName

func (movementshape *MovementShape) SetName(name string)

for satisfaction of GongStruct interface

func (*MovementShape) Stage

func (movementshape *MovementShape) Stage(stage *Stage) *MovementShape

Stage puts movementshape to the model stage

func (*MovementShape) StagePreserveOrder

func (movementshape *MovementShape) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts movementshape to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.MovementShapeOrder - update stage.MovementShapeOrder accordingly

func (*MovementShape) StageVoid

func (movementshape *MovementShape) StageVoid(stage *Stage)

func (*MovementShape) Unstage

func (movementshape *MovementShape) Unstage(stage *Stage) *MovementShape

Unstage removes movementshape off the model stage

func (*MovementShape) UnstageVoid

func (movementshape *MovementShape) UnstageVoid(stage *Stage)

UnstageVoid removes movementshape off the model stage

type MovementShapeProxy

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

func (*MovementShapeProxy) RectUpdated

func (p *MovementShapeProxy) RectUpdated(updatedRect *svg.Rect)

type MovementShapeUnmarshaller

type MovementShapeUnmarshaller struct{}

func (*MovementShapeUnmarshaller) Initialize

func (u *MovementShapeUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*MovementShapeUnmarshaller) UnmarshallField

func (u *MovementShapeUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type MovementShape_WOP

type MovementShape_WOP struct {
	Name string

	X float64

	Y float64

	Width float64

	Height float64
}

type MovementUnmarshaller

type MovementUnmarshaller struct{}

func (*MovementUnmarshaller) Initialize

func (u *MovementUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*MovementUnmarshaller) UnmarshallField

func (u *MovementUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type Movement_WOP

type Movement_WOP struct {
	Name string

	Date time.Time

	IsAbstract bool

	IsModern bool

	IsMajor bool

	IsMinor bool

	AdditionnalName string

	HideDate bool
}

type NamedStruct

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

func (*NamedStruct) GetName

func (namedStruct *NamedStruct) GetName() string

type OnAfterCreateInterface

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

OnAfterCreateInterface callback when an instance is updated from the front

type OnAfterDeleteInterface

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

OnAfterDeleteInterface callback when an instance is updated from the front

type OnAfterReadInterface

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

OnAfterReadInterface callback when an instance is updated from the front

type OnAfterUpdateInterface

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

OnAfterUpdateInterface callback when an instance is updated from the front

type OnInitCommitInterface

type OnInitCommitInterface interface {
	BeforeCommit(stage *Stage)
}

type OrientationType

type OrientationType string
const (
	ORIENTATION_HORIZONTAL OrientationType = "ORIENTATION_HORIZONTAL"
	ORIENTATION_VERTICAL   OrientationType = "ORIENTATION_VERTICAL"
)

values for EnumType

func (OrientationType) CodeValues

func (orientationtype OrientationType) CodeValues() (res []string)

func (OrientationType) Codes

func (orientationtype OrientationType) Codes() (res []string)

func (*OrientationType) FromCodeString

func (orientationtype *OrientationType) FromCodeString(input string) (err error)

func (*OrientationType) FromString

func (orientationtype *OrientationType) FromString(input string) (err error)

func (*OrientationType) ToCodeString

func (orientationtype *OrientationType) ToCodeString() (res string)

func (OrientationType) ToString

func (orientationtype OrientationType) ToString() (res string)

Utility function for OrientationType 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 Place

type Place struct {
	Name string
}

func CopyBranchPlace

func CopyBranchPlace(mapOrigCopy map[any]any, placeFrom *Place) (placeTo *Place)

func (*Place) Checkout

func (place *Place) Checkout(stage *Stage) *Place

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

func (*Place) Commit

func (place *Place) Commit(stage *Stage) *Place

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

func (*Place) CommitVoid

func (place *Place) CommitVoid(stage *Stage)

func (*Place) CopyBasicFields

func (from *Place) CopyBasicFields(to *Place)

func (*Place) GetName

func (place *Place) GetName() (res string)

for satisfaction of GongStruct interface

func (*Place) GongClean

func (place *Place) GongClean(stage *Stage) (modified bool)

Clean garbage collect unstaged instances that are referenced by Place

func (*Place) GongCopy

func (place *Place) GongCopy() GongstructIF

func (*Place) GongDiff

func (place *Place) GongDiff(stage *Stage, placeOther *Place) (diffs []string)

GongDiff computes the diff between the instance and another instance of same gong struct type and returns the list of differences as strings

func (*Place) GongGetFieldHeaders

func (place *Place) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Place) GongGetFieldValue

func (place *Place) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Place) GongGetGongstructName

func (place *Place) GongGetGongstructName() string

func (*Place) GongGetIdentifier

func (place *Place) GongGetIdentifier(stage *Stage) string

func (*Place) GongGetOrder

func (place *Place) GongGetOrder(stage *Stage) uint

func (*Place) GongGetReferenceIdentifier

func (place *Place) GongGetReferenceIdentifier(stage *Stage) string

GongGetReferenceIdentifier returns an identifier when it was staged (it may have been unstaged since)

func (*Place) GongGetReverseFieldOwner

func (inst *Place) GongGetReverseFieldOwner(stage *Stage, reverseField *ReverseField) (res GongstructIF)

func (*Place) GongGetReverseFieldOwnerName

func (inst *Place) GongGetReverseFieldOwnerName(stage *Stage, reverseField *ReverseField) (res string)

func (*Place) GongMarshallAllFields

func (place *Place) GongMarshallAllFields(stage *Stage) (initRes string, ptrRes string)

func (*Place) GongMarshallField

func (place *Place) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Place) GongMarshallIdentifier

func (place *Place) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Place) GongMarshallUnstaging

func (place *Place) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Place) GongReconstructPointersFromInstances

func (reference *Place) GongReconstructPointersFromInstances(stage *Stage)

func (*Place) GongReconstructPointersFromReferences

func (reference *Place) GongReconstructPointersFromReferences(stage *Stage, instance *Place)

func (*Place) GongSetFieldValue

func (place *Place) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Place) SetName

func (place *Place) SetName(name string)

for satisfaction of GongStruct interface

func (*Place) Stage

func (place *Place) Stage(stage *Stage) *Place

Stage puts place to the model stage

func (*Place) StagePreserveOrder

func (place *Place) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts place to the model stage, and if the astrtuct was not staged before:

- force the order if the order is equal or greater than the stage.PlaceOrder - update stage.PlaceOrder accordingly

func (*Place) StageVoid

func (place *Place) StageVoid(stage *Stage)

func (*Place) Unstage

func (place *Place) Unstage(stage *Stage) *Place

Unstage removes place off the model stage

func (*Place) UnstageVoid

func (place *Place) UnstageVoid(stage *Stage)

UnstageVoid removes place off the model stage

type PlaceUnmarshaller

type PlaceUnmarshaller struct{}

func (*PlaceUnmarshaller) Initialize

func (u *PlaceUnmarshaller) Initialize(stage *Stage, identifier string, instanceName string, preserveOrder bool) (GongstructIF, error)

func (*PlaceUnmarshaller) UnmarshallField

func (u *PlaceUnmarshaller) UnmarshallField(stage *Stage, i GongstructIF, fieldName string, valueExpr ast.Expr, identifierMap map[string]GongstructIF) error

type Place_WOP

type Place_WOP struct {
	Name string
}

type PointerToGongstruct

type PointerToGongstruct interface {
	GongstructIF
	comparable
}

type PointerToGongstructEnumIntField

type PointerToGongstructEnumIntField interface {
	//insertion point for pointers to enum int types
	FromCodeString(input string) (err error)
}

type PointerToGongstructEnumStringField

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

type ProbeIF

type ProbeIF interface {
	Refresh()
	GetFormStage() *form.Stage
	GetDataEditor() *split.AsSplit
	GetDiagramEditor() *split.AsSplitArea
	FillUpFormFromGongstruct(instance any, formName string)
	AddNotification(date time.Time, message string)
	CommitNotificationTable()
	ResetNotifications()
	SetMaxElementsNbPerGongStructNode(nb int)
	GetMaxElementsNbPerGongStructNode() int
	AddCommitNavigationNode(appendChildrenNodeFunc func(GongNodeIF))
	SetCommitMode(bool)
}

type RectAnchorType

type RectAnchorType string

to be imported from svg when gong supports multi package stages

const (
	RECT_TOP                RectAnchorType = "RECT_TOP"
	RECT_TOP_LEFT           RectAnchorType = "RECT_TOP_LEFT"
	RECT_TOP_RIGHT          RectAnchorType = "RECT_TOP_RIGHT"
	RECT_BOTTOM             RectAnchorType = "RECT_BOTTOM"
	RECT_BOTTOM_LEFT        RectAnchorType = "RECT_BOTTOM_LEFT"
	RECT_BOTTOM_LEFT_LEFT   RectAnchorType = "RECT_BOTTOM_LEFT_LEFT"
	RECT_BOTTOM_BOTTOM_LEFT RectAnchorType = "RECT_BOTTOM_BOTTOM_LEFT"
	RECT_BOTTOM_RIGHT       RectAnchorType = "RECT_BOTTOM_RIGHT"

	// the path is inside the shape, but on the right
	RECT_BOTTOM_INSIDE_RIGHT RectAnchorType = "RECT_BOTTOM_INSIDE_RIGHT"

	RECT_LEFT   RectAnchorType = "RECT_LEFT"
	RECT_RIGHT  RectAnchorType = "RECT_RIGHT"
	RECT_CENTER RectAnchorType = "RECT_CENTER"
)

values for EnumType

func (RectAnchorType) CodeValues

func (rectanchortype RectAnchorType) CodeValues() (res []string)

func (RectAnchorType) Codes

func (rectanchortype RectAnchorType) Codes() (res []string)

func (*RectAnchorType) FromCodeString

func (rectanchortype *RectAnchorType) FromCodeString(input string) (err error)

func (*RectAnchorType) FromString

func (rectanchortype *RectAnchorType) FromString(input string) (err error)

func (*RectAnchorType) ToCodeString

func (rectanchortype *RectAnchorType) ToCodeString() (res string)

func (RectAnchorType) ToString

func (rectanchortype RectAnchorType) ToString() (res string)

Utility function for RectAnchorType 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 ResetReqifButtonProxy

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

func (*ResetReqifButtonProxy) GetButtonsStage

func (proxy *ResetReqifButtonProxy) GetButtonsStage() *button.Stage

GetButtonsStage implements models.Target.

func (*ResetReqifButtonProxy) OnAfterUpdateButton

func (proxy *ResetReqifButtonProxy) OnAfterUpdateButton()

OnAfterUpdateButton implements models.Target.

type ReverseField

type ReverseField struct {
	GongstructName string
	Fieldname      string
}

func GetReverseFields

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

type Stage

type Stage struct {

	// insertion point for definition of arrays registering instances
	ArtefactTypes                map[*ArtefactType]struct{}
	ArtefactTypes_instance       map[*ArtefactType]*ArtefactType
	ArtefactTypes_mapString      map[string]*ArtefactType
	ArtefactTypeOrder            uint
	ArtefactType_stagedOrder     map[*ArtefactType]uint
	ArtefactTypes_reference      map[*ArtefactType]*ArtefactType
	ArtefactTypes_referenceOrder map[*ArtefactType]uint

	// insertion point for slice of pointers maps
	OnAfterArtefactTypeCreateCallback OnAfterCreateInterface[ArtefactType]
	OnAfterArtefactTypeUpdateCallback OnAfterUpdateInterface[ArtefactType]
	OnAfterArtefactTypeDeleteCallback OnAfterDeleteInterface[ArtefactType]
	OnAfterArtefactTypeReadCallback   OnAfterReadInterface[ArtefactType]

	ArtefactTypeShapes                map[*ArtefactTypeShape]struct{}
	ArtefactTypeShapes_instance       map[*ArtefactTypeShape]*ArtefactTypeShape
	ArtefactTypeShapes_mapString      map[string]*ArtefactTypeShape
	ArtefactTypeShapeOrder            uint
	ArtefactTypeShape_stagedOrder     map[*ArtefactTypeShape]uint
	ArtefactTypeShapes_reference      map[*ArtefactTypeShape]*ArtefactTypeShape
	ArtefactTypeShapes_referenceOrder map[*ArtefactTypeShape]uint

	// insertion point for slice of pointers maps
	OnAfterArtefactTypeShapeCreateCallback OnAfterCreateInterface[ArtefactTypeShape]
	OnAfterArtefactTypeShapeUpdateCallback OnAfterUpdateInterface[ArtefactTypeShape]
	OnAfterArtefactTypeShapeDeleteCallback OnAfterDeleteInterface[ArtefactTypeShape]
	OnAfterArtefactTypeShapeReadCallback   OnAfterReadInterface[ArtefactTypeShape]

	Artists                map[*Artist]struct{}
	Artists_instance       map[*Artist]*Artist
	Artists_mapString      map[string]*Artist
	ArtistOrder            uint
	Artist_stagedOrder     map[*Artist]uint
	Artists_reference      map[*Artist]*Artist
	Artists_referenceOrder map[*Artist]uint

	// insertion point for slice of pointers maps
	OnAfterArtistCreateCallback OnAfterCreateInterface[Artist]
	OnAfterArtistUpdateCallback OnAfterUpdateInterface[Artist]
	OnAfterArtistDeleteCallback OnAfterDeleteInterface[Artist]
	OnAfterArtistReadCallback   OnAfterReadInterface[Artist]

	ArtistShapes                map[*ArtistShape]struct{}
	ArtistShapes_instance       map[*ArtistShape]*ArtistShape
	ArtistShapes_mapString      map[string]*ArtistShape
	ArtistShapeOrder            uint
	ArtistShape_stagedOrder     map[*ArtistShape]uint
	ArtistShapes_reference      map[*ArtistShape]*ArtistShape
	ArtistShapes_referenceOrder map[*ArtistShape]uint

	// insertion point for slice of pointers maps
	OnAfterArtistShapeCreateCallback OnAfterCreateInterface[ArtistShape]
	OnAfterArtistShapeUpdateCallback OnAfterUpdateInterface[ArtistShape]
	OnAfterArtistShapeDeleteCallback OnAfterDeleteInterface[ArtistShape]
	OnAfterArtistShapeReadCallback   OnAfterReadInterface[ArtistShape]

	ControlPointShapes                map[*ControlPointShape]struct{}
	ControlPointShapes_instance       map[*ControlPointShape]*ControlPointShape
	ControlPointShapes_mapString      map[string]*ControlPointShape
	ControlPointShapeOrder            uint
	ControlPointShape_stagedOrder     map[*ControlPointShape]uint
	ControlPointShapes_reference      map[*ControlPointShape]*ControlPointShape
	ControlPointShapes_referenceOrder map[*ControlPointShape]uint

	// insertion point for slice of pointers maps
	OnAfterControlPointShapeCreateCallback OnAfterCreateInterface[ControlPointShape]
	OnAfterControlPointShapeUpdateCallback OnAfterUpdateInterface[ControlPointShape]
	OnAfterControlPointShapeDeleteCallback OnAfterDeleteInterface[ControlPointShape]
	OnAfterControlPointShapeReadCallback   OnAfterReadInterface[ControlPointShape]

	Desks                map[*Desk]struct{}
	Desks_instance       map[*Desk]*Desk
	Desks_mapString      map[string]*Desk
	DeskOrder            uint
	Desk_stagedOrder     map[*Desk]uint
	Desks_reference      map[*Desk]*Desk
	Desks_referenceOrder map[*Desk]uint

	// insertion point for slice of pointers maps
	OnAfterDeskCreateCallback OnAfterCreateInterface[Desk]
	OnAfterDeskUpdateCallback OnAfterUpdateInterface[Desk]
	OnAfterDeskDeleteCallback OnAfterDeleteInterface[Desk]
	OnAfterDeskReadCallback   OnAfterReadInterface[Desk]

	Diagrams                map[*Diagram]struct{}
	Diagrams_instance       map[*Diagram]*Diagram
	Diagrams_mapString      map[string]*Diagram
	DiagramOrder            uint
	Diagram_stagedOrder     map[*Diagram]uint
	Diagrams_reference      map[*Diagram]*Diagram
	Diagrams_referenceOrder map[*Diagram]uint

	// insertion point for slice of pointers maps
	Diagram_MovementShapes_reverseMap map[*MovementShape]*Diagram

	Diagram_ArtefactTypeShapes_reverseMap map[*ArtefactTypeShape]*Diagram

	Diagram_ArtistShapes_reverseMap map[*ArtistShape]*Diagram

	Diagram_InfluenceShapes_reverseMap map[*InfluenceShape]*Diagram

	OnAfterDiagramCreateCallback OnAfterCreateInterface[Diagram]
	OnAfterDiagramUpdateCallback OnAfterUpdateInterface[Diagram]
	OnAfterDiagramDeleteCallback OnAfterDeleteInterface[Diagram]
	OnAfterDiagramReadCallback   OnAfterReadInterface[Diagram]

	Influences                map[*Influence]struct{}
	Influences_instance       map[*Influence]*Influence
	Influences_mapString      map[string]*Influence
	InfluenceOrder            uint
	Influence_stagedOrder     map[*Influence]uint
	Influences_reference      map[*Influence]*Influence
	Influences_referenceOrder map[*Influence]uint

	// insertion point for slice of pointers maps
	OnAfterInfluenceCreateCallback OnAfterCreateInterface[Influence]
	OnAfterInfluenceUpdateCallback OnAfterUpdateInterface[Influence]
	OnAfterInfluenceDeleteCallback OnAfterDeleteInterface[Influence]
	OnAfterInfluenceReadCallback   OnAfterReadInterface[Influence]

	InfluenceShapes                map[*InfluenceShape]struct{}
	InfluenceShapes_instance       map[*InfluenceShape]*InfluenceShape
	InfluenceShapes_mapString      map[string]*InfluenceShape
	InfluenceShapeOrder            uint
	InfluenceShape_stagedOrder     map[*InfluenceShape]uint
	InfluenceShapes_reference      map[*InfluenceShape]*InfluenceShape
	InfluenceShapes_referenceOrder map[*InfluenceShape]uint

	// insertion point for slice of pointers maps
	InfluenceShape_ControlPointShapes_reverseMap map[*ControlPointShape]*InfluenceShape

	OnAfterInfluenceShapeCreateCallback OnAfterCreateInterface[InfluenceShape]
	OnAfterInfluenceShapeUpdateCallback OnAfterUpdateInterface[InfluenceShape]
	OnAfterInfluenceShapeDeleteCallback OnAfterDeleteInterface[InfluenceShape]
	OnAfterInfluenceShapeReadCallback   OnAfterReadInterface[InfluenceShape]

	Movements                map[*Movement]struct{}
	Movements_instance       map[*Movement]*Movement
	Movements_mapString      map[string]*Movement
	MovementOrder            uint
	Movement_stagedOrder     map[*Movement]uint
	Movements_reference      map[*Movement]*Movement
	Movements_referenceOrder map[*Movement]uint

	// insertion point for slice of pointers maps
	Movement_Places_reverseMap map[*Place]*Movement

	OnAfterMovementCreateCallback OnAfterCreateInterface[Movement]
	OnAfterMovementUpdateCallback OnAfterUpdateInterface[Movement]
	OnAfterMovementDeleteCallback OnAfterDeleteInterface[Movement]
	OnAfterMovementReadCallback   OnAfterReadInterface[Movement]

	MovementShapes                map[*MovementShape]struct{}
	MovementShapes_instance       map[*MovementShape]*MovementShape
	MovementShapes_mapString      map[string]*MovementShape
	MovementShapeOrder            uint
	MovementShape_stagedOrder     map[*MovementShape]uint
	MovementShapes_reference      map[*MovementShape]*MovementShape
	MovementShapes_referenceOrder map[*MovementShape]uint

	// insertion point for slice of pointers maps
	OnAfterMovementShapeCreateCallback OnAfterCreateInterface[MovementShape]
	OnAfterMovementShapeUpdateCallback OnAfterUpdateInterface[MovementShape]
	OnAfterMovementShapeDeleteCallback OnAfterDeleteInterface[MovementShape]
	OnAfterMovementShapeReadCallback   OnAfterReadInterface[MovementShape]

	Places                map[*Place]struct{}
	Places_instance       map[*Place]*Place
	Places_mapString      map[string]*Place
	PlaceOrder            uint
	Place_stagedOrder     map[*Place]uint
	Places_reference      map[*Place]*Place
	Places_referenceOrder map[*Place]uint

	// insertion point for slice of pointers maps
	OnAfterPlaceCreateCallback OnAfterCreateInterface[Place]
	OnAfterPlaceUpdateCallback OnAfterUpdateInterface[Place]
	OnAfterPlaceDeleteCallback OnAfterDeleteInterface[Place]
	OnAfterPlaceReadCallback   OnAfterReadInterface[Place]

	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

	NamedStructs []*NamedStruct

	// GongUnmarshallers is the registry of all model unmarshallers
	GongUnmarshallers map[string]ModelUnmarshaller
	// contains filtered or unexported fields
}

Stage enables storage of staged instances

func NewStage

func NewStage(name string) (stage *Stage)

func (*Stage) ApplyBackwardCommit

func (stage *Stage) ApplyBackwardCommit() error

ApplyBackwardCommit applies the commit before the current one

func (*Stage) ApplyForwardCommit

func (stage *Stage) ApplyForwardCommit() error

func (*Stage) Backup

func (stage *Stage) Backup(dirPath string)

backup generates backup files in the dirPath

func (*Stage) BackupXL

func (stage *Stage) BackupXL(dirPath string)

backup generates backup files in the dirPath

func (*Stage) Checkout

func (stage *Stage) Checkout()

func (*Stage) Clean

func (stage *Stage) Clean() (modified bool)

Clean garbage collect unstaged instances that are referenced by staged elements

func (*Stage) Commit

func (stage *Stage) Commit()

func (*Stage) CommitWithSuspendedCallbacks

func (stage *Stage) CommitWithSuspendedCallbacks()

func (*Stage) ComputeForwardAndBackwardCommits

func (stage *Stage) ComputeForwardAndBackwardCommits()

func (*Stage) ComputeInstancesNb

func (stage *Stage) ComputeInstancesNb()

func (*Stage) ComputeReferenceAndOrders

func (stage *Stage) ComputeReferenceAndOrders()

ComputeReferenceAndOrders will creates a deep copy of each of the staged elements

func (*Stage) ComputeReverseMaps

func (stage *Stage) 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 (*Stage) GetBackwardCommits

func (stage *Stage) GetBackwardCommits() []string

func (*Stage) GetCommitsBehind

func (stage *Stage) GetCommitsBehind() int

func (*Stage) GetDigramsEmbededDir

func (stage *Stage) GetDigramsEmbededDir() embed.FS

func (*Stage) GetForwardCommits

func (stage *Stage) GetForwardCommits() []string

func (*Stage) GetInstances

func (stage *Stage) GetInstances() (res []GongstructIF)

func (*Stage) GetMap_GongStructName_InstancesNb

func (stage *Stage) GetMap_GongStructName_InstancesNb() map[string]int

func (*Stage) GetModelsEmbededDir

func (stage *Stage) GetModelsEmbededDir() embed.FS

func (*Stage) GetName

func (stage *Stage) GetName() string

func (*Stage) GetNamedStructNamesByOrder

func (stage *Stage) GetNamedStructNamesByOrder(namedStructName string) (res []string)

func (*Stage) GetNamedStructsNames

func (stage *Stage) GetNamedStructsNames() (res []string)

GetNamedStructs implements models.ProbebStage.

func (*Stage) GetProbeFormStageName

func (stage *Stage) GetProbeFormStageName() string

func (*Stage) GetProbeIF

func (stage *Stage) GetProbeIF() ProbeIF

func (*Stage) GetProbeNotificationTableStageName

func (stage *Stage) GetProbeNotificationTableStageName() string

func (*Stage) GetProbeSplitStageName

func (stage *Stage) GetProbeSplitStageName() string

func (*Stage) GetProbeTableStageName

func (stage *Stage) GetProbeTableStageName() string

func (*Stage) GetProbeTreeSidebarStageName

func (stage *Stage) GetProbeTreeSidebarStageName() string

func (*Stage) GetType

func (stage *Stage) GetType() string

func (*Stage) IsInDeltaMode

func (stage *Stage) IsInDeltaMode() bool

func (*Stage) IsStagedArtefactType

func (stage *Stage) IsStagedArtefactType(artefacttype *ArtefactType) (ok bool)

insertion point for stage per struct

func (*Stage) IsStagedArtefactTypeShape

func (stage *Stage) IsStagedArtefactTypeShape(artefacttypeshape *ArtefactTypeShape) (ok bool)

func (*Stage) IsStagedArtist

func (stage *Stage) IsStagedArtist(artist *Artist) (ok bool)

func (*Stage) IsStagedArtistShape

func (stage *Stage) IsStagedArtistShape(artistshape *ArtistShape) (ok bool)

func (*Stage) IsStagedControlPointShape

func (stage *Stage) IsStagedControlPointShape(controlpointshape *ControlPointShape) (ok bool)

func (*Stage) IsStagedDesk

func (stage *Stage) IsStagedDesk(desk *Desk) (ok bool)

func (*Stage) IsStagedDiagram

func (stage *Stage) IsStagedDiagram(diagram *Diagram) (ok bool)

func (*Stage) IsStagedInfluence

func (stage *Stage) IsStagedInfluence(influence *Influence) (ok bool)

func (*Stage) IsStagedInfluenceShape

func (stage *Stage) IsStagedInfluenceShape(influenceshape *InfluenceShape) (ok bool)

func (*Stage) IsStagedMovement

func (stage *Stage) IsStagedMovement(movement *Movement) (ok bool)

func (*Stage) IsStagedMovementShape

func (stage *Stage) IsStagedMovementShape(movementshape *MovementShape) (ok bool)

func (*Stage) IsStagedPlace

func (stage *Stage) IsStagedPlace(place *Place) (ok bool)

func (*Stage) Lock

func (stage *Stage) Lock()

func (*Stage) Marshall

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

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

func (*Stage) MarshallToString

func (stage *Stage) MarshallToString(modelsPackageName, packageName string) (res string, err error)

MarshallToString marshall the stage content into a string

func (*Stage) Nil

func (stage *Stage) Nil()

func (*Stage) Orphans

func (stage *Stage) Orphans()

Orphans removes all commits

func (*Stage) RLock

func (stage *Stage) RLock()

func (*Stage) RUnlock

func (stage *Stage) RUnlock()

func (*Stage) RegisterAfterCommit

func (s *Stage) RegisterAfterCommit(hook func(stage *Stage))

RegisterAfterCommit adds a hook that runs after the commit succeeds

func (*Stage) RegisterBeforeCommit

func (s *Stage) RegisterBeforeCommit(hook func(stage *Stage))

RegisterBeforeCommit adds a hook that runs before the commit happens

func (*Stage) Reset

func (stage *Stage) Reset()

func (*Stage) ResetHard

func (stage *Stage) ResetHard()

ResetHard removes the more recent commitsBehind forward/backward Commits from the stage

func (*Stage) ResetMapStrings

func (stage *Stage) ResetMapStrings()

func (*Stage) Restore

func (stage *Stage) Restore(dirPath string)

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

func (*Stage) RestoreXL

func (stage *Stage) RestoreXL(dirPath string)

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

func (*Stage) SetDeltaMode

func (stage *Stage) SetDeltaMode(inDeltaMode bool)

func (*Stage) SetProbeIF

func (stage *Stage) SetProbeIF(probeIF ProbeIF)

func (*Stage) StageBranchArtefactType

func (stage *Stage) StageBranchArtefactType(artefacttype *ArtefactType)

insertion point for stage branch per struct

func (*Stage) StageBranchArtefactTypeShape

func (stage *Stage) StageBranchArtefactTypeShape(artefacttypeshape *ArtefactTypeShape)

func (*Stage) StageBranchArtist

func (stage *Stage) StageBranchArtist(artist *Artist)

func (*Stage) StageBranchArtistShape

func (stage *Stage) StageBranchArtistShape(artistshape *ArtistShape)

func (*Stage) StageBranchControlPointShape

func (stage *Stage) StageBranchControlPointShape(controlpointshape *ControlPointShape)

func (*Stage) StageBranchDesk

func (stage *Stage) StageBranchDesk(desk *Desk)

func (*Stage) StageBranchDiagram

func (stage *Stage) StageBranchDiagram(diagram *Diagram)

func (*Stage) StageBranchInfluence

func (stage *Stage) StageBranchInfluence(influence *Influence)

func (*Stage) StageBranchInfluenceShape

func (stage *Stage) StageBranchInfluenceShape(influenceshape *InfluenceShape)

func (*Stage) StageBranchMovement

func (stage *Stage) StageBranchMovement(movement *Movement)

func (*Stage) StageBranchMovementShape

func (stage *Stage) StageBranchMovementShape(movementshape *MovementShape)

func (*Stage) StageBranchPlace

func (stage *Stage) StageBranchPlace(place *Place)

func (*Stage) Unlock

func (stage *Stage) Unlock()

func (*Stage) Unstage

func (stage *Stage) Unstage()

func (*Stage) UnstageBranchArtefactType

func (stage *Stage) UnstageBranchArtefactType(artefacttype *ArtefactType)

insertion point for unstage branch per struct

func (*Stage) UnstageBranchArtefactTypeShape

func (stage *Stage) UnstageBranchArtefactTypeShape(artefacttypeshape *ArtefactTypeShape)

func (*Stage) UnstageBranchArtist

func (stage *Stage) UnstageBranchArtist(artist *Artist)

func (*Stage) UnstageBranchArtistShape

func (stage *Stage) UnstageBranchArtistShape(artistshape *ArtistShape)

func (*Stage) UnstageBranchControlPointShape

func (stage *Stage) UnstageBranchControlPointShape(controlpointshape *ControlPointShape)

func (*Stage) UnstageBranchDesk

func (stage *Stage) UnstageBranchDesk(desk *Desk)

func (*Stage) UnstageBranchDiagram

func (stage *Stage) UnstageBranchDiagram(diagram *Diagram)

func (*Stage) UnstageBranchInfluence

func (stage *Stage) UnstageBranchInfluence(influence *Influence)

func (*Stage) UnstageBranchInfluenceShape

func (stage *Stage) UnstageBranchInfluenceShape(influenceshape *InfluenceShape)

func (*Stage) UnstageBranchMovement

func (stage *Stage) UnstageBranchMovement(movement *Movement)

func (*Stage) UnstageBranchMovementShape

func (stage *Stage) UnstageBranchMovementShape(movementshape *MovementShape)

func (*Stage) UnstageBranchPlace

func (stage *Stage) UnstageBranchPlace(place *Place)

type Stager

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

func NewStager

func NewStager(
	r *gin.Engine,
	stage *Stage,
	probeForm ProbeIF,
) (stager *Stager)

func (*Stager) GetAsSplitArea

func (stager *Stager) GetAsSplitArea() (asSplitArea *split.AsSplitArea)

func (*Stager) GetGongtreeStage

func (stager *Stager) GetGongtreeStage() *tree.Stage

type StopButtonProxy

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

func (*StopButtonProxy) GetButtonsStage

func (e *StopButtonProxy) GetButtonsStage() *button.Stage

func (*StopButtonProxy) OnAfterUpdateButton

func (proxy *StopButtonProxy) OnAfterUpdateButton()

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 TextAnchorType

type TextAnchorType string
const (
	TEXT_ANCHOR_START  TextAnchorType = "start"
	TEXT_ANCHOR_CENTER TextAnchorType = "middle"
	TEXT_ANCHOR_END    TextAnchorType = "end"
)

values for https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/text-anchor

func (TextAnchorType) CodeValues

func (textanchortype TextAnchorType) CodeValues() (res []string)

func (TextAnchorType) Codes

func (textanchortype TextAnchorType) Codes() (res []string)

func (*TextAnchorType) FromCodeString

func (textanchortype *TextAnchorType) FromCodeString(input string) (err error)

func (*TextAnchorType) FromString

func (textanchortype *TextAnchorType) FromString(input string) (err error)

func (*TextAnchorType) ToCodeString

func (textanchortype *TextAnchorType) ToCodeString() (res string)

func (TextAnchorType) ToString

func (textanchortype TextAnchorType) ToString() (res string)

Utility function for TextAnchorType 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

Jump to

Keyboard shortcuts

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