Documentation ¶
Index ¶
- Variables
- type Acl
- type AclEntry
- type Backend
- type Bool
- type Director
- type Error
- type Float
- type Goto
- type ID
- type IP
- type Integer
- type Null
- type Penaltybox
- type RTime
- type Ratecounter
- type RemoteAcl
- type RemoteBackend
- type RemoteDictionary
- type RemoteDictionaryItem
- type RemoteVCL
- type String
- type Subroutine
- type Table
- type Time
- type Type
- type VCLType
Constants ¶
This section is empty.
Variables ¶
View Source
var ValueTypeMap = map[string]Type{ "INTEGER": IntegerType, "FLOAT": FloatType, "BOOL": BoolType, "ACL": AclType, "BACKEND": BackendType, "IP": IPType, "STRING": StringType, "RTIME": RTimeType, "TIME": TimeType, }
Functions ¶
This section is empty.
Types ¶
type Acl ¶
type Acl struct { Decl *ast.AclDeclaration IsUsed bool // mark this acl is accessed at least once }
type Backend ¶
type Backend struct { BackendDecl *ast.BackendDeclaration DirectorDecl *ast.DirectorDeclaration IsUsed bool // mark this backend is accessed at least once }
type Director ¶
type Director struct {
Decl *ast.DirectorDeclaration
}
type Goto ¶ added in v0.9.3
type Goto struct { Decl *ast.GotoStatement IsUsed bool // mark this goto is called at least once }
type Penaltybox ¶ added in v0.9.3
type Penaltybox struct { Decl *ast.PenaltyboxDeclaration IsUsed bool // mark this penaltybox is called at least once }
func (*Penaltybox) String ¶ added in v0.9.3
func (pb *Penaltybox) String() string
func (*Penaltybox) Token ¶ added in v0.9.3
func (pb *Penaltybox) Token() token.Token
func (*Penaltybox) Type ¶ added in v0.9.3
func (pb *Penaltybox) Type() Type
type Ratecounter ¶ added in v0.9.3
type Ratecounter struct { Decl *ast.RatecounterDeclaration IsUsed bool // mark this ratecounter is called at least once }
func (*Ratecounter) String ¶ added in v0.9.3
func (rc *Ratecounter) String() string
func (*Ratecounter) Token ¶ added in v0.9.3
func (rc *Ratecounter) Token() token.Token
func (*Ratecounter) Type ¶ added in v0.9.3
func (rc *Ratecounter) Type() Type
type RemoteBackend ¶ added in v0.9.3
TODO(davinci26): We can unmarshall all the properties from the TF file and lint them to make sure they have sane values.
type RemoteDictionary ¶ added in v0.9.3
type RemoteDictionary struct { Name string Items []*RemoteDictionaryItem }
type RemoteDictionaryItem ¶ added in v0.9.3
type Subroutine ¶
type Subroutine struct { Decl *ast.SubroutineDeclaration Body *ast.BlockStatement IsUsed bool // mark this subroutine is called at least once }
func (*Subroutine) String ¶
func (s *Subroutine) String() string
func (*Subroutine) Token ¶
func (s *Subroutine) Token() token.Token
func (*Subroutine) Type ¶
func (s *Subroutine) Type() Type
type Table ¶
type Table struct { Decl *ast.TableDeclaration Name string ValueType Type Properties []*ast.TableProperty IsUsed bool // mark this table is accessed at least once }
type Type ¶
type Type int
const ( // https://developer.fastly.com/reference/vcl/types/ NeverType Type = 0x000000000000000 AclType Type = 0x000000000000001 BackendType Type = 0x000000000000010 BoolType Type = 0x000000000000100 FloatType Type = 0x000000000001000 IDType Type = 0x000000000010000 IntegerType Type = 0x000000000100000 IPType Type = 0x000000001000000 RTimeType Type = 0x000000010000000 StringType Type = 0x000000100000000 TimeType Type = 0x000001000000000 NullType Type = 0x000010000000000 ErrorType Type = 0x000100000000000 SubroutineType Type = 0x001000000000000 TableType Type = 0x010000000000000 DirectorType Type = 0x100000000000000 PenaltyboxType Type = 0x100000000000001 RatecounterType Type = 0x100000000000010 GotoType Type = 0x100000000000100 // StringListType is unusual VCL type, just alias for Array<String>. // This type is used for variadic arguments of builtin function like h2.disable_header_compression(string...) // Note that this type must not be used in VCL codes, only use for linting function arguments. StringListType Type = 0x100000000001000 // ReqBackendType is a virtual type used to represent the special behavior of // the req.backend variable. Unlike typical backend variables, it can be cast // to a string. // Any backend is implicitly cast to ReqBackendType when set to req.backend. ReqBackendType Type = 0x100000000010000 )
Click to show internal directories.
Click to hide internal directories.