ValueKind Enum

From The Oxygene Language Wiki

Jump to:navigation, search

This is a Language topic
Feel free to add your notes to this topic below.


ValueKind is used in the Value Class and it's subclasses as a fast way to see what kind of value an instance is, without having to use "is" checks on all types.

Namespace: Cirrus Values


Enum Values

Value
Description
AnonymousMethod An anonymous method (or lambda).
AnonymousParameter Anonymous parameter value (a reference to an anonymous parameter defined on an anonymous method).
Array The value is an inline array expression. Like ['124', 1, nil].
ArrayCtorCall The value is a call to an array constructor, like new byte[16].
BeginLocalVar The value is a reference to a local defined in a BeginStatement Class.
Between The value is a between value, like 1 < a < 3.
BinValueOp The value is a binary expression, like 1 + 1.
CaseThe value is a case expression.
Coalesce The value is a coalesce expression.
ConstructorOf The value is a ConstructorOf reference to a constructor.
Data The value is a data value.
Default The value is a Default(type) expression.
ExceptLocalVar The value points to a local defined in an Except block.
FieldOf The value is a System.Reflection.FieldInfo to a field.
FieldVar The value is a reference to an instance field.
ForInLocalVar The value is a reference to a local defined as part of a for (each) in expression.
ForLocalVarThe value is a reference to a local defined as part of a for expression.
IIf The value is an IIF expression: iif(a = 15, b, a).
Length The value is a Length expression: Length(x).
LocalVar The value is a reference to a local defined in the var section of the method.
LockingLocalVar The value is a reference to a local defined in a locked statement.
MethodOf The value is a reference to a MethodInfo.
NamedLocalValue The value is a named local.
New The value is a call to a constructor.
Nil The value is nil.
NotNil The value uses the not null operator on the left side. Pass this as a "Self" for instance fields and method calls.
ParamVar The value is a reference to a parameter.
Proc The value is a method call.
ProcPtr The value is a reference to a method.
Range The value is a range value like a .. b.
Result The value points to the result of the current method.
Self The value points to the "self" of the current method.
SizeOf The value contains the size of a type.
Statement The value contains both a statement and a value to push. The statement cannot be something that creates a protected block (locking, using, try). The statement is executed before the value is pushed.
StaticVar The value points to a static variable.
SubArray The value accesses an element of an array expression: a[b].
Type The value is a type, used for calls on static methods.
TypeOf The value is a TypeOf value.
UndefinedA value not supported by Cirrus.
UnValueOp The value is an unary operator like casting, not, negating.
UsingLocalVar The value points to a local defined in a using block.
WithLocalVar The value points to a local defined in a with block.


See Also


Oxygene-48.png

Area: Oxygene Language
Compiler version: Oxygene 5

Language GlossaryKeywordsTypesFAQHow To

Navigation
Areas
More
Toolbox