models

package
v0.0.0-...-78e2d0a Latest Latest
Warning

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

Go to latest
Published: Jan 15, 2026 License: MIT Imports: 32 Imported by: 14

Documentation

Overview

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

Generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

generated code - do not edit

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 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 ProbeFormSuffix = ":form of the probe"
View Source
const ProbeNotificationTableSuffix = ":notification table of the probe"
View Source
const ProbeSplitSuffix = ":probe of the probe"
View Source
const ProbeTableSuffix = ":table of the probe"
View Source
const ProbeTreeSidebarSuffix = ":sidebar of the probe"
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 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) T

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) []T

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

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 specified by pathToFile within the provided embed.FS directory and stages instances declared in the file using the provided Stage.

Parameters:

stage:      The staging area to populate.
directory:  The embedded filesystem containing the file.
pathToFile: The path to the Go source file within the embedded filesystem.

Returns:

An error if reading or parsing the file fails, or if ParseAstFileFromAst fails.

func ParseAstEmbeddedFile2

func ParseAstEmbeddedFile2(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 ParseAstFile2

func ParseAstFile2(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

ParseAstFile Parse pathToFile and stages all instances declared in the file

func ParseAstFileFromAst2

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

ParseAstFileFromAst traverses the AST and stages instances using the Unmarshaller registry

func ReplaceOldDeclarationsInFile

func ReplaceOldDeclarationsInFile(pathToFile string) error

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

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 UnmarshallGongstructStaging

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

UnmarshallGoStaging unmarshall a go assign statement

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 {
	CreateORMAsSplit(AsSplit *AsSplit)
	CreateORMAsSplitArea(AsSplitArea *AsSplitArea)
	CreateORMButton(Button *Button)
	CreateORMCursor(Cursor *Cursor)
	CreateORMFavIcon(FavIcon *FavIcon)
	CreateORMForm(Form *Form)
	CreateORMLoad(Load *Load)
	CreateORMLogoOnTheLeft(LogoOnTheLeft *LogoOnTheLeft)
	CreateORMLogoOnTheRight(LogoOnTheRight *LogoOnTheRight)
	CreateORMMarkdown(Markdown *Markdown)
	CreateORMSlider(Slider *Slider)
	CreateORMSplit(Split *Split)
	CreateORMSvg(Svg *Svg)
	CreateORMTable(Table *Table)
	CreateORMTitle(Title *Title)
	CreateORMTone(Tone *Tone)
	CreateORMTree(Tree *Tree)
	CreateORMView(View *View)
	CreateORMXlsx(Xlsx *Xlsx)
}

swagger:ignore

type AllModelsStructDeleteInterface

type AllModelsStructDeleteInterface interface {
	DeleteORMAsSplit(AsSplit *AsSplit)
	DeleteORMAsSplitArea(AsSplitArea *AsSplitArea)
	DeleteORMButton(Button *Button)
	DeleteORMCursor(Cursor *Cursor)
	DeleteORMFavIcon(FavIcon *FavIcon)
	DeleteORMForm(Form *Form)
	DeleteORMLoad(Load *Load)
	DeleteORMLogoOnTheLeft(LogoOnTheLeft *LogoOnTheLeft)
	DeleteORMLogoOnTheRight(LogoOnTheRight *LogoOnTheRight)
	DeleteORMMarkdown(Markdown *Markdown)
	DeleteORMSlider(Slider *Slider)
	DeleteORMSplit(Split *Split)
	DeleteORMSvg(Svg *Svg)
	DeleteORMTable(Table *Table)
	DeleteORMTitle(Title *Title)
	DeleteORMTone(Tone *Tone)
	DeleteORMTree(Tree *Tree)
	DeleteORMView(View *View)
	DeleteORMXlsx(Xlsx *Xlsx)
}

type AsSplit

type AsSplit struct {
	Name string

	Direction Direction

	AsSplitAreas []*AsSplitArea
}

func CopyBranchAsSplit

func CopyBranchAsSplit(mapOrigCopy map[any]any, assplitFrom *AsSplit) (assplitTo *AsSplit)

insertion point for stage branch per struct

func (*AsSplit) Checkout

func (assplit *AsSplit) Checkout(stage *Stage) *AsSplit

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

func (*AsSplit) Commit

func (assplit *AsSplit) Commit(stage *Stage) *AsSplit

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

func (*AsSplit) CommitVoid

func (assplit *AsSplit) CommitVoid(stage *Stage)

func (*AsSplit) CopyBasicFields

func (from *AsSplit) CopyBasicFields(to *AsSplit)

func (*AsSplit) GetName

func (assplit *AsSplit) GetName() (res string)

for satisfaction of GongStruct interface

func (*AsSplit) GongClean

func (assplit *AsSplit) GongClean(stage *Stage)

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

func (*AsSplit) GongCopy

func (assplit *AsSplit) GongCopy() GongstructIF

insertion point per named struct

func (*AsSplit) GongDiff

func (assplit *AsSplit) GongDiff(stage *Stage, assplitOther *AsSplit) (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 (*AsSplit) GongGetFieldHeaders

func (assplit *AsSplit) GongGetFieldHeaders() (res []GongFieldHeader)

insertion point for get fields header method

func (*AsSplit) GongGetFieldValue

func (assplit *AsSplit) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

insertion point for generic get gongstruct field value

func (*AsSplit) GongGetGongstructName

func (assplit *AsSplit) GongGetGongstructName() string

insertion point for generic get gongstruct name

func (*AsSplit) GongGetIdentifier

func (assplit *AsSplit) 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 (*AsSplit) GongGetOrder

func (assplit *AsSplit) 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 (*AsSplit) GongGetReferenceIdentifier

func (assplit *AsSplit) GongGetReferenceIdentifier(stage *Stage) string

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

func (*AsSplit) GongGetReferenceOrder

func (assplit *AsSplit) GongGetReferenceOrder(stage *Stage) uint

func (*AsSplit) GongGetReverseFieldOwner

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

insertion point

func (*AsSplit) GongGetReverseFieldOwnerName

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

insertion point

func (*AsSplit) GongMarshallAllFields

func (assplit *AsSplit) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

insertion point for marshall all fields methods

func (*AsSplit) GongMarshallField

func (assplit *AsSplit) GongMarshallField(stage *Stage, fieldName string) (res string)

insertion point for marshall field methods

func (*AsSplit) GongMarshallIdentifier

func (assplit *AsSplit) GongMarshallIdentifier(stage *Stage) (decl string)

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

func (*AsSplit) GongMarshallUnstaging

func (assplit *AsSplit) GongMarshallUnstaging(stage *Stage) (decl string)

insertion point for unstaging

func (*AsSplit) GongSetFieldValue

func (assplit *AsSplit) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

insertion point for generic set gongstruct field value

func (*AsSplit) SetName

func (assplit *AsSplit) SetName(name string)

for satisfaction of GongStruct interface

func (*AsSplit) Stage

func (assplit *AsSplit) Stage(stage *Stage) *AsSplit

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

func (*AsSplit) StagePreserveOrder

func (assplit *AsSplit) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts assplit 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.AsSplitOrder - update stage.AsSplitOrder accordingly

func (*AsSplit) StageVoid

func (assplit *AsSplit) StageVoid(stage *Stage)

func (*AsSplit) Unstage

func (assplit *AsSplit) Unstage(stage *Stage) *AsSplit

Unstage removes assplit off the model stage

func (*AsSplit) UnstageVoid

func (assplit *AsSplit) UnstageVoid(stage *Stage)

UnstageVoid removes assplit off the model stage

type AsSplitArea

type AsSplitArea struct {
	Name string

	ShowNameInHeader bool

	Size float64

	// IsAany make the split area set size to "$any(*)"
	IsAny bool

	AsSplit *AsSplit

	Button   *Button
	Cursor   *Cursor
	Form     *Form
	Load     *Load
	Markdown *Markdown
	Slider   *Slider
	Split    *Split
	Svg      *Svg
	Table    *Table
	Tone     *Tone
	Tree     *Tree
	Xlsx     *Xlsx

	HasDiv   bool
	DivStyle string // in case of div, the div style
}

func CopyBranchAsSplitArea

func CopyBranchAsSplitArea(mapOrigCopy map[any]any, assplitareaFrom *AsSplitArea) (assplitareaTo *AsSplitArea)

func (*AsSplitArea) Checkout

func (assplitarea *AsSplitArea) Checkout(stage *Stage) *AsSplitArea

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

func (*AsSplitArea) Commit

func (assplitarea *AsSplitArea) Commit(stage *Stage) *AsSplitArea

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

func (*AsSplitArea) CommitVoid

func (assplitarea *AsSplitArea) CommitVoid(stage *Stage)

func (*AsSplitArea) CopyBasicFields

func (from *AsSplitArea) CopyBasicFields(to *AsSplitArea)

func (*AsSplitArea) GetName

func (assplitarea *AsSplitArea) GetName() (res string)

for satisfaction of GongStruct interface

func (*AsSplitArea) GongClean

func (assplitarea *AsSplitArea) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by AsSplitArea

func (*AsSplitArea) GongCopy

func (assplitarea *AsSplitArea) GongCopy() GongstructIF

func (*AsSplitArea) GongDiff

func (assplitarea *AsSplitArea) GongDiff(stage *Stage, assplitareaOther *AsSplitArea) (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 (*AsSplitArea) GongGetFieldHeaders

func (assplitarea *AsSplitArea) GongGetFieldHeaders() (res []GongFieldHeader)

func (*AsSplitArea) GongGetFieldValue

func (assplitarea *AsSplitArea) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*AsSplitArea) GongGetGongstructName

func (assplitarea *AsSplitArea) GongGetGongstructName() string

func (*AsSplitArea) GongGetIdentifier

func (assplitarea *AsSplitArea) GongGetIdentifier(stage *Stage) string

func (*AsSplitArea) GongGetOrder

func (assplitarea *AsSplitArea) GongGetOrder(stage *Stage) uint

func (*AsSplitArea) GongGetReferenceIdentifier

func (assplitarea *AsSplitArea) GongGetReferenceIdentifier(stage *Stage) string

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

func (*AsSplitArea) GongGetReferenceOrder

func (assplitarea *AsSplitArea) GongGetReferenceOrder(stage *Stage) uint

func (*AsSplitArea) GongGetReverseFieldOwner

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

func (*AsSplitArea) GongGetReverseFieldOwnerName

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

func (*AsSplitArea) GongMarshallAllFields

func (assplitarea *AsSplitArea) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*AsSplitArea) GongMarshallField

func (assplitarea *AsSplitArea) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*AsSplitArea) GongMarshallIdentifier

func (assplitarea *AsSplitArea) GongMarshallIdentifier(stage *Stage) (decl string)

func (*AsSplitArea) GongMarshallUnstaging

func (assplitarea *AsSplitArea) GongMarshallUnstaging(stage *Stage) (decl string)

func (*AsSplitArea) GongSetFieldValue

func (assplitarea *AsSplitArea) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*AsSplitArea) SetName

func (assplitarea *AsSplitArea) SetName(name string)

for satisfaction of GongStruct interface

func (*AsSplitArea) Stage

func (assplitarea *AsSplitArea) Stage(stage *Stage) *AsSplitArea

Stage puts assplitarea to the model stage

func (*AsSplitArea) StagePreserveOrder

func (assplitarea *AsSplitArea) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts assplitarea 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.AsSplitAreaOrder - update stage.AsSplitAreaOrder accordingly

func (*AsSplitArea) StageVoid

func (assplitarea *AsSplitArea) StageVoid(stage *Stage)

func (*AsSplitArea) Unstage

func (assplitarea *AsSplitArea) Unstage(stage *Stage) *AsSplitArea

Unstage removes assplitarea off the model stage

func (*AsSplitArea) UnstageVoid

func (assplitarea *AsSplitArea) UnstageVoid(stage *Stage)

UnstageVoid removes assplitarea off the model stage

type AsSplitAreaUnmarshaller

type AsSplitAreaUnmarshaller struct{}

func (*AsSplitAreaUnmarshaller) Initialize

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

func (*AsSplitAreaUnmarshaller) UnmarshallField

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

type AsSplitArea_WOP

type AsSplitArea_WOP struct {
	Name string

	ShowNameInHeader bool

	Size float64

	IsAny bool

	HasDiv bool

	DivStyle string
}

type AsSplitUnmarshaller

type AsSplitUnmarshaller struct{}

insertion point per named struct

func (*AsSplitUnmarshaller) Initialize

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

func (*AsSplitUnmarshaller) UnmarshallField

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

type AsSplit_WOP

type AsSplit_WOP struct {
	Name string

	Direction Direction
}

insertion point

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
	CommitAsSplit(assplit *AsSplit)
	CheckoutAsSplit(assplit *AsSplit)
	CommitAsSplitArea(assplitarea *AsSplitArea)
	CheckoutAsSplitArea(assplitarea *AsSplitArea)
	CommitButton(button *Button)
	CheckoutButton(button *Button)
	CommitCursor(cursor *Cursor)
	CheckoutCursor(cursor *Cursor)
	CommitFavIcon(favicon *FavIcon)
	CheckoutFavIcon(favicon *FavIcon)
	CommitForm(form *Form)
	CheckoutForm(form *Form)
	CommitLoad(load *Load)
	CheckoutLoad(load *Load)
	CommitLogoOnTheLeft(logoontheleft *LogoOnTheLeft)
	CheckoutLogoOnTheLeft(logoontheleft *LogoOnTheLeft)
	CommitLogoOnTheRight(logoontheright *LogoOnTheRight)
	CheckoutLogoOnTheRight(logoontheright *LogoOnTheRight)
	CommitMarkdown(markdown *Markdown)
	CheckoutMarkdown(markdown *Markdown)
	CommitSlider(slider *Slider)
	CheckoutSlider(slider *Slider)
	CommitSplit(split *Split)
	CheckoutSplit(split *Split)
	CommitSvg(svg *Svg)
	CheckoutSvg(svg *Svg)
	CommitTable(table *Table)
	CheckoutTable(table *Table)
	CommitTitle(title *Title)
	CheckoutTitle(title *Title)
	CommitTone(tone *Tone)
	CheckoutTone(tone *Tone)
	CommitTree(tree *Tree)
	CheckoutTree(tree *Tree)
	CommitView(view *View)
	CheckoutView(view *View)
	CommitXlsx(xlsx *Xlsx)
	CheckoutXlsx(xlsx *Xlsx)
	GetLastCommitFromBackNb() uint
	GetLastPushFromFrontNb() uint
}

type Button

type Button struct {
	Name      string // name of the stack
	StackName string
}

func CopyBranchButton

func CopyBranchButton(mapOrigCopy map[any]any, buttonFrom *Button) (buttonTo *Button)

func (*Button) Checkout

func (button *Button) Checkout(stage *Stage) *Button

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

func (*Button) Commit

func (button *Button) Commit(stage *Stage) *Button

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

func (*Button) CommitVoid

func (button *Button) CommitVoid(stage *Stage)

func (*Button) CopyBasicFields

func (from *Button) CopyBasicFields(to *Button)

func (*Button) GetName

func (button *Button) GetName() (res string)

for satisfaction of GongStruct interface

func (*Button) GongClean

func (button *Button) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Button

func (*Button) GongCopy

func (button *Button) GongCopy() GongstructIF

func (*Button) GongDiff

func (button *Button) GongDiff(stage *Stage, buttonOther *Button) (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 (*Button) GongGetFieldHeaders

func (button *Button) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Button) GongGetFieldValue

func (button *Button) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Button) GongGetGongstructName

func (button *Button) GongGetGongstructName() string

func (*Button) GongGetIdentifier

func (button *Button) GongGetIdentifier(stage *Stage) string

func (*Button) GongGetOrder

func (button *Button) GongGetOrder(stage *Stage) uint

func (*Button) GongGetReferenceIdentifier

func (button *Button) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Button) GongGetReferenceOrder

func (button *Button) GongGetReferenceOrder(stage *Stage) uint

func (*Button) GongGetReverseFieldOwner

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

func (*Button) GongGetReverseFieldOwnerName

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

func (*Button) GongMarshallAllFields

func (button *Button) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Button) GongMarshallField

func (button *Button) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Button) GongMarshallIdentifier

func (button *Button) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Button) GongMarshallUnstaging

func (button *Button) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Button) GongSetFieldValue

func (button *Button) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Button) SetName

func (button *Button) SetName(name string)

for satisfaction of GongStruct interface

func (*Button) Stage

func (button *Button) Stage(stage *Stage) *Button

Stage puts button to the model stage

func (*Button) StagePreserveOrder

func (button *Button) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts button 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.ButtonOrder - update stage.ButtonOrder accordingly

func (*Button) StageVoid

func (button *Button) StageVoid(stage *Stage)

func (*Button) Unstage

func (button *Button) Unstage(stage *Stage) *Button

Unstage removes button off the model stage

func (*Button) UnstageVoid

func (button *Button) UnstageVoid(stage *Stage)

UnstageVoid removes button off the model stage

type ButtonUnmarshaller

type ButtonUnmarshaller struct{}

func (*ButtonUnmarshaller) Initialize

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

func (*ButtonUnmarshaller) UnmarshallField

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

type Button_WOP

type Button_WOP struct {
	Name string

	StackName string
}

type Cursor

type Cursor struct {
	Name      string // name of the stack
	StackName string
	Style     string
}

func CopyBranchCursor

func CopyBranchCursor(mapOrigCopy map[any]any, cursorFrom *Cursor) (cursorTo *Cursor)

func (*Cursor) Checkout

func (cursor *Cursor) Checkout(stage *Stage) *Cursor

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

func (*Cursor) Commit

func (cursor *Cursor) Commit(stage *Stage) *Cursor

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

func (*Cursor) CommitVoid

func (cursor *Cursor) CommitVoid(stage *Stage)

func (*Cursor) CopyBasicFields

func (from *Cursor) CopyBasicFields(to *Cursor)

func (*Cursor) GetName

func (cursor *Cursor) GetName() (res string)

for satisfaction of GongStruct interface

func (*Cursor) GongClean

func (cursor *Cursor) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Cursor

func (*Cursor) GongCopy

func (cursor *Cursor) GongCopy() GongstructIF

func (*Cursor) GongDiff

func (cursor *Cursor) GongDiff(stage *Stage, cursorOther *Cursor) (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 (*Cursor) GongGetFieldHeaders

func (cursor *Cursor) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Cursor) GongGetFieldValue

func (cursor *Cursor) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Cursor) GongGetGongstructName

func (cursor *Cursor) GongGetGongstructName() string

func (*Cursor) GongGetIdentifier

func (cursor *Cursor) GongGetIdentifier(stage *Stage) string

func (*Cursor) GongGetOrder

func (cursor *Cursor) GongGetOrder(stage *Stage) uint

func (*Cursor) GongGetReferenceIdentifier

func (cursor *Cursor) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Cursor) GongGetReferenceOrder

func (cursor *Cursor) GongGetReferenceOrder(stage *Stage) uint

func (*Cursor) GongGetReverseFieldOwner

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

func (*Cursor) GongGetReverseFieldOwnerName

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

func (*Cursor) GongMarshallAllFields

func (cursor *Cursor) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Cursor) GongMarshallField

func (cursor *Cursor) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Cursor) GongMarshallIdentifier

func (cursor *Cursor) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Cursor) GongMarshallUnstaging

func (cursor *Cursor) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Cursor) GongSetFieldValue

func (cursor *Cursor) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Cursor) SetName

func (cursor *Cursor) SetName(name string)

for satisfaction of GongStruct interface

func (*Cursor) Stage

func (cursor *Cursor) Stage(stage *Stage) *Cursor

Stage puts cursor to the model stage

func (*Cursor) StagePreserveOrder

func (cursor *Cursor) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts cursor 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.CursorOrder - update stage.CursorOrder accordingly

func (*Cursor) StageVoid

func (cursor *Cursor) StageVoid(stage *Stage)

func (*Cursor) Unstage

func (cursor *Cursor) Unstage(stage *Stage) *Cursor

Unstage removes cursor off the model stage

func (*Cursor) UnstageVoid

func (cursor *Cursor) UnstageVoid(stage *Stage)

UnstageVoid removes cursor off the model stage

type CursorUnmarshaller

type CursorUnmarshaller struct{}

func (*CursorUnmarshaller) Initialize

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

func (*CursorUnmarshaller) UnmarshallField

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

type Cursor_WOP

type Cursor_WOP struct {
	Name string

	StackName string

	Style string
}

type Direction

type Direction string
const (
	Vertical   Direction = "vertical"
	Horizontal Direction = "horizontal"
)

func (Direction) CodeValues

func (direction Direction) CodeValues() (res []string)

func (Direction) Codes

func (direction Direction) Codes() (res []string)

func (*Direction) FromCodeString

func (direction *Direction) FromCodeString(input string) (err error)

func (*Direction) FromString

func (direction *Direction) FromString(input string) (err error)

func (*Direction) ToCodeString

func (direction *Direction) ToCodeString() (res string)

func (Direction) ToString

func (direction Direction) ToString() (res string)

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

type FavIcon struct {
	Name string

	//gong:width 600 gong:height 300
	SVG string
}

You can configure the browser tab title and favicon dynamically in Angular creates one instance and it will set the browser accordingly

func CopyBranchFavIcon

func CopyBranchFavIcon(mapOrigCopy map[any]any, faviconFrom *FavIcon) (faviconTo *FavIcon)

func (*FavIcon) Checkout

func (favicon *FavIcon) Checkout(stage *Stage) *FavIcon

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

func (*FavIcon) Commit

func (favicon *FavIcon) Commit(stage *Stage) *FavIcon

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

func (*FavIcon) CommitVoid

func (favicon *FavIcon) CommitVoid(stage *Stage)

func (*FavIcon) CopyBasicFields

func (from *FavIcon) CopyBasicFields(to *FavIcon)

func (*FavIcon) GetName

func (favicon *FavIcon) GetName() (res string)

for satisfaction of GongStruct interface

func (*FavIcon) GongClean

func (favicon *FavIcon) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by FavIcon

func (*FavIcon) GongCopy

func (favicon *FavIcon) GongCopy() GongstructIF

func (*FavIcon) GongDiff

func (favicon *FavIcon) GongDiff(stage *Stage, faviconOther *FavIcon) (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 (*FavIcon) GongGetFieldHeaders

func (favicon *FavIcon) GongGetFieldHeaders() (res []GongFieldHeader)

func (*FavIcon) GongGetFieldValue

func (favicon *FavIcon) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*FavIcon) GongGetGongstructName

func (favicon *FavIcon) GongGetGongstructName() string

func (*FavIcon) GongGetIdentifier

func (favicon *FavIcon) GongGetIdentifier(stage *Stage) string

func (*FavIcon) GongGetOrder

func (favicon *FavIcon) GongGetOrder(stage *Stage) uint

func (*FavIcon) GongGetReferenceIdentifier

func (favicon *FavIcon) GongGetReferenceIdentifier(stage *Stage) string

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

func (*FavIcon) GongGetReferenceOrder

func (favicon *FavIcon) GongGetReferenceOrder(stage *Stage) uint

func (*FavIcon) GongGetReverseFieldOwner

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

func (*FavIcon) GongGetReverseFieldOwnerName

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

func (*FavIcon) GongMarshallAllFields

func (favicon *FavIcon) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*FavIcon) GongMarshallField

func (favicon *FavIcon) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*FavIcon) GongMarshallIdentifier

func (favicon *FavIcon) GongMarshallIdentifier(stage *Stage) (decl string)

func (*FavIcon) GongMarshallUnstaging

func (favicon *FavIcon) GongMarshallUnstaging(stage *Stage) (decl string)

func (*FavIcon) GongSetFieldValue

func (favicon *FavIcon) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*FavIcon) SetName

func (favicon *FavIcon) SetName(name string)

for satisfaction of GongStruct interface

func (*FavIcon) Stage

func (favicon *FavIcon) Stage(stage *Stage) *FavIcon

Stage puts favicon to the model stage

func (*FavIcon) StagePreserveOrder

func (favicon *FavIcon) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts favicon 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.FavIconOrder - update stage.FavIconOrder accordingly

func (*FavIcon) StageVoid

func (favicon *FavIcon) StageVoid(stage *Stage)

func (*FavIcon) Unstage

func (favicon *FavIcon) Unstage(stage *Stage) *FavIcon

Unstage removes favicon off the model stage

func (*FavIcon) UnstageVoid

func (favicon *FavIcon) UnstageVoid(stage *Stage)

UnstageVoid removes favicon off the model stage

type FavIconUnmarshaller

type FavIconUnmarshaller struct{}

func (*FavIconUnmarshaller) Initialize

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

func (*FavIconUnmarshaller) UnmarshallField

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

type FavIcon_WOP

type FavIcon_WOP struct {
	Name string

	SVG string
}

type Form

type Form struct {
	Name      string // name of the stack
	StackName string
}

func CopyBranchForm

func CopyBranchForm(mapOrigCopy map[any]any, formFrom *Form) (formTo *Form)

func (*Form) Checkout

func (form *Form) Checkout(stage *Stage) *Form

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

func (*Form) Commit

func (form *Form) Commit(stage *Stage) *Form

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

func (*Form) CommitVoid

func (form *Form) CommitVoid(stage *Stage)

func (*Form) CopyBasicFields

func (from *Form) CopyBasicFields(to *Form)

func (*Form) GetName

func (form *Form) GetName() (res string)

for satisfaction of GongStruct interface

func (*Form) GongClean

func (form *Form) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Form

func (*Form) GongCopy

func (form *Form) GongCopy() GongstructIF

func (*Form) GongDiff

func (form *Form) GongDiff(stage *Stage, formOther *Form) (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 (*Form) GongGetFieldHeaders

func (form *Form) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Form) GongGetFieldValue

func (form *Form) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Form) GongGetGongstructName

func (form *Form) GongGetGongstructName() string

func (*Form) GongGetIdentifier

func (form *Form) GongGetIdentifier(stage *Stage) string

func (*Form) GongGetOrder

func (form *Form) GongGetOrder(stage *Stage) uint

func (*Form) GongGetReferenceIdentifier

func (form *Form) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Form) GongGetReferenceOrder

func (form *Form) GongGetReferenceOrder(stage *Stage) uint

func (*Form) GongGetReverseFieldOwner

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

func (*Form) GongGetReverseFieldOwnerName

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

func (*Form) GongMarshallAllFields

func (form *Form) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Form) GongMarshallField

func (form *Form) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Form) GongMarshallIdentifier

func (form *Form) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Form) GongMarshallUnstaging

func (form *Form) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Form) GongSetFieldValue

func (form *Form) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Form) SetName

func (form *Form) SetName(name string)

for satisfaction of GongStruct interface

func (*Form) Stage

func (form *Form) Stage(stage *Stage) *Form

Stage puts form to the model stage

func (*Form) StagePreserveOrder

func (form *Form) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts form 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.FormOrder - update stage.FormOrder accordingly

func (*Form) StageVoid

func (form *Form) StageVoid(stage *Stage)

func (*Form) Unstage

func (form *Form) Unstage(stage *Stage) *Form

Unstage removes form off the model stage

func (*Form) UnstageVoid

func (form *Form) UnstageVoid(stage *Stage)

UnstageVoid removes form off the model stage

type FormUnmarshaller

type FormUnmarshaller struct{}

func (*FormUnmarshaller) Initialize

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

func (*FormUnmarshaller) UnmarshallField

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

type Form_WOP

type Form_WOP struct {
	Name string

	StackName string
}

type GONG__ExpressionType

type GONG__ExpressionType string

swagger:ignore

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

type GONG__Identifier

type GONG__Identifier struct {
	Ident string
	Type  GONG__ExpressionType
}

type 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"
	GongFieldValueTypeFloat           GongFieldValueType = "GongFieldValueTypeFloat"
	GongFieldValueTypeBool            GongFieldValueType = "GongFieldValueTypeBool"
	GongFieldValueTypeString          GongFieldValueType = "GongFieldValueTypeString"
	GongFieldValueTypeBasicKind       GongFieldValueType = "GongFieldValueTypeBasicKind"
	GongFieldValueTypePointer         GongFieldValueType = "GongFieldValueTypePointer"
	GongFieldValueTypeSliceOfPointers GongFieldValueType = "GongFieldValueTypeSliceOfPointers"
)

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)
	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 Load

type Load struct {
	Name      string // name of the stack
	StackName string
}

func CopyBranchLoad

func CopyBranchLoad(mapOrigCopy map[any]any, loadFrom *Load) (loadTo *Load)

func (*Load) Checkout

func (load *Load) Checkout(stage *Stage) *Load

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

func (*Load) Commit

func (load *Load) Commit(stage *Stage) *Load

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

func (*Load) CommitVoid

func (load *Load) CommitVoid(stage *Stage)

func (*Load) CopyBasicFields

func (from *Load) CopyBasicFields(to *Load)

func (*Load) GetName

func (load *Load) GetName() (res string)

for satisfaction of GongStruct interface

func (*Load) GongClean

func (load *Load) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Load

func (*Load) GongCopy

func (load *Load) GongCopy() GongstructIF

func (*Load) GongDiff

func (load *Load) GongDiff(stage *Stage, loadOther *Load) (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 (*Load) GongGetFieldHeaders

func (load *Load) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Load) GongGetFieldValue

func (load *Load) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Load) GongGetGongstructName

func (load *Load) GongGetGongstructName() string

func (*Load) GongGetIdentifier

func (load *Load) GongGetIdentifier(stage *Stage) string

func (*Load) GongGetOrder

func (load *Load) GongGetOrder(stage *Stage) uint

func (*Load) GongGetReferenceIdentifier

func (load *Load) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Load) GongGetReferenceOrder

func (load *Load) GongGetReferenceOrder(stage *Stage) uint

func (*Load) GongGetReverseFieldOwner

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

func (*Load) GongGetReverseFieldOwnerName

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

func (*Load) GongMarshallAllFields

func (load *Load) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Load) GongMarshallField

func (load *Load) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Load) GongMarshallIdentifier

func (load *Load) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Load) GongMarshallUnstaging

func (load *Load) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Load) GongSetFieldValue

func (load *Load) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Load) SetName

func (load *Load) SetName(name string)

for satisfaction of GongStruct interface

func (*Load) Stage

func (load *Load) Stage(stage *Stage) *Load

Stage puts load to the model stage

func (*Load) StagePreserveOrder

func (load *Load) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts load 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.LoadOrder - update stage.LoadOrder accordingly

func (*Load) StageVoid

func (load *Load) StageVoid(stage *Stage)

func (*Load) Unstage

func (load *Load) Unstage(stage *Stage) *Load

Unstage removes load off the model stage

func (*Load) UnstageVoid

func (load *Load) UnstageVoid(stage *Stage)

UnstageVoid removes load off the model stage

type LoadUnmarshaller

type LoadUnmarshaller struct{}

func (*LoadUnmarshaller) Initialize

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

func (*LoadUnmarshaller) UnmarshallField

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

type Load_WOP

type Load_WOP struct {
	Name string

	StackName string
}

type LogoOnTheLeft

type LogoOnTheLeft struct {
	Name string

	Width  int
	Height int

	//gong:width 600 gong:height 300
	SVG string
}

LogoOnTheLeft displayed in the banner

func CopyBranchLogoOnTheLeft

func CopyBranchLogoOnTheLeft(mapOrigCopy map[any]any, logoontheleftFrom *LogoOnTheLeft) (logoontheleftTo *LogoOnTheLeft)

func (*LogoOnTheLeft) Checkout

func (logoontheleft *LogoOnTheLeft) Checkout(stage *Stage) *LogoOnTheLeft

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

func (*LogoOnTheLeft) Commit

func (logoontheleft *LogoOnTheLeft) Commit(stage *Stage) *LogoOnTheLeft

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

func (*LogoOnTheLeft) CommitVoid

func (logoontheleft *LogoOnTheLeft) CommitVoid(stage *Stage)

func (*LogoOnTheLeft) CopyBasicFields

func (from *LogoOnTheLeft) CopyBasicFields(to *LogoOnTheLeft)

func (*LogoOnTheLeft) GetName

func (logoontheleft *LogoOnTheLeft) GetName() (res string)

for satisfaction of GongStruct interface

func (*LogoOnTheLeft) GongClean

func (logoontheleft *LogoOnTheLeft) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by LogoOnTheLeft

func (*LogoOnTheLeft) GongCopy

func (logoontheleft *LogoOnTheLeft) GongCopy() GongstructIF

func (*LogoOnTheLeft) GongDiff

func (logoontheleft *LogoOnTheLeft) GongDiff(stage *Stage, logoontheleftOther *LogoOnTheLeft) (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 (*LogoOnTheLeft) GongGetFieldHeaders

func (logoontheleft *LogoOnTheLeft) GongGetFieldHeaders() (res []GongFieldHeader)

func (*LogoOnTheLeft) GongGetFieldValue

func (logoontheleft *LogoOnTheLeft) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*LogoOnTheLeft) GongGetGongstructName

func (logoontheleft *LogoOnTheLeft) GongGetGongstructName() string

func (*LogoOnTheLeft) GongGetIdentifier

func (logoontheleft *LogoOnTheLeft) GongGetIdentifier(stage *Stage) string

func (*LogoOnTheLeft) GongGetOrder

func (logoontheleft *LogoOnTheLeft) GongGetOrder(stage *Stage) uint

func (*LogoOnTheLeft) GongGetReferenceIdentifier

func (logoontheleft *LogoOnTheLeft) GongGetReferenceIdentifier(stage *Stage) string

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

func (*LogoOnTheLeft) GongGetReferenceOrder

func (logoontheleft *LogoOnTheLeft) GongGetReferenceOrder(stage *Stage) uint

func (*LogoOnTheLeft) GongGetReverseFieldOwner

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

func (*LogoOnTheLeft) GongGetReverseFieldOwnerName

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

func (*LogoOnTheLeft) GongMarshallAllFields

func (logoontheleft *LogoOnTheLeft) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*LogoOnTheLeft) GongMarshallField

func (logoontheleft *LogoOnTheLeft) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*LogoOnTheLeft) GongMarshallIdentifier

func (logoontheleft *LogoOnTheLeft) GongMarshallIdentifier(stage *Stage) (decl string)

func (*LogoOnTheLeft) GongMarshallUnstaging

func (logoontheleft *LogoOnTheLeft) GongMarshallUnstaging(stage *Stage) (decl string)

func (*LogoOnTheLeft) GongSetFieldValue

func (logoontheleft *LogoOnTheLeft) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*LogoOnTheLeft) SetName

func (logoontheleft *LogoOnTheLeft) SetName(name string)

for satisfaction of GongStruct interface

func (*LogoOnTheLeft) Stage

func (logoontheleft *LogoOnTheLeft) Stage(stage *Stage) *LogoOnTheLeft

Stage puts logoontheleft to the model stage

func (*LogoOnTheLeft) StagePreserveOrder

func (logoontheleft *LogoOnTheLeft) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts logoontheleft 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.LogoOnTheLeftOrder - update stage.LogoOnTheLeftOrder accordingly

func (*LogoOnTheLeft) StageVoid

func (logoontheleft *LogoOnTheLeft) StageVoid(stage *Stage)

func (*LogoOnTheLeft) Unstage

func (logoontheleft *LogoOnTheLeft) Unstage(stage *Stage) *LogoOnTheLeft

Unstage removes logoontheleft off the model stage

func (*LogoOnTheLeft) UnstageVoid

func (logoontheleft *LogoOnTheLeft) UnstageVoid(stage *Stage)

UnstageVoid removes logoontheleft off the model stage

type LogoOnTheLeftUnmarshaller

type LogoOnTheLeftUnmarshaller struct{}

func (*LogoOnTheLeftUnmarshaller) Initialize

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

func (*LogoOnTheLeftUnmarshaller) UnmarshallField

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

type LogoOnTheLeft_WOP

type LogoOnTheLeft_WOP struct {
	Name string

	Width int

	Height int

	SVG string
}

type LogoOnTheRight

type LogoOnTheRight struct {
	Name string

	Width  int
	Height int

	//gong:width 600 gong:height 300
	SVG string
}

LogoOnTheLeft displayed in the banner

func CopyBranchLogoOnTheRight

func CopyBranchLogoOnTheRight(mapOrigCopy map[any]any, logoontherightFrom *LogoOnTheRight) (logoontherightTo *LogoOnTheRight)

func (*LogoOnTheRight) Checkout

func (logoontheright *LogoOnTheRight) Checkout(stage *Stage) *LogoOnTheRight

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

func (*LogoOnTheRight) Commit

func (logoontheright *LogoOnTheRight) Commit(stage *Stage) *LogoOnTheRight

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

func (*LogoOnTheRight) CommitVoid

func (logoontheright *LogoOnTheRight) CommitVoid(stage *Stage)

func (*LogoOnTheRight) CopyBasicFields

func (from *LogoOnTheRight) CopyBasicFields(to *LogoOnTheRight)

func (*LogoOnTheRight) GetName

func (logoontheright *LogoOnTheRight) GetName() (res string)

for satisfaction of GongStruct interface

func (*LogoOnTheRight) GongClean

func (logoontheright *LogoOnTheRight) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by LogoOnTheRight

func (*LogoOnTheRight) GongCopy

func (logoontheright *LogoOnTheRight) GongCopy() GongstructIF

func (*LogoOnTheRight) GongDiff

func (logoontheright *LogoOnTheRight) GongDiff(stage *Stage, logoontherightOther *LogoOnTheRight) (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 (*LogoOnTheRight) GongGetFieldHeaders

func (logoontheright *LogoOnTheRight) GongGetFieldHeaders() (res []GongFieldHeader)

func (*LogoOnTheRight) GongGetFieldValue

func (logoontheright *LogoOnTheRight) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*LogoOnTheRight) GongGetGongstructName

func (logoontheright *LogoOnTheRight) GongGetGongstructName() string

func (*LogoOnTheRight) GongGetIdentifier

func (logoontheright *LogoOnTheRight) GongGetIdentifier(stage *Stage) string

func (*LogoOnTheRight) GongGetOrder

func (logoontheright *LogoOnTheRight) GongGetOrder(stage *Stage) uint

func (*LogoOnTheRight) GongGetReferenceIdentifier

func (logoontheright *LogoOnTheRight) GongGetReferenceIdentifier(stage *Stage) string

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

func (*LogoOnTheRight) GongGetReferenceOrder

func (logoontheright *LogoOnTheRight) GongGetReferenceOrder(stage *Stage) uint

func (*LogoOnTheRight) GongGetReverseFieldOwner

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

func (*LogoOnTheRight) GongGetReverseFieldOwnerName

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

func (*LogoOnTheRight) GongMarshallAllFields

func (logoontheright *LogoOnTheRight) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*LogoOnTheRight) GongMarshallField

func (logoontheright *LogoOnTheRight) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*LogoOnTheRight) GongMarshallIdentifier

func (logoontheright *LogoOnTheRight) GongMarshallIdentifier(stage *Stage) (decl string)

func (*LogoOnTheRight) GongMarshallUnstaging

func (logoontheright *LogoOnTheRight) GongMarshallUnstaging(stage *Stage) (decl string)

func (*LogoOnTheRight) GongSetFieldValue

func (logoontheright *LogoOnTheRight) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*LogoOnTheRight) SetName

func (logoontheright *LogoOnTheRight) SetName(name string)

for satisfaction of GongStruct interface

func (*LogoOnTheRight) Stage

func (logoontheright *LogoOnTheRight) Stage(stage *Stage) *LogoOnTheRight

Stage puts logoontheright to the model stage

func (*LogoOnTheRight) StagePreserveOrder

func (logoontheright *LogoOnTheRight) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts logoontheright 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.LogoOnTheRightOrder - update stage.LogoOnTheRightOrder accordingly

func (*LogoOnTheRight) StageVoid

func (logoontheright *LogoOnTheRight) StageVoid(stage *Stage)

func (*LogoOnTheRight) Unstage

func (logoontheright *LogoOnTheRight) Unstage(stage *Stage) *LogoOnTheRight

Unstage removes logoontheright off the model stage

func (*LogoOnTheRight) UnstageVoid

func (logoontheright *LogoOnTheRight) UnstageVoid(stage *Stage)

UnstageVoid removes logoontheright off the model stage

type LogoOnTheRightUnmarshaller

type LogoOnTheRightUnmarshaller struct{}

func (*LogoOnTheRightUnmarshaller) Initialize

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

func (*LogoOnTheRightUnmarshaller) UnmarshallField

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

type LogoOnTheRight_WOP

type LogoOnTheRight_WOP struct {
	Name string

	Width int

	Height int

	SVG string
}

type Markdown

type Markdown struct {
	Name      string // name of the stack
	StackName string
}

func CopyBranchMarkdown

func CopyBranchMarkdown(mapOrigCopy map[any]any, markdownFrom *Markdown) (markdownTo *Markdown)

func (*Markdown) Checkout

func (markdown *Markdown) Checkout(stage *Stage) *Markdown

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

func (*Markdown) Commit

func (markdown *Markdown) Commit(stage *Stage) *Markdown

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

func (*Markdown) CommitVoid

func (markdown *Markdown) CommitVoid(stage *Stage)

func (*Markdown) CopyBasicFields

func (from *Markdown) CopyBasicFields(to *Markdown)

func (*Markdown) GetName

func (markdown *Markdown) GetName() (res string)

for satisfaction of GongStruct interface

func (*Markdown) GongClean

func (markdown *Markdown) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Markdown

func (*Markdown) GongCopy

func (markdown *Markdown) GongCopy() GongstructIF

func (*Markdown) GongDiff

func (markdown *Markdown) GongDiff(stage *Stage, markdownOther *Markdown) (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 (*Markdown) GongGetFieldHeaders

func (markdown *Markdown) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Markdown) GongGetFieldValue

func (markdown *Markdown) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Markdown) GongGetGongstructName

func (markdown *Markdown) GongGetGongstructName() string

func (*Markdown) GongGetIdentifier

func (markdown *Markdown) GongGetIdentifier(stage *Stage) string

func (*Markdown) GongGetOrder

func (markdown *Markdown) GongGetOrder(stage *Stage) uint

func (*Markdown) GongGetReferenceIdentifier

func (markdown *Markdown) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Markdown) GongGetReferenceOrder

func (markdown *Markdown) GongGetReferenceOrder(stage *Stage) uint

func (*Markdown) GongGetReverseFieldOwner

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

func (*Markdown) GongGetReverseFieldOwnerName

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

func (*Markdown) GongMarshallAllFields

func (markdown *Markdown) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Markdown) GongMarshallField

func (markdown *Markdown) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Markdown) GongMarshallIdentifier

func (markdown *Markdown) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Markdown) GongMarshallUnstaging

func (markdown *Markdown) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Markdown) GongSetFieldValue

func (markdown *Markdown) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Markdown) SetName

func (markdown *Markdown) SetName(name string)

for satisfaction of GongStruct interface

func (*Markdown) Stage

func (markdown *Markdown) Stage(stage *Stage) *Markdown

Stage puts markdown to the model stage

func (*Markdown) StagePreserveOrder

func (markdown *Markdown) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts markdown 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.MarkdownOrder - update stage.MarkdownOrder accordingly

func (*Markdown) StageVoid

func (markdown *Markdown) StageVoid(stage *Stage)

func (*Markdown) Unstage

func (markdown *Markdown) Unstage(stage *Stage) *Markdown

Unstage removes markdown off the model stage

func (*Markdown) UnstageVoid

func (markdown *Markdown) UnstageVoid(stage *Stage)

UnstageVoid removes markdown off the model stage

type MarkdownUnmarshaller

type MarkdownUnmarshaller struct{}

func (*MarkdownUnmarshaller) Initialize

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

func (*MarkdownUnmarshaller) UnmarshallField

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

type Markdown_WOP

type Markdown_WOP struct {
	Name string

	StackName string
}

type ModelUnmarshaller

type ModelUnmarshaller interface {
	// Initialize creates the struct, stages it, and returns the pointer as 'any'
	Initialize(stage *Stage, 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 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 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()
	GetDataEditor() *AsSplit
	GetDiagramEditor() *AsSplitArea
	FillUpFormFromGongstruct(instance any, formName string)
	AddNotification(date time.Time, message string)
	CommitNotificationTable()
	ResetNotifications()
}

for the split package, we define a ProbeIF interface otherwise, the split package cannot refer to the main gong package

type ReverseField

type ReverseField struct {
	GongstructName string
	Fieldname      string
}

func GetReverseFields

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

type Slider

type Slider struct {
	Name      string // name of the stack
	StackName string
}

func CopyBranchSlider

func CopyBranchSlider(mapOrigCopy map[any]any, sliderFrom *Slider) (sliderTo *Slider)

func (*Slider) Checkout

func (slider *Slider) Checkout(stage *Stage) *Slider

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

func (*Slider) Commit

func (slider *Slider) Commit(stage *Stage) *Slider

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

func (*Slider) CommitVoid

func (slider *Slider) CommitVoid(stage *Stage)

func (*Slider) CopyBasicFields

func (from *Slider) CopyBasicFields(to *Slider)

func (*Slider) GetName

func (slider *Slider) GetName() (res string)

for satisfaction of GongStruct interface

func (*Slider) GongClean

func (slider *Slider) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Slider

func (*Slider) GongCopy

func (slider *Slider) GongCopy() GongstructIF

func (*Slider) GongDiff

func (slider *Slider) GongDiff(stage *Stage, sliderOther *Slider) (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 (*Slider) GongGetFieldHeaders

func (slider *Slider) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Slider) GongGetFieldValue

func (slider *Slider) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Slider) GongGetGongstructName

func (slider *Slider) GongGetGongstructName() string

func (*Slider) GongGetIdentifier

func (slider *Slider) GongGetIdentifier(stage *Stage) string

func (*Slider) GongGetOrder

func (slider *Slider) GongGetOrder(stage *Stage) uint

func (*Slider) GongGetReferenceIdentifier

func (slider *Slider) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Slider) GongGetReferenceOrder

func (slider *Slider) GongGetReferenceOrder(stage *Stage) uint

func (*Slider) GongGetReverseFieldOwner

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

func (*Slider) GongGetReverseFieldOwnerName

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

func (*Slider) GongMarshallAllFields

func (slider *Slider) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Slider) GongMarshallField

func (slider *Slider) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Slider) GongMarshallIdentifier

func (slider *Slider) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Slider) GongMarshallUnstaging

func (slider *Slider) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Slider) GongSetFieldValue

func (slider *Slider) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Slider) SetName

func (slider *Slider) SetName(name string)

for satisfaction of GongStruct interface

func (*Slider) Stage

func (slider *Slider) Stage(stage *Stage) *Slider

Stage puts slider to the model stage

func (*Slider) StagePreserveOrder

func (slider *Slider) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts slider 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.SliderOrder - update stage.SliderOrder accordingly

func (*Slider) StageVoid

func (slider *Slider) StageVoid(stage *Stage)

func (*Slider) Unstage

func (slider *Slider) Unstage(stage *Stage) *Slider

Unstage removes slider off the model stage

func (*Slider) UnstageVoid

func (slider *Slider) UnstageVoid(stage *Stage)

UnstageVoid removes slider off the model stage

type SliderUnmarshaller

type SliderUnmarshaller struct{}

func (*SliderUnmarshaller) Initialize

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

func (*SliderUnmarshaller) UnmarshallField

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

type Slider_WOP

type Slider_WOP struct {
	Name string

	StackName string
}

type Split

type Split struct {
	Name      string // name of the stack
	StackName string
}

func CopyBranchSplit

func CopyBranchSplit(mapOrigCopy map[any]any, splitFrom *Split) (splitTo *Split)

func (*Split) Checkout

func (split *Split) Checkout(stage *Stage) *Split

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

func (*Split) Commit

func (split *Split) Commit(stage *Stage) *Split

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

func (*Split) CommitVoid

func (split *Split) CommitVoid(stage *Stage)

func (*Split) CopyBasicFields

func (from *Split) CopyBasicFields(to *Split)

func (*Split) GetName

func (split *Split) GetName() (res string)

for satisfaction of GongStruct interface

func (*Split) GongClean

func (split *Split) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Split

func (*Split) GongCopy

func (split *Split) GongCopy() GongstructIF

func (*Split) GongDiff

func (split *Split) GongDiff(stage *Stage, splitOther *Split) (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 (*Split) GongGetFieldHeaders

func (split *Split) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Split) GongGetFieldValue

func (split *Split) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Split) GongGetGongstructName

func (split *Split) GongGetGongstructName() string

func (*Split) GongGetIdentifier

func (split *Split) GongGetIdentifier(stage *Stage) string

func (*Split) GongGetOrder

func (split *Split) GongGetOrder(stage *Stage) uint

func (*Split) GongGetReferenceIdentifier

func (split *Split) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Split) GongGetReferenceOrder

func (split *Split) GongGetReferenceOrder(stage *Stage) uint

func (*Split) GongGetReverseFieldOwner

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

func (*Split) GongGetReverseFieldOwnerName

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

func (*Split) GongMarshallAllFields

func (split *Split) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Split) GongMarshallField

func (split *Split) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Split) GongMarshallIdentifier

func (split *Split) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Split) GongMarshallUnstaging

func (split *Split) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Split) GongSetFieldValue

func (split *Split) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Split) SetName

func (split *Split) SetName(name string)

for satisfaction of GongStruct interface

func (*Split) Stage

func (split *Split) Stage(stage *Stage) *Split

Stage puts split to the model stage

func (*Split) StagePreserveOrder

func (split *Split) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts split 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.SplitOrder - update stage.SplitOrder accordingly

func (*Split) StageVoid

func (split *Split) StageVoid(stage *Stage)

func (*Split) Unstage

func (split *Split) Unstage(stage *Stage) *Split

Unstage removes split off the model stage

func (*Split) UnstageVoid

func (split *Split) UnstageVoid(stage *Stage)

UnstageVoid removes split off the model stage

type SplitUnmarshaller

type SplitUnmarshaller struct{}

func (*SplitUnmarshaller) Initialize

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

func (*SplitUnmarshaller) UnmarshallField

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

type Split_WOP

type Split_WOP struct {
	Name string

	StackName string
}

type Stage

type Stage struct {

	// insertion point for definition of arrays registering instances
	AsSplits                map[*AsSplit]struct{}
	AsSplits_reference      map[*AsSplit]*AsSplit
	AsSplits_referenceOrder map[*AsSplit]uint // diff Unstage needs the reference order
	AsSplits_mapString      map[string]*AsSplit

	// insertion point for slice of pointers maps
	AsSplit_AsSplitAreas_reverseMap map[*AsSplitArea]*AsSplit

	OnAfterAsSplitCreateCallback OnAfterCreateInterface[AsSplit]
	OnAfterAsSplitUpdateCallback OnAfterUpdateInterface[AsSplit]
	OnAfterAsSplitDeleteCallback OnAfterDeleteInterface[AsSplit]
	OnAfterAsSplitReadCallback   OnAfterReadInterface[AsSplit]

	AsSplitAreas                map[*AsSplitArea]struct{}
	AsSplitAreas_reference      map[*AsSplitArea]*AsSplitArea
	AsSplitAreas_referenceOrder map[*AsSplitArea]uint // diff Unstage needs the reference order
	AsSplitAreas_mapString      map[string]*AsSplitArea

	// insertion point for slice of pointers maps
	OnAfterAsSplitAreaCreateCallback OnAfterCreateInterface[AsSplitArea]
	OnAfterAsSplitAreaUpdateCallback OnAfterUpdateInterface[AsSplitArea]
	OnAfterAsSplitAreaDeleteCallback OnAfterDeleteInterface[AsSplitArea]
	OnAfterAsSplitAreaReadCallback   OnAfterReadInterface[AsSplitArea]

	Buttons                map[*Button]struct{}
	Buttons_reference      map[*Button]*Button
	Buttons_referenceOrder map[*Button]uint // diff Unstage needs the reference order
	Buttons_mapString      map[string]*Button

	// insertion point for slice of pointers maps
	OnAfterButtonCreateCallback OnAfterCreateInterface[Button]
	OnAfterButtonUpdateCallback OnAfterUpdateInterface[Button]
	OnAfterButtonDeleteCallback OnAfterDeleteInterface[Button]
	OnAfterButtonReadCallback   OnAfterReadInterface[Button]

	Cursors                map[*Cursor]struct{}
	Cursors_reference      map[*Cursor]*Cursor
	Cursors_referenceOrder map[*Cursor]uint // diff Unstage needs the reference order
	Cursors_mapString      map[string]*Cursor

	// insertion point for slice of pointers maps
	OnAfterCursorCreateCallback OnAfterCreateInterface[Cursor]
	OnAfterCursorUpdateCallback OnAfterUpdateInterface[Cursor]
	OnAfterCursorDeleteCallback OnAfterDeleteInterface[Cursor]
	OnAfterCursorReadCallback   OnAfterReadInterface[Cursor]

	FavIcons                map[*FavIcon]struct{}
	FavIcons_reference      map[*FavIcon]*FavIcon
	FavIcons_referenceOrder map[*FavIcon]uint // diff Unstage needs the reference order
	FavIcons_mapString      map[string]*FavIcon

	// insertion point for slice of pointers maps
	OnAfterFavIconCreateCallback OnAfterCreateInterface[FavIcon]
	OnAfterFavIconUpdateCallback OnAfterUpdateInterface[FavIcon]
	OnAfterFavIconDeleteCallback OnAfterDeleteInterface[FavIcon]
	OnAfterFavIconReadCallback   OnAfterReadInterface[FavIcon]

	Forms                map[*Form]struct{}
	Forms_reference      map[*Form]*Form
	Forms_referenceOrder map[*Form]uint // diff Unstage needs the reference order
	Forms_mapString      map[string]*Form

	// insertion point for slice of pointers maps
	OnAfterFormCreateCallback OnAfterCreateInterface[Form]
	OnAfterFormUpdateCallback OnAfterUpdateInterface[Form]
	OnAfterFormDeleteCallback OnAfterDeleteInterface[Form]
	OnAfterFormReadCallback   OnAfterReadInterface[Form]

	Loads                map[*Load]struct{}
	Loads_reference      map[*Load]*Load
	Loads_referenceOrder map[*Load]uint // diff Unstage needs the reference order
	Loads_mapString      map[string]*Load

	// insertion point for slice of pointers maps
	OnAfterLoadCreateCallback OnAfterCreateInterface[Load]
	OnAfterLoadUpdateCallback OnAfterUpdateInterface[Load]
	OnAfterLoadDeleteCallback OnAfterDeleteInterface[Load]
	OnAfterLoadReadCallback   OnAfterReadInterface[Load]

	LogoOnTheLefts                map[*LogoOnTheLeft]struct{}
	LogoOnTheLefts_reference      map[*LogoOnTheLeft]*LogoOnTheLeft
	LogoOnTheLefts_referenceOrder map[*LogoOnTheLeft]uint // diff Unstage needs the reference order
	LogoOnTheLefts_mapString      map[string]*LogoOnTheLeft

	// insertion point for slice of pointers maps
	OnAfterLogoOnTheLeftCreateCallback OnAfterCreateInterface[LogoOnTheLeft]
	OnAfterLogoOnTheLeftUpdateCallback OnAfterUpdateInterface[LogoOnTheLeft]
	OnAfterLogoOnTheLeftDeleteCallback OnAfterDeleteInterface[LogoOnTheLeft]
	OnAfterLogoOnTheLeftReadCallback   OnAfterReadInterface[LogoOnTheLeft]

	LogoOnTheRights                map[*LogoOnTheRight]struct{}
	LogoOnTheRights_reference      map[*LogoOnTheRight]*LogoOnTheRight
	LogoOnTheRights_referenceOrder map[*LogoOnTheRight]uint // diff Unstage needs the reference order
	LogoOnTheRights_mapString      map[string]*LogoOnTheRight

	// insertion point for slice of pointers maps
	OnAfterLogoOnTheRightCreateCallback OnAfterCreateInterface[LogoOnTheRight]
	OnAfterLogoOnTheRightUpdateCallback OnAfterUpdateInterface[LogoOnTheRight]
	OnAfterLogoOnTheRightDeleteCallback OnAfterDeleteInterface[LogoOnTheRight]
	OnAfterLogoOnTheRightReadCallback   OnAfterReadInterface[LogoOnTheRight]

	Markdowns                map[*Markdown]struct{}
	Markdowns_reference      map[*Markdown]*Markdown
	Markdowns_referenceOrder map[*Markdown]uint // diff Unstage needs the reference order
	Markdowns_mapString      map[string]*Markdown

	// insertion point for slice of pointers maps
	OnAfterMarkdownCreateCallback OnAfterCreateInterface[Markdown]
	OnAfterMarkdownUpdateCallback OnAfterUpdateInterface[Markdown]
	OnAfterMarkdownDeleteCallback OnAfterDeleteInterface[Markdown]
	OnAfterMarkdownReadCallback   OnAfterReadInterface[Markdown]

	Sliders                map[*Slider]struct{}
	Sliders_reference      map[*Slider]*Slider
	Sliders_referenceOrder map[*Slider]uint // diff Unstage needs the reference order
	Sliders_mapString      map[string]*Slider

	// insertion point for slice of pointers maps
	OnAfterSliderCreateCallback OnAfterCreateInterface[Slider]
	OnAfterSliderUpdateCallback OnAfterUpdateInterface[Slider]
	OnAfterSliderDeleteCallback OnAfterDeleteInterface[Slider]
	OnAfterSliderReadCallback   OnAfterReadInterface[Slider]

	Splits                map[*Split]struct{}
	Splits_reference      map[*Split]*Split
	Splits_referenceOrder map[*Split]uint // diff Unstage needs the reference order
	Splits_mapString      map[string]*Split

	// insertion point for slice of pointers maps
	OnAfterSplitCreateCallback OnAfterCreateInterface[Split]
	OnAfterSplitUpdateCallback OnAfterUpdateInterface[Split]
	OnAfterSplitDeleteCallback OnAfterDeleteInterface[Split]
	OnAfterSplitReadCallback   OnAfterReadInterface[Split]

	Svgs                map[*Svg]struct{}
	Svgs_reference      map[*Svg]*Svg
	Svgs_referenceOrder map[*Svg]uint // diff Unstage needs the reference order
	Svgs_mapString      map[string]*Svg

	// insertion point for slice of pointers maps
	OnAfterSvgCreateCallback OnAfterCreateInterface[Svg]
	OnAfterSvgUpdateCallback OnAfterUpdateInterface[Svg]
	OnAfterSvgDeleteCallback OnAfterDeleteInterface[Svg]
	OnAfterSvgReadCallback   OnAfterReadInterface[Svg]

	Tables                map[*Table]struct{}
	Tables_reference      map[*Table]*Table
	Tables_referenceOrder map[*Table]uint // diff Unstage needs the reference order
	Tables_mapString      map[string]*Table

	// insertion point for slice of pointers maps
	OnAfterTableCreateCallback OnAfterCreateInterface[Table]
	OnAfterTableUpdateCallback OnAfterUpdateInterface[Table]
	OnAfterTableDeleteCallback OnAfterDeleteInterface[Table]
	OnAfterTableReadCallback   OnAfterReadInterface[Table]

	Titles                map[*Title]struct{}
	Titles_reference      map[*Title]*Title
	Titles_referenceOrder map[*Title]uint // diff Unstage needs the reference order
	Titles_mapString      map[string]*Title

	// insertion point for slice of pointers maps
	OnAfterTitleCreateCallback OnAfterCreateInterface[Title]
	OnAfterTitleUpdateCallback OnAfterUpdateInterface[Title]
	OnAfterTitleDeleteCallback OnAfterDeleteInterface[Title]
	OnAfterTitleReadCallback   OnAfterReadInterface[Title]

	Tones                map[*Tone]struct{}
	Tones_reference      map[*Tone]*Tone
	Tones_referenceOrder map[*Tone]uint // diff Unstage needs the reference order
	Tones_mapString      map[string]*Tone

	// insertion point for slice of pointers maps
	OnAfterToneCreateCallback OnAfterCreateInterface[Tone]
	OnAfterToneUpdateCallback OnAfterUpdateInterface[Tone]
	OnAfterToneDeleteCallback OnAfterDeleteInterface[Tone]
	OnAfterToneReadCallback   OnAfterReadInterface[Tone]

	Trees                map[*Tree]struct{}
	Trees_reference      map[*Tree]*Tree
	Trees_referenceOrder map[*Tree]uint // diff Unstage needs the reference order
	Trees_mapString      map[string]*Tree

	// insertion point for slice of pointers maps
	OnAfterTreeCreateCallback OnAfterCreateInterface[Tree]
	OnAfterTreeUpdateCallback OnAfterUpdateInterface[Tree]
	OnAfterTreeDeleteCallback OnAfterDeleteInterface[Tree]
	OnAfterTreeReadCallback   OnAfterReadInterface[Tree]

	Views                map[*View]struct{}
	Views_reference      map[*View]*View
	Views_referenceOrder map[*View]uint // diff Unstage needs the reference order
	Views_mapString      map[string]*View

	// insertion point for slice of pointers maps
	View_RootAsSplitAreas_reverseMap map[*AsSplitArea]*View

	OnAfterViewCreateCallback OnAfterCreateInterface[View]
	OnAfterViewUpdateCallback OnAfterUpdateInterface[View]
	OnAfterViewDeleteCallback OnAfterDeleteInterface[View]
	OnAfterViewReadCallback   OnAfterReadInterface[View]

	Xlsxs                map[*Xlsx]struct{}
	Xlsxs_reference      map[*Xlsx]*Xlsx
	Xlsxs_referenceOrder map[*Xlsx]uint // diff Unstage needs the reference order
	Xlsxs_mapString      map[string]*Xlsx

	// insertion point for slice of pointers maps
	OnAfterXlsxCreateCallback OnAfterCreateInterface[Xlsx]
	OnAfterXlsxUpdateCallback OnAfterUpdateInterface[Xlsx]
	OnAfterXlsxDeleteCallback OnAfterDeleteInterface[Xlsx]
	OnAfterXlsxReadCallback   OnAfterReadInterface[Xlsx]

	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

	// store the stage order of each instance in order to
	// preserve this order when serializing them
	// insertion point for order fields declaration
	AsSplitOrder            uint
	AsSplitMap_Staged_Order map[*AsSplit]uint

	AsSplitAreaOrder            uint
	AsSplitAreaMap_Staged_Order map[*AsSplitArea]uint

	ButtonOrder            uint
	ButtonMap_Staged_Order map[*Button]uint

	CursorOrder            uint
	CursorMap_Staged_Order map[*Cursor]uint

	FavIconOrder            uint
	FavIconMap_Staged_Order map[*FavIcon]uint

	FormOrder            uint
	FormMap_Staged_Order map[*Form]uint

	LoadOrder            uint
	LoadMap_Staged_Order map[*Load]uint

	LogoOnTheLeftOrder            uint
	LogoOnTheLeftMap_Staged_Order map[*LogoOnTheLeft]uint

	LogoOnTheRightOrder            uint
	LogoOnTheRightMap_Staged_Order map[*LogoOnTheRight]uint

	MarkdownOrder            uint
	MarkdownMap_Staged_Order map[*Markdown]uint

	SliderOrder            uint
	SliderMap_Staged_Order map[*Slider]uint

	SplitOrder            uint
	SplitMap_Staged_Order map[*Split]uint

	SvgOrder            uint
	SvgMap_Staged_Order map[*Svg]uint

	TableOrder            uint
	TableMap_Staged_Order map[*Table]uint

	TitleOrder            uint
	TitleMap_Staged_Order map[*Title]uint

	ToneOrder            uint
	ToneMap_Staged_Order map[*Tone]uint

	TreeOrder            uint
	TreeMap_Staged_Order map[*Tree]uint

	ViewOrder            uint
	ViewMap_Staged_Order map[*View]uint

	XlsxOrder            uint
	XlsxMap_Staged_Order map[*Xlsx]uint

	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) 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()

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) ComputeDifference

func (stage *Stage) ComputeDifference()

func (*Stage) ComputeInstancesNb

func (stage *Stage) ComputeInstancesNb()

func (*Stage) ComputeReference

func (stage *Stage) ComputeReference()

ComputeReference 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) GetDigramsEmbededDir

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

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) IsDeltaMode

func (stage *Stage) IsDeltaMode() bool

func (*Stage) IsStagedAsSplit

func (stage *Stage) IsStagedAsSplit(assplit *AsSplit) (ok bool)

insertion point for stage per struct

func (*Stage) IsStagedAsSplitArea

func (stage *Stage) IsStagedAsSplitArea(assplitarea *AsSplitArea) (ok bool)

func (*Stage) IsStagedButton

func (stage *Stage) IsStagedButton(button *Button) (ok bool)

func (*Stage) IsStagedCursor

func (stage *Stage) IsStagedCursor(cursor *Cursor) (ok bool)

func (*Stage) IsStagedFavIcon

func (stage *Stage) IsStagedFavIcon(favicon *FavIcon) (ok bool)

func (*Stage) IsStagedForm

func (stage *Stage) IsStagedForm(form *Form) (ok bool)

func (*Stage) IsStagedLoad

func (stage *Stage) IsStagedLoad(load *Load) (ok bool)

func (*Stage) IsStagedLogoOnTheLeft

func (stage *Stage) IsStagedLogoOnTheLeft(logoontheleft *LogoOnTheLeft) (ok bool)

func (*Stage) IsStagedLogoOnTheRight

func (stage *Stage) IsStagedLogoOnTheRight(logoontheright *LogoOnTheRight) (ok bool)

func (*Stage) IsStagedMarkdown

func (stage *Stage) IsStagedMarkdown(markdown *Markdown) (ok bool)

func (*Stage) IsStagedSlider

func (stage *Stage) IsStagedSlider(slider *Slider) (ok bool)

func (*Stage) IsStagedSplit

func (stage *Stage) IsStagedSplit(split *Split) (ok bool)

func (*Stage) IsStagedSvg

func (stage *Stage) IsStagedSvg(svg *Svg) (ok bool)

func (*Stage) IsStagedTable

func (stage *Stage) IsStagedTable(table *Table) (ok bool)

func (*Stage) IsStagedTitle

func (stage *Stage) IsStagedTitle(title *Title) (ok bool)

func (*Stage) IsStagedTone

func (stage *Stage) IsStagedTone(tone *Tone) (ok bool)

func (*Stage) IsStagedTree

func (stage *Stage) IsStagedTree(tree *Tree) (ok bool)

func (*Stage) IsStagedView

func (stage *Stage) IsStagedView(view *View) (ok bool)

func (*Stage) IsStagedXlsx

func (stage *Stage) IsStagedXlsx(xlsx *Xlsx) (ok bool)

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) Reset

func (stage *Stage) Reset()

func (*Stage) ResetCommits

func (stage *Stage) ResetCommits()

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) StageBranchAsSplit

func (stage *Stage) StageBranchAsSplit(assplit *AsSplit)

insertion point for stage branch per struct

func (*Stage) StageBranchAsSplitArea

func (stage *Stage) StageBranchAsSplitArea(assplitarea *AsSplitArea)

func (*Stage) StageBranchButton

func (stage *Stage) StageBranchButton(button *Button)

func (*Stage) StageBranchCursor

func (stage *Stage) StageBranchCursor(cursor *Cursor)

func (*Stage) StageBranchFavIcon

func (stage *Stage) StageBranchFavIcon(favicon *FavIcon)

func (*Stage) StageBranchForm

func (stage *Stage) StageBranchForm(form *Form)

func (*Stage) StageBranchLoad

func (stage *Stage) StageBranchLoad(load *Load)

func (*Stage) StageBranchLogoOnTheLeft

func (stage *Stage) StageBranchLogoOnTheLeft(logoontheleft *LogoOnTheLeft)

func (*Stage) StageBranchLogoOnTheRight

func (stage *Stage) StageBranchLogoOnTheRight(logoontheright *LogoOnTheRight)

func (*Stage) StageBranchMarkdown

func (stage *Stage) StageBranchMarkdown(markdown *Markdown)

func (*Stage) StageBranchSlider

func (stage *Stage) StageBranchSlider(slider *Slider)

func (*Stage) StageBranchSplit

func (stage *Stage) StageBranchSplit(split *Split)

func (*Stage) StageBranchSvg

func (stage *Stage) StageBranchSvg(svg *Svg)

func (*Stage) StageBranchTable

func (stage *Stage) StageBranchTable(table *Table)

func (*Stage) StageBranchTitle

func (stage *Stage) StageBranchTitle(title *Title)

func (*Stage) StageBranchTone

func (stage *Stage) StageBranchTone(tone *Tone)

func (*Stage) StageBranchTree

func (stage *Stage) StageBranchTree(tree *Tree)

func (*Stage) StageBranchView

func (stage *Stage) StageBranchView(view *View)

func (*Stage) StageBranchXlsx

func (stage *Stage) StageBranchXlsx(xlsx *Xlsx)

func (*Stage) Unstage

func (stage *Stage) Unstage()

func (*Stage) UnstageBranchAsSplit

func (stage *Stage) UnstageBranchAsSplit(assplit *AsSplit)

insertion point for unstage branch per struct

func (*Stage) UnstageBranchAsSplitArea

func (stage *Stage) UnstageBranchAsSplitArea(assplitarea *AsSplitArea)

func (*Stage) UnstageBranchButton

func (stage *Stage) UnstageBranchButton(button *Button)

func (*Stage) UnstageBranchCursor

func (stage *Stage) UnstageBranchCursor(cursor *Cursor)

func (*Stage) UnstageBranchFavIcon

func (stage *Stage) UnstageBranchFavIcon(favicon *FavIcon)

func (*Stage) UnstageBranchForm

func (stage *Stage) UnstageBranchForm(form *Form)

func (*Stage) UnstageBranchLoad

func (stage *Stage) UnstageBranchLoad(load *Load)

func (*Stage) UnstageBranchLogoOnTheLeft

func (stage *Stage) UnstageBranchLogoOnTheLeft(logoontheleft *LogoOnTheLeft)

func (*Stage) UnstageBranchLogoOnTheRight

func (stage *Stage) UnstageBranchLogoOnTheRight(logoontheright *LogoOnTheRight)

func (*Stage) UnstageBranchMarkdown

func (stage *Stage) UnstageBranchMarkdown(markdown *Markdown)

func (*Stage) UnstageBranchSlider

func (stage *Stage) UnstageBranchSlider(slider *Slider)

func (*Stage) UnstageBranchSplit

func (stage *Stage) UnstageBranchSplit(split *Split)

func (*Stage) UnstageBranchSvg

func (stage *Stage) UnstageBranchSvg(svg *Svg)

func (*Stage) UnstageBranchTable

func (stage *Stage) UnstageBranchTable(table *Table)

func (*Stage) UnstageBranchTitle

func (stage *Stage) UnstageBranchTitle(title *Title)

func (*Stage) UnstageBranchTone

func (stage *Stage) UnstageBranchTone(tone *Tone)

func (*Stage) UnstageBranchTree

func (stage *Stage) UnstageBranchTree(tree *Tree)

func (*Stage) UnstageBranchView

func (stage *Stage) UnstageBranchView(view *View)

func (*Stage) UnstageBranchXlsx

func (stage *Stage) UnstageBranchXlsx(xlsx *Xlsx)

type Svg

type Svg struct {
	Name      string // name of the stack
	StackName string
	Style     string
}

func CopyBranchSvg

func CopyBranchSvg(mapOrigCopy map[any]any, svgFrom *Svg) (svgTo *Svg)

func (*Svg) Checkout

func (svg *Svg) Checkout(stage *Stage) *Svg

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

func (*Svg) Commit

func (svg *Svg) Commit(stage *Stage) *Svg

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

func (*Svg) CommitVoid

func (svg *Svg) CommitVoid(stage *Stage)

func (*Svg) CopyBasicFields

func (from *Svg) CopyBasicFields(to *Svg)

func (*Svg) GetName

func (svg *Svg) GetName() (res string)

for satisfaction of GongStruct interface

func (*Svg) GongClean

func (svg *Svg) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Svg

func (*Svg) GongCopy

func (svg *Svg) GongCopy() GongstructIF

func (*Svg) GongDiff

func (svg *Svg) GongDiff(stage *Stage, svgOther *Svg) (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 (*Svg) GongGetFieldHeaders

func (svg *Svg) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Svg) GongGetFieldValue

func (svg *Svg) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Svg) GongGetGongstructName

func (svg *Svg) GongGetGongstructName() string

func (*Svg) GongGetIdentifier

func (svg *Svg) GongGetIdentifier(stage *Stage) string

func (*Svg) GongGetOrder

func (svg *Svg) GongGetOrder(stage *Stage) uint

func (*Svg) GongGetReferenceIdentifier

func (svg *Svg) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Svg) GongGetReferenceOrder

func (svg *Svg) GongGetReferenceOrder(stage *Stage) uint

func (*Svg) GongGetReverseFieldOwner

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

func (*Svg) GongGetReverseFieldOwnerName

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

func (*Svg) GongMarshallAllFields

func (svg *Svg) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Svg) GongMarshallField

func (svg *Svg) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Svg) GongMarshallIdentifier

func (svg *Svg) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Svg) GongMarshallUnstaging

func (svg *Svg) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Svg) GongSetFieldValue

func (svg *Svg) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Svg) SetName

func (svg *Svg) SetName(name string)

for satisfaction of GongStruct interface

func (*Svg) Stage

func (svg *Svg) Stage(stage *Stage) *Svg

Stage puts svg to the model stage

func (*Svg) StagePreserveOrder

func (svg *Svg) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts svg 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.SvgOrder - update stage.SvgOrder accordingly

func (*Svg) StageVoid

func (svg *Svg) StageVoid(stage *Stage)

func (*Svg) Unstage

func (svg *Svg) Unstage(stage *Stage) *Svg

Unstage removes svg off the model stage

func (*Svg) UnstageVoid

func (svg *Svg) UnstageVoid(stage *Stage)

UnstageVoid removes svg off the model stage

type SvgUnmarshaller

type SvgUnmarshaller struct{}

func (*SvgUnmarshaller) Initialize

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

func (*SvgUnmarshaller) UnmarshallField

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

type Svg_WOP

type Svg_WOP struct {
	Name string

	StackName string

	Style string
}

type Table

type Table struct {
	Name      string // name of the stack
	StackName string
}

func CopyBranchTable

func CopyBranchTable(mapOrigCopy map[any]any, tableFrom *Table) (tableTo *Table)

func (*Table) Checkout

func (table *Table) Checkout(stage *Stage) *Table

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

func (*Table) Commit

func (table *Table) Commit(stage *Stage) *Table

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

func (*Table) CommitVoid

func (table *Table) CommitVoid(stage *Stage)

func (*Table) CopyBasicFields

func (from *Table) CopyBasicFields(to *Table)

func (*Table) GetName

func (table *Table) GetName() (res string)

for satisfaction of GongStruct interface

func (*Table) GongClean

func (table *Table) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Table

func (*Table) GongCopy

func (table *Table) GongCopy() GongstructIF

func (*Table) GongDiff

func (table *Table) GongDiff(stage *Stage, tableOther *Table) (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 (*Table) GongGetFieldHeaders

func (table *Table) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Table) GongGetFieldValue

func (table *Table) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Table) GongGetGongstructName

func (table *Table) GongGetGongstructName() string

func (*Table) GongGetIdentifier

func (table *Table) GongGetIdentifier(stage *Stage) string

func (*Table) GongGetOrder

func (table *Table) GongGetOrder(stage *Stage) uint

func (*Table) GongGetReferenceIdentifier

func (table *Table) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Table) GongGetReferenceOrder

func (table *Table) GongGetReferenceOrder(stage *Stage) uint

func (*Table) GongGetReverseFieldOwner

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

func (*Table) GongGetReverseFieldOwnerName

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

func (*Table) GongMarshallAllFields

func (table *Table) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Table) GongMarshallField

func (table *Table) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Table) GongMarshallIdentifier

func (table *Table) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Table) GongMarshallUnstaging

func (table *Table) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Table) GongSetFieldValue

func (table *Table) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Table) SetName

func (table *Table) SetName(name string)

for satisfaction of GongStruct interface

func (*Table) Stage

func (table *Table) Stage(stage *Stage) *Table

Stage puts table to the model stage

func (*Table) StagePreserveOrder

func (table *Table) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts table 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.TableOrder - update stage.TableOrder accordingly

func (*Table) StageVoid

func (table *Table) StageVoid(stage *Stage)

func (*Table) Unstage

func (table *Table) Unstage(stage *Stage) *Table

Unstage removes table off the model stage

func (*Table) UnstageVoid

func (table *Table) UnstageVoid(stage *Stage)

UnstageVoid removes table off the model stage

type TableUnmarshaller

type TableUnmarshaller struct{}

func (*TableUnmarshaller) Initialize

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

func (*TableUnmarshaller) UnmarshallField

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

type Table_WOP

type Table_WOP struct {
	Name string

	StackName string
}

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 Title

type Title struct {
	Name string
}

You can configure the browser tab title and favicon dynamically in Angular

func CopyBranchTitle

func CopyBranchTitle(mapOrigCopy map[any]any, titleFrom *Title) (titleTo *Title)

func (*Title) Checkout

func (title *Title) Checkout(stage *Stage) *Title

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

func (*Title) Commit

func (title *Title) Commit(stage *Stage) *Title

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

func (*Title) CommitVoid

func (title *Title) CommitVoid(stage *Stage)

func (*Title) CopyBasicFields

func (from *Title) CopyBasicFields(to *Title)

func (*Title) GetName

func (title *Title) GetName() (res string)

for satisfaction of GongStruct interface

func (*Title) GongClean

func (title *Title) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Title

func (*Title) GongCopy

func (title *Title) GongCopy() GongstructIF

func (*Title) GongDiff

func (title *Title) GongDiff(stage *Stage, titleOther *Title) (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 (*Title) GongGetFieldHeaders

func (title *Title) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Title) GongGetFieldValue

func (title *Title) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Title) GongGetGongstructName

func (title *Title) GongGetGongstructName() string

func (*Title) GongGetIdentifier

func (title *Title) GongGetIdentifier(stage *Stage) string

func (*Title) GongGetOrder

func (title *Title) GongGetOrder(stage *Stage) uint

func (*Title) GongGetReferenceIdentifier

func (title *Title) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Title) GongGetReferenceOrder

func (title *Title) GongGetReferenceOrder(stage *Stage) uint

func (*Title) GongGetReverseFieldOwner

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

func (*Title) GongGetReverseFieldOwnerName

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

func (*Title) GongMarshallAllFields

func (title *Title) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Title) GongMarshallField

func (title *Title) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Title) GongMarshallIdentifier

func (title *Title) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Title) GongMarshallUnstaging

func (title *Title) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Title) GongSetFieldValue

func (title *Title) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Title) SetName

func (title *Title) SetName(name string)

for satisfaction of GongStruct interface

func (*Title) Stage

func (title *Title) Stage(stage *Stage) *Title

Stage puts title to the model stage

func (*Title) StagePreserveOrder

func (title *Title) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts title 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.TitleOrder - update stage.TitleOrder accordingly

func (*Title) StageVoid

func (title *Title) StageVoid(stage *Stage)

func (*Title) Unstage

func (title *Title) Unstage(stage *Stage) *Title

Unstage removes title off the model stage

func (*Title) UnstageVoid

func (title *Title) UnstageVoid(stage *Stage)

UnstageVoid removes title off the model stage

type TitleUnmarshaller

type TitleUnmarshaller struct{}

func (*TitleUnmarshaller) Initialize

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

func (*TitleUnmarshaller) UnmarshallField

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

type Title_WOP

type Title_WOP struct {
	Name string
}

type Tone

type Tone struct {
	Name      string // name of the stack
	StackName string
}

func CopyBranchTone

func CopyBranchTone(mapOrigCopy map[any]any, toneFrom *Tone) (toneTo *Tone)

func (*Tone) Checkout

func (tone *Tone) Checkout(stage *Stage) *Tone

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

func (*Tone) Commit

func (tone *Tone) Commit(stage *Stage) *Tone

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

func (*Tone) CommitVoid

func (tone *Tone) CommitVoid(stage *Stage)

func (*Tone) CopyBasicFields

func (from *Tone) CopyBasicFields(to *Tone)

func (*Tone) GetName

func (tone *Tone) GetName() (res string)

for satisfaction of GongStruct interface

func (*Tone) GongClean

func (tone *Tone) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Tone

func (*Tone) GongCopy

func (tone *Tone) GongCopy() GongstructIF

func (*Tone) GongDiff

func (tone *Tone) GongDiff(stage *Stage, toneOther *Tone) (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 (*Tone) GongGetFieldHeaders

func (tone *Tone) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Tone) GongGetFieldValue

func (tone *Tone) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Tone) GongGetGongstructName

func (tone *Tone) GongGetGongstructName() string

func (*Tone) GongGetIdentifier

func (tone *Tone) GongGetIdentifier(stage *Stage) string

func (*Tone) GongGetOrder

func (tone *Tone) GongGetOrder(stage *Stage) uint

func (*Tone) GongGetReferenceIdentifier

func (tone *Tone) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Tone) GongGetReferenceOrder

func (tone *Tone) GongGetReferenceOrder(stage *Stage) uint

func (*Tone) GongGetReverseFieldOwner

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

func (*Tone) GongGetReverseFieldOwnerName

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

func (*Tone) GongMarshallAllFields

func (tone *Tone) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Tone) GongMarshallField

func (tone *Tone) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Tone) GongMarshallIdentifier

func (tone *Tone) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Tone) GongMarshallUnstaging

func (tone *Tone) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Tone) GongSetFieldValue

func (tone *Tone) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Tone) SetName

func (tone *Tone) SetName(name string)

for satisfaction of GongStruct interface

func (*Tone) Stage

func (tone *Tone) Stage(stage *Stage) *Tone

Stage puts tone to the model stage

func (*Tone) StagePreserveOrder

func (tone *Tone) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts tone 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.ToneOrder - update stage.ToneOrder accordingly

func (*Tone) StageVoid

func (tone *Tone) StageVoid(stage *Stage)

func (*Tone) Unstage

func (tone *Tone) Unstage(stage *Stage) *Tone

Unstage removes tone off the model stage

func (*Tone) UnstageVoid

func (tone *Tone) UnstageVoid(stage *Stage)

UnstageVoid removes tone off the model stage

type ToneUnmarshaller

type ToneUnmarshaller struct{}

func (*ToneUnmarshaller) Initialize

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

func (*ToneUnmarshaller) UnmarshallField

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

type Tone_WOP

type Tone_WOP struct {
	Name string

	StackName string
}

type Tree

type Tree struct {
	Name      string // name of the stack
	StackName string
}

func CopyBranchTree

func CopyBranchTree(mapOrigCopy map[any]any, treeFrom *Tree) (treeTo *Tree)

func (*Tree) Checkout

func (tree *Tree) Checkout(stage *Stage) *Tree

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

func (*Tree) Commit

func (tree *Tree) Commit(stage *Stage) *Tree

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

func (*Tree) CommitVoid

func (tree *Tree) CommitVoid(stage *Stage)

func (*Tree) CopyBasicFields

func (from *Tree) CopyBasicFields(to *Tree)

func (*Tree) GetName

func (tree *Tree) GetName() (res string)

for satisfaction of GongStruct interface

func (*Tree) GongClean

func (tree *Tree) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Tree

func (*Tree) GongCopy

func (tree *Tree) GongCopy() GongstructIF

func (*Tree) GongDiff

func (tree *Tree) GongDiff(stage *Stage, treeOther *Tree) (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 (*Tree) GongGetFieldHeaders

func (tree *Tree) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Tree) GongGetFieldValue

func (tree *Tree) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Tree) GongGetGongstructName

func (tree *Tree) GongGetGongstructName() string

func (*Tree) GongGetIdentifier

func (tree *Tree) GongGetIdentifier(stage *Stage) string

func (*Tree) GongGetOrder

func (tree *Tree) GongGetOrder(stage *Stage) uint

func (*Tree) GongGetReferenceIdentifier

func (tree *Tree) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Tree) GongGetReferenceOrder

func (tree *Tree) GongGetReferenceOrder(stage *Stage) uint

func (*Tree) GongGetReverseFieldOwner

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

func (*Tree) GongGetReverseFieldOwnerName

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

func (*Tree) GongMarshallAllFields

func (tree *Tree) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Tree) GongMarshallField

func (tree *Tree) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Tree) GongMarshallIdentifier

func (tree *Tree) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Tree) GongMarshallUnstaging

func (tree *Tree) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Tree) GongSetFieldValue

func (tree *Tree) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Tree) SetName

func (tree *Tree) SetName(name string)

for satisfaction of GongStruct interface

func (*Tree) Stage

func (tree *Tree) Stage(stage *Stage) *Tree

Stage puts tree to the model stage

func (*Tree) StagePreserveOrder

func (tree *Tree) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts tree 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.TreeOrder - update stage.TreeOrder accordingly

func (*Tree) StageVoid

func (tree *Tree) StageVoid(stage *Stage)

func (*Tree) Unstage

func (tree *Tree) Unstage(stage *Stage) *Tree

Unstage removes tree off the model stage

func (*Tree) UnstageVoid

func (tree *Tree) UnstageVoid(stage *Stage)

UnstageVoid removes tree off the model stage

type TreeUnmarshaller

type TreeUnmarshaller struct{}

func (*TreeUnmarshaller) Initialize

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

func (*TreeUnmarshaller) UnmarshallField

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

type Tree_WOP

type Tree_WOP struct {
	Name string

	StackName string
}

type View

type View struct {
	Name             string
	ShowViewName     bool // by default, a standalone views wont display the
	RootAsSplitAreas []*AsSplitArea
	IsSelectedView   bool

	// Direction the initial direction for the split dividing of the view. Vertical if ""
	Direction Direction
}

View is the top structuring eleement of the split component

There can be many instancied views The one with models.IsSelectedView set to true will be displayed (if more than one view has this field to true, the behavior is not specified)

func CopyBranchView

func CopyBranchView(mapOrigCopy map[any]any, viewFrom *View) (viewTo *View)

func (*View) Checkout

func (view *View) Checkout(stage *Stage) *View

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

func (*View) Commit

func (view *View) Commit(stage *Stage) *View

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

func (*View) CommitVoid

func (view *View) CommitVoid(stage *Stage)

func (*View) CopyBasicFields

func (from *View) CopyBasicFields(to *View)

func (*View) GetName

func (view *View) GetName() (res string)

for satisfaction of GongStruct interface

func (*View) GongClean

func (view *View) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by View

func (*View) GongCopy

func (view *View) GongCopy() GongstructIF

func (*View) GongDiff

func (view *View) GongDiff(stage *Stage, viewOther *View) (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 (*View) GongGetFieldHeaders

func (view *View) GongGetFieldHeaders() (res []GongFieldHeader)

func (*View) GongGetFieldValue

func (view *View) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*View) GongGetGongstructName

func (view *View) GongGetGongstructName() string

func (*View) GongGetIdentifier

func (view *View) GongGetIdentifier(stage *Stage) string

func (*View) GongGetOrder

func (view *View) GongGetOrder(stage *Stage) uint

func (*View) GongGetReferenceIdentifier

func (view *View) GongGetReferenceIdentifier(stage *Stage) string

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

func (*View) GongGetReferenceOrder

func (view *View) GongGetReferenceOrder(stage *Stage) uint

func (*View) GongGetReverseFieldOwner

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

func (*View) GongGetReverseFieldOwnerName

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

func (*View) GongMarshallAllFields

func (view *View) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*View) GongMarshallField

func (view *View) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*View) GongMarshallIdentifier

func (view *View) GongMarshallIdentifier(stage *Stage) (decl string)

func (*View) GongMarshallUnstaging

func (view *View) GongMarshallUnstaging(stage *Stage) (decl string)

func (*View) GongSetFieldValue

func (view *View) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*View) SetName

func (view *View) SetName(name string)

for satisfaction of GongStruct interface

func (*View) Stage

func (view *View) Stage(stage *Stage) *View

Stage puts view to the model stage

func (*View) StagePreserveOrder

func (view *View) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts view 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.ViewOrder - update stage.ViewOrder accordingly

func (*View) StageVoid

func (view *View) StageVoid(stage *Stage)

func (*View) Unstage

func (view *View) Unstage(stage *Stage) *View

Unstage removes view off the model stage

func (*View) UnstageVoid

func (view *View) UnstageVoid(stage *Stage)

UnstageVoid removes view off the model stage

type ViewUnmarshaller

type ViewUnmarshaller struct{}

func (*ViewUnmarshaller) Initialize

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

func (*ViewUnmarshaller) UnmarshallField

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

type View_WOP

type View_WOP struct {
	Name string

	ShowViewName bool

	IsSelectedView bool

	Direction Direction
}

type Xlsx

type Xlsx struct {
	Name      string // name of the stack
	StackName string
}

func CopyBranchXlsx

func CopyBranchXlsx(mapOrigCopy map[any]any, xlsxFrom *Xlsx) (xlsxTo *Xlsx)

func (*Xlsx) Checkout

func (xlsx *Xlsx) Checkout(stage *Stage) *Xlsx

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

func (*Xlsx) Commit

func (xlsx *Xlsx) Commit(stage *Stage) *Xlsx

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

func (*Xlsx) CommitVoid

func (xlsx *Xlsx) CommitVoid(stage *Stage)

func (*Xlsx) CopyBasicFields

func (from *Xlsx) CopyBasicFields(to *Xlsx)

func (*Xlsx) GetName

func (xlsx *Xlsx) GetName() (res string)

for satisfaction of GongStruct interface

func (*Xlsx) GongClean

func (xlsx *Xlsx) GongClean(stage *Stage)

Clean garbage collect unstaged instances that are referenced by Xlsx

func (*Xlsx) GongCopy

func (xlsx *Xlsx) GongCopy() GongstructIF

func (*Xlsx) GongDiff

func (xlsx *Xlsx) GongDiff(stage *Stage, xlsxOther *Xlsx) (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 (*Xlsx) GongGetFieldHeaders

func (xlsx *Xlsx) GongGetFieldHeaders() (res []GongFieldHeader)

func (*Xlsx) GongGetFieldValue

func (xlsx *Xlsx) GongGetFieldValue(fieldName string, stage *Stage) (res GongFieldValue)

func (*Xlsx) GongGetGongstructName

func (xlsx *Xlsx) GongGetGongstructName() string

func (*Xlsx) GongGetIdentifier

func (xlsx *Xlsx) GongGetIdentifier(stage *Stage) string

func (*Xlsx) GongGetOrder

func (xlsx *Xlsx) GongGetOrder(stage *Stage) uint

func (*Xlsx) GongGetReferenceIdentifier

func (xlsx *Xlsx) GongGetReferenceIdentifier(stage *Stage) string

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

func (*Xlsx) GongGetReferenceOrder

func (xlsx *Xlsx) GongGetReferenceOrder(stage *Stage) uint

func (*Xlsx) GongGetReverseFieldOwner

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

func (*Xlsx) GongGetReverseFieldOwnerName

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

func (*Xlsx) GongMarshallAllFields

func (xlsx *Xlsx) GongMarshallAllFields(stage *Stage) (initializerStatements string, pointersInitializesStatements string)

func (*Xlsx) GongMarshallField

func (xlsx *Xlsx) GongMarshallField(stage *Stage, fieldName string) (res string)

func (*Xlsx) GongMarshallIdentifier

func (xlsx *Xlsx) GongMarshallIdentifier(stage *Stage) (decl string)

func (*Xlsx) GongMarshallUnstaging

func (xlsx *Xlsx) GongMarshallUnstaging(stage *Stage) (decl string)

func (*Xlsx) GongSetFieldValue

func (xlsx *Xlsx) GongSetFieldValue(fieldName string, value GongFieldValue, stage *Stage) error

func (*Xlsx) SetName

func (xlsx *Xlsx) SetName(name string)

for satisfaction of GongStruct interface

func (*Xlsx) Stage

func (xlsx *Xlsx) Stage(stage *Stage) *Xlsx

Stage puts xlsx to the model stage

func (*Xlsx) StagePreserveOrder

func (xlsx *Xlsx) StagePreserveOrder(stage *Stage, order uint)

StagePreserveOrder puts xlsx 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.XlsxOrder - update stage.XlsxOrder accordingly

func (*Xlsx) StageVoid

func (xlsx *Xlsx) StageVoid(stage *Stage)

func (*Xlsx) Unstage

func (xlsx *Xlsx) Unstage(stage *Stage) *Xlsx

Unstage removes xlsx off the model stage

func (*Xlsx) UnstageVoid

func (xlsx *Xlsx) UnstageVoid(stage *Stage)

UnstageVoid removes xlsx off the model stage

type XlsxUnmarshaller

type XlsxUnmarshaller struct{}

func (*XlsxUnmarshaller) Initialize

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

func (*XlsxUnmarshaller) UnmarshallField

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

type Xlsx_WOP

type Xlsx_WOP struct {
	Name string

	StackName string
}

Jump to

Keyboard shortcuts

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