parser

package
v0.0.3 Latest Latest
Warning

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

Go to latest
Published: Dec 4, 2024 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation ¶

Index ¶

Constants ¶

This section is empty.

Variables ¶

This section is empty.

Functions ¶

func IsIntrinsic ¶

func IsIntrinsic(key string) bool

func IsIntrinsicFunc ¶

func IsIntrinsicFunc(node *yaml.Node) bool

Types ¶

type CFReference ¶

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

func NewCFReference ¶

func NewCFReference(id string, resourceRange iacTypes.Range) CFReference

func (CFReference) String ¶

func (cf CFReference) String() string

type EqualityOptions ¶

type EqualityOptions = int
const (
	IgnoreCase EqualityOptions = iota
)

type FileContext ¶

type FileContext struct {
	SourceFormat SourceFormat
	Ignores      ignore.Rules
	Parameters   map[string]*Parameter `json:"Parameters" yaml:"Parameters"`
	Resources    map[string]*Resource  `json:"Resources" yaml:"Resources"`
	Globals      map[string]*Resource  `json:"Globals" yaml:"Globals"`
	Mappings     map[string]any        `json:"Mappings,omitempty" yaml:"Mappings"`
	Conditions   map[string]Property   `json:"Conditions,omitempty" yaml:"Conditions"`
	// contains filtered or unexported fields
}

func (*FileContext) GetResourceByLogicalID ¶

func (t *FileContext) GetResourceByLogicalID(name string) *Resource

func (*FileContext) GetResourcesByType ¶

func (t *FileContext) GetResourcesByType(names ...string) []*Resource

func (*FileContext) Metadata ¶

func (t *FileContext) Metadata() iacTypes.Metadata

type FileContexts ¶

type FileContexts []*FileContext

type InvalidContentError ¶

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

func NewErrInvalidContent ¶

func NewErrInvalidContent(source string, err error) *InvalidContentError

func (*InvalidContentError) Error ¶

func (e *InvalidContentError) Error() string

func (*InvalidContentError) Reason ¶

func (e *InvalidContentError) Reason() error

type Option ¶

type Option func(*Parser)

func WithConfigsFS ¶

func WithConfigsFS(fsys fs.FS) Option

func WithParameterFiles ¶

func WithParameterFiles(files ...string) Option

func WithParameters ¶

func WithParameters(params map[string]any) Option

type Parameter ¶

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

func (*Parameter) Default ¶

func (p *Parameter) Default() any

func (*Parameter) Type ¶

func (p *Parameter) Type() cftypes.CfType

func (*Parameter) UnmarshalJSONWithMetadata ¶

func (p *Parameter) UnmarshalJSONWithMetadata(node jfather.Node) error

func (*Parameter) UnmarshalYAML ¶

func (p *Parameter) UnmarshalYAML(node *yaml.Node) error

func (*Parameter) UpdateDefault ¶

func (p *Parameter) UpdateDefault(inVal any)

type Parameters ¶

type Parameters map[string]any

func (*Parameters) Merge ¶

func (p *Parameters) Merge(other Parameters)

func (*Parameters) UnmarshalJSON ¶

func (p *Parameters) UnmarshalJSON(data []byte) error

type Parser ¶

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

func New ¶

func New(opts ...Option) *Parser

func (*Parser) ParseFS ¶

func (p *Parser) ParseFS(ctx context.Context, fsys fs.FS, dir string) (FileContexts, error)

func (*Parser) ParseFile ¶

func (p *Parser) ParseFile(ctx context.Context, fsys fs.FS, filePath string) (fctx *FileContext, err error)

type Property ¶

type Property struct {
	Inner PropertyInner
	// contains filtered or unexported fields
}

func GetAzs ¶

func GetAzs(property *Property) (*Property, bool)

func GetCidr ¶

func GetCidr(property *Property) (*Property, bool)

func ImportPlaceholder ¶

func ImportPlaceholder(property *Property) (*Property, bool)

func PassthroughResolution ¶

func PassthroughResolution(property *Property) (*Property, bool)

func ResolveAnd ¶

func ResolveAnd(property *Property) (resolved *Property, success bool)

func ResolveBase64 ¶

func ResolveBase64(property *Property) (*Property, bool)

func ResolveCondition ¶

func ResolveCondition(property *Property) (resolved *Property, success bool)

func ResolveEquals ¶

func ResolveEquals(property *Property) (resolved *Property, success bool)

func ResolveFindInMap ¶

func ResolveFindInMap(property *Property) (resolved *Property, success bool)

func ResolveGetAtt ¶

func ResolveGetAtt(property *Property) (resolved *Property, success bool)

func ResolveIf ¶

func ResolveIf(property *Property) (resolved *Property, success bool)

func ResolveIntrinsicFunc ¶

func ResolveIntrinsicFunc(property *Property) (*Property, bool)

func ResolveJoin ¶

func ResolveJoin(property *Property) (resolved *Property, success bool)

func ResolveLength ¶

func ResolveLength(property *Property) (*Property, bool)

func ResolveNot ¶

func ResolveNot(property *Property) (resolved *Property, success bool)

func ResolveOr ¶

func ResolveOr(property *Property) (resolved *Property, success bool)

func ResolveReference ¶

func ResolveReference(property *Property) (resolved *Property, success bool)

func ResolveSelect ¶

func ResolveSelect(property *Property) (resolved *Property, success bool)

func ResolveSplit ¶

func ResolveSplit(property *Property) (resolved *Property, success bool)

func ResolveSub ¶

func ResolveSub(property *Property) (resolved *Property, success bool)

func (*Property) AsBool ¶

func (p *Property) AsBool() bool

func (*Property) AsBoolValue ¶

func (p *Property) AsBoolValue() iacTypes.BoolValue

func (*Property) AsInt ¶

func (p *Property) AsInt() int

func (*Property) AsIntValue ¶

func (p *Property) AsIntValue() iacTypes.IntValue

func (*Property) AsList ¶

func (p *Property) AsList() []*Property

func (*Property) AsMap ¶

func (p *Property) AsMap() map[string]*Property

func (*Property) AsRawStrings ¶

func (p *Property) AsRawStrings() ([]string, error)

func (*Property) AsString ¶

func (p *Property) AsString() string

func (*Property) AsStringValue ¶

func (p *Property) AsStringValue() iacTypes.StringValue

func (*Property) BoolDefault ¶

func (p *Property) BoolDefault(defaultValue bool) iacTypes.BoolValue

func (*Property) Comment ¶

func (p *Property) Comment() string

func (*Property) Contains ¶

func (p *Property) Contains(checkVal any) bool

func (*Property) ConvertTo ¶

func (p *Property) ConvertTo(conversionType cftypes.CfType) *Property

func (*Property) EqualTo ¶

func (p *Property) EqualTo(checkValue any, equalityOptions ...EqualityOptions) bool

func (*Property) GetBoolProperty ¶

func (p *Property) GetBoolProperty(path string, defaultValue ...bool) iacTypes.BoolValue

func (*Property) GetIntProperty ¶

func (p *Property) GetIntProperty(path string, defaultValue ...int) iacTypes.IntValue

func (*Property) GetJsonBytes ¶

func (p *Property) GetJsonBytes(squashList ...bool) []byte

func (*Property) GetJsonBytesAsString ¶

func (p *Property) GetJsonBytesAsString(squashList ...bool) string

func (*Property) GetProperty ¶

func (p *Property) GetProperty(path string) *Property

func (*Property) GetStringProperty ¶

func (p *Property) GetStringProperty(path string, defaultValue ...string) iacTypes.StringValue

func (*Property) IntDefault ¶

func (p *Property) IntDefault(defaultValue int) iacTypes.IntValue

func (*Property) Is ¶

func (p *Property) Is(t cftypes.CfType) bool

func (*Property) IsBool ¶

func (p *Property) IsBool() bool

func (*Property) IsConvertableTo ¶

func (p *Property) IsConvertableTo(conversionType cftypes.CfType) bool

func (*Property) IsEmpty ¶

func (p *Property) IsEmpty() bool

func (*Property) IsInt ¶

func (p *Property) IsInt() bool

func (*Property) IsList ¶

func (p *Property) IsList() bool

func (*Property) IsMap ¶

func (p *Property) IsMap() bool

func (*Property) IsNil ¶

func (p *Property) IsNil() bool

func (*Property) IsNotBool ¶

func (p *Property) IsNotBool() bool

func (*Property) IsNotInt ¶

func (p *Property) IsNotInt() bool

func (*Property) IsNotList ¶

func (p *Property) IsNotList() bool

func (*Property) IsNotMap ¶

func (p *Property) IsNotMap() bool

func (*Property) IsNotNil ¶

func (p *Property) IsNotNil() bool

func (*Property) IsNotString ¶

func (p *Property) IsNotString() bool

func (*Property) IsString ¶

func (p *Property) IsString() bool

func (*Property) IsTrue ¶

func (p *Property) IsTrue() bool

func (*Property) IsUnresolved ¶

func (p *Property) IsUnresolved() bool

func (*Property) Len ¶

func (p *Property) Len() int

func (*Property) Metadata ¶

func (p *Property) Metadata() iacTypes.Metadata

func (*Property) ParentRange ¶

func (p *Property) ParentRange() iacTypes.Range

func (*Property) Range ¶

func (p *Property) Range() iacTypes.Range

func (*Property) RawValue ¶

func (p *Property) RawValue() any

func (*Property) SetLogicalResource ¶

func (p *Property) SetLogicalResource(id string)

func (*Property) String ¶

func (p *Property) String() string

func (*Property) StringDefault ¶

func (p *Property) StringDefault(defaultValue string) iacTypes.StringValue

func (*Property) Type ¶

func (p *Property) Type() cftypes.CfType

func (*Property) UnmarshalJSONWithMetadata ¶

func (p *Property) UnmarshalJSONWithMetadata(node jfather.Node) error

func (*Property) UnmarshalYAML ¶

func (p *Property) UnmarshalYAML(node *yaml.Node) error

type PropertyInner ¶

type PropertyInner struct {
	Type  cftypes.CfType
	Value any `json:"Value" yaml:"Value"`
}

type Resource ¶

type Resource struct {
	Inner ResourceInner
	// contains filtered or unexported fields
}

func (*Resource) BoolDefault ¶

func (r *Resource) BoolDefault(defaultValue bool) iacTypes.BoolValue

func (*Resource) GetBoolProperty ¶

func (r *Resource) GetBoolProperty(path string, defaultValue ...bool) iacTypes.BoolValue

func (*Resource) GetIntProperty ¶

func (r *Resource) GetIntProperty(path string, defaultValue ...int) iacTypes.IntValue

func (*Resource) GetProperty ¶

func (r *Resource) GetProperty(path string) *Property

func (*Resource) GetStringProperty ¶

func (r *Resource) GetStringProperty(path string, defaultValue ...string) iacTypes.StringValue

func (*Resource) ID ¶

func (r *Resource) ID() string

func (*Resource) IntDefault ¶

func (r *Resource) IntDefault(defaultValue int) iacTypes.IntValue

func (*Resource) IsNil ¶

func (r *Resource) IsNil() bool

func (*Resource) Metadata ¶

func (r *Resource) Metadata() iacTypes.Metadata

func (*Resource) Range ¶

func (r *Resource) Range() iacTypes.Range

func (*Resource) SourceFormat ¶

func (r *Resource) SourceFormat() SourceFormat

func (*Resource) StringDefault ¶

func (r *Resource) StringDefault(defaultValue string) iacTypes.StringValue

func (*Resource) Type ¶

func (r *Resource) Type() string

func (*Resource) UnmarshalJSONWithMetadata ¶

func (r *Resource) UnmarshalJSONWithMetadata(node jfather.Node) error

func (*Resource) UnmarshalYAML ¶

func (r *Resource) UnmarshalYAML(value *yaml.Node) error

type ResourceInner ¶

type ResourceInner struct {
	Type       string               `json:"Type" yaml:"Type"`
	Properties map[string]*Property `json:"Properties" yaml:"Properties"`
}

type SourceFormat ¶

type SourceFormat string
const (
	YamlSourceFormat SourceFormat = "yaml"
	JsonSourceFormat SourceFormat = "json"
)

Jump to

Keyboard shortcuts

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