ValueKind
Overview
ValueKind is used in the Value 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.
Location
- Reference: RemObjects.Elements.Cirrus.dll
- Namespace: RemObjects.Elements.Cirrus.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 |
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. |
Between | The value is a between value, like 1 < a < 3. |
BinValueOp | The value is a binary expression, like 1 + 1. |
Case | The 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. |
DuckType | duck type value (duck<X>) |
Empty | Represents an "empty" value. Used for properties with read/write accessors that have a default implementation. |
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. |
ForLocalVar | The value is a reference to a local defined as part of a for expression. |
Identifier | Identifier valeu |
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. |
PlaceholderValue | Placeholder value |
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. |
Undefined | A 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. |