# Packages
Package schematest is used for testing with the default OpenConfig generated structs.
# Functions
BytesToGoByteSlice takes an input slice of bytes and outputs it as a slice of strings corresponding to lines of Go source code that define the byte slice.
FindSchemaPath finds the relative or absolute schema path of a given field of a Directory.
FindShadowSchemaPath finds the relative or absolute schema path of a given field of a Directory with preference to the shadow path.
GenerateIR creates the ygen intermediate representation for a set of YANG modules.
GetOrderedDirectories returns an alphabetically-ordered slice of Directory names and a map of Directories keyed by their names instead of their paths, so that each directory can be processed in alphabetical order.
GetOrderedFieldNames returns the field names of a Directory in alphabetical order.
GetOrderedPathDirectories returns an alphabetically-ordered slice of Directory names and a map of Directories keyed by their paths, so that each directory can be processed in path-alphabetical order.
GoFieldNameMap returns a map containing the Go name for a field (key is the field schema name).
IsYgenDefinedGoType returns true if the native type of a MappedType is a Go type that's defined by ygen's generated code.
MakeFakeRoot creates and returns a fakeroot *yang.Entry with rootName as its name.
WriteGzippedByteSlice takes an input slice of bytes, gzips it and returns the resulting compressed output as a byte slice.
# Constants
AnyDataNode represents a YANG 'anydata'.
Container represents a YANG 'container'.
ContainerNode indicates a YANG 'container'.
DerivedEnumerationType represents enumerations that are defined within a YANG 'typedef'.
DerivedUnionEnumerationType represents a 'enumeration' defined within a union that is itself within a typedef.
EnumeratedUnionSuffix is the type name suffix given to enumerations defined as part of a union type.
IdentityType represents an enumeration that is an 'identity' within the YANG schema.
InvalidNode represents a node that has not been correctly set up.
LeafListNode represents a YANG 'leaf-list'.
LeafNode represents a YANG 'leaf'.
List represents a YANG 'list' that is 'ordered-by system'.
ListNode indicates a YANG 'list'.
OrderedList represents a YANG 'list' that is 'ordered-by user'.
SimpleEnumerationType represents 'enumeration' leaves within the YANG schema that are defined inline.
UnionEnumerationType represents a 'type enumeration' defined within a union.
# Structs
Directory stores information needed for outputting a data node of the generated code.
EnumeratedYANGType is an abstract representation of an enumerated type to be produced in the output code.
IR represents the returned intermediate representation produced by ygen to be consumed by language-specific passes prior to code generation.
IROptions contains options used to customize IR generation.
LangMapperBase contains unexported base types and exported built-in methods that all LangMapper implementation instances should embed.
MappedType is used to store the generated language type that a leaf entity in YANG is mapped to.
MappedUnionSubtype stores information associated with a union subtype within a MappedType.
NodeDetails describes an individual field of the generated code tree.
ParsedDirectory describes an internal node within the generated code.
ParseOpts contains parsing configuration for a given schema.
TransformationOpts specifies transformations to the generated code with respect to the input schema.
UnimplementedLangMapperExt should be embedded to have forward compatible implementations.
YangListAttr is used to store the additional elements for a Go struct that are required if the struct represents a YANG list.
YANGNodeDetails stores the YANG-specific details of a node within the schema.
# Interfaces
LangMapper is the interface to be implemented by a language-specific library and provided as an input to the IR production phase of ygen.
LangMapperBaseSetup defines setup methods that are required for all LangMapper instances.
LangMapperExt contains extensions that the LangMapper instance should implement if extra information from the IR is required.
# Type aliases
DirType describes the different types of Directory that can be output within the IR such that 'list' directories can have special handling applied.
EnumeratedValueType is used to indicate the source YANG type that an enumeration was generated based on.
NodeType describes the different types of node that can be output within the IR.