lang

package
v0.0.0-...-edfa39e Latest Latest
Warning

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

Go to latest
Published: Jan 28, 2019 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ExternFunctionMetadata = []ast.FunctionMetadata{
	{
		Name:          "ip",
		ReturnType:    config.IP_ADDRESS,
		ArgumentTypes: []config.ValueType{config.STRING},
	},
	{
		Name:          "timestamp",
		ReturnType:    config.TIMESTAMP,
		ArgumentTypes: []config.ValueType{config.STRING},
	},
	{
		Name:          "dnsName",
		ReturnType:    config.DNS_NAME,
		ArgumentTypes: []config.ValueType{config.STRING},
	},
	{
		Name:          "email",
		ReturnType:    config.EMAIL_ADDRESS,
		ArgumentTypes: []config.ValueType{config.STRING},
	},
	{
		Name:          "uri",
		ReturnType:    config.URI,
		ArgumentTypes: []config.ValueType{config.STRING},
	},
	{
		Name:          "match",
		ReturnType:    config.BOOL,
		ArgumentTypes: []config.ValueType{config.STRING, config.STRING},
	},
	{
		Name:          "matches",
		Instance:      true,
		TargetType:    config.STRING,
		ReturnType:    config.BOOL,
		ArgumentTypes: []config.ValueType{config.STRING},
	},
	{
		Name:          "startsWith",
		Instance:      true,
		TargetType:    config.STRING,
		ReturnType:    config.BOOL,
		ArgumentTypes: []config.ValueType{config.STRING},
	},
	{
		Name:          "endsWith",
		Instance:      true,
		TargetType:    config.STRING,
		ReturnType:    config.BOOL,
		ArgumentTypes: []config.ValueType{config.STRING},
	},
	{
		Name:          "emptyStringMap",
		ReturnType:    config.STRING_MAP,
		ArgumentTypes: []config.ValueType{},
	},
	{
		Name:          "conditionalString",
		ReturnType:    config.STRING,
		ArgumentTypes: []config.ValueType{config.BOOL, config.STRING, config.STRING},
	},
	{
		Name:          "toLower",
		ReturnType:    config.STRING,
		ArgumentTypes: []config.ValueType{config.STRING},
	},
}

ExternFunctionMetadata is the type-metadata about externs. It gets used during compilations.

View Source
var Externs = map[string]interpreter.Extern{
	"ip":                interpreter.ExternFromFn("ip", externIP),
	"ip_equal":          interpreter.ExternFromFn("ip_equal", externIPEqual),
	"timestamp":         interpreter.ExternFromFn("timestamp", externTimestamp),
	"timestamp_equal":   interpreter.ExternFromFn("timestamp_equal", externTimestampEqual),
	"timestamp_lt":      interpreter.ExternFromFn("timestamp_lt", externTimestampLt),
	"timestamp_le":      interpreter.ExternFromFn("timestamp_le", externTimestampLe),
	"timestamp_gt":      interpreter.ExternFromFn("timestamp_gt", externTimestampGt),
	"timestamp_ge":      interpreter.ExternFromFn("timestamp_ge", externTimestampGe),
	"dnsName":           interpreter.ExternFromFn("dnsName", externDNSName),
	"dnsName_equal":     interpreter.ExternFromFn("dnsName_equal", externDNSNameEqual),
	"email":             interpreter.ExternFromFn("email", externEmail),
	"email_equal":       interpreter.ExternFromFn("email_equal", externEmailEqual),
	"uri":               interpreter.ExternFromFn("uri", externURI),
	"uri_equal":         interpreter.ExternFromFn("uri_equal", externURIEqual),
	"match":             interpreter.ExternFromFn("match", externMatch),
	"matches":           interpreter.ExternFromFn("matches", externMatches),
	"startsWith":        interpreter.ExternFromFn("startsWith", externStartsWith),
	"endsWith":          interpreter.ExternFromFn("endsWith", externEndsWith),
	"emptyStringMap":    interpreter.ExternFromFn("emptyStringMap", externEmptyStringMap),
	"conditionalString": interpreter.ExternFromFn("conditionalString", externConditionalString),
	"toLower":           interpreter.ExternFromFn("toLower", externToLower),
}

Externs contains the list of standard external functions used during evaluation.

Functions

This section is empty.

Types

This section is empty.

Directories

Path Synopsis
Package compiler implements a compiler that converts Mixer's expression language into a Mixer IL-based program that can be executed via an interpreter.
Package compiler implements a compiler that converts Mixer's expression language into a Mixer IL-based program that can be executed via an interpreter.

Jump to

Keyboard shortcuts

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