kcl → types →
Expr
An expression can be evaluated to yield a single KCL value.
This schema accepts exactly one of the following:
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: Literal | No | |
value | LiteralValue | An expression can be evaluated to yield a single KCL value. | No |
raw | string | No | |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: Identifier | No | |
name | string | No | |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: TagDeclarator | No | |
value | string | No | |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: BinaryExpression | No | |
operator | BinaryOperator | An expression can be evaluated to yield a single KCL value. | No |
left | BinaryPart | An expression can be evaluated to yield a single KCL value. | No |
right | BinaryPart | An expression can be evaluated to yield a single KCL value. | No |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: FunctionExpression | No | |
params | [ Parameter ] | No | |
body | Program | An expression can be evaluated to yield a single KCL value. | No |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: CallExpression | No | |
callee | Identifier | An expression can be evaluated to yield a single KCL value. | No |
arguments | [ Expr ] | No | |
optional | boolean | No | |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: PipeExpression | No | |
body | [ Expr ] | No | |
nonCodeMeta | NonCodeMeta | An expression can be evaluated to yield a single KCL value. | No |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: PipeSubstitution | No | |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: ArrayExpression | No | |
elements | [ Expr ] | No | |
nonCodeMeta | NonCodeMeta | An expression can be evaluated to yield a single KCL value. | No |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: ArrayRangeExpression | No | |
startElement | Expr | An expression can be evaluated to yield a single KCL value. | No |
endElement | Expr | An expression can be evaluated to yield a single KCL value. | No |
endInclusive | boolean | Is the end_element included in the range? | No |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: ObjectExpression | No | |
properties | [ ObjectProperty ] | No | |
nonCodeMeta | NonCodeMeta | An expression can be evaluated to yield a single KCL value. | No |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: MemberExpression | No | |
object | MemberObject | An expression can be evaluated to yield a single KCL value. | No |
property | LiteralIdentifier | An expression can be evaluated to yield a single KCL value. | No |
computed | boolean | No | |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: UnaryExpression | No | |
operator | UnaryOperator | An expression can be evaluated to yield a single KCL value. | No |
argument | BinaryPart | An expression can be evaluated to yield a single KCL value. | No |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: IfExpression | No | |
cond | Expr | An expression can be evaluated to yield a single KCL value. | No |
then_val | Program | An expression can be evaluated to yield a single KCL value. | No |
else_ifs | [ ElseIf ] | No | |
final_else | Program | An expression can be evaluated to yield a single KCL value. | No |
digest | [, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer, integer] | No | |
start | integer | No | |
end | integer | No |
KCL value for an optional parameter which was not given an argument. (remember, parameters are in the function declaration, arguments are in the function call/application).
Type: object
Properties
Property | Type | Description | Required |
---|---|---|---|
type | enum: None | No | |
start | integer | No | |
end | integer | No |