Gcef.Data.ExpressionInfo
Gets if this contains only constant values.
Represents an expression that is a constant value.
Initializes a new instance of the class.
A string containing the expression this object represents.
The constant resulting value for this expression when is called. This may be the same as the expression (e.g. \"1\"=="1") or not (\"hello world\"==hello world).
The data type of this expression's resulting value.
True if this object represents an actual expression, or false if it represents a literal string, not to be interpreted as an expression (this value will be used as the value of .
Gets if this contains only constant values.
See .
Attempts to parse the specified expression string as a .
The expression to parse.
/// True if this object represents an actual expression, or false if it represents a literal string, not to be interpreted as an expression (this value will be used as the value of .
A instance if the expression is a valid constant expressionreference or null if the specified expression is not a valid constant.
Tries to convert the string to an Int32.
true if s represents an Int32, otherwise false
based on http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbls7/html/vblrfvbspec2_4_2.asp
Determines if the character passed in is a valid digit based on DigitType. If it is
its value is determined.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbls7/html/vblrfvbspec2_4_4.asp
Specifies the data type of an expression result.
Expression results in a String type.
Expression results in a Boolean type.
Expression results in a Integer type.
Expression results in a DateTime type.
Expression results in a Float type.
Expression results in a Binary type.
Expression results in a Variant type.
Expression results in a Variant Array type.
Expression results in an Error.
Defines the different levels that an expression can be in.
The level of an expression determines when it can be evaluated.
The relative value of each of these members is significant. See theimplementations of
Consists of values from only the following global collections: Parameters, Globals, and User.
Can be evaluated immediately after constructing the ROM and before opening any data sources or continuing with additional report processing.
Consists of known expressions: fields, parameters, constants, and globals.
Can be evaluated as each record is read from the data source.
Consists of epxression who's values are only available after pagination such as page number, page count, and page totals.
Evaluated at render time only.
The ExpressionInfo class stores, evaluates, and provides information about an expression. ExpressionInfo provides aggregates, global collections, et cetera, as well as information about the expected data type of the expression's result.
Returns a reference to an object representing a constant empty string expression.
Initializes a new instance of the class.
The original expression.
The expected data type of the expression result.
Gets child sub-expressions.
Performs validatation on the expression.
Allows the error information to be noted on the Expression and TraceErrors.
Error string
location of the error.
Returns the string representation of this object suitable for RDL output.
Parses the specified expression string and returns an object that represents the specified expression.
Creates constant expression with specified value.
Parses the specified expression string and returns an object that represents the specified expression.
String to parse
Parses the specified expression string and returns an object that represents the specified expression.
The string to parse
If the expressionString parameter does not start with an equals sign (=), then the expression is treated as a constant with an enumerated ExpressionResultType.
Defines an operator that allows implicit conversion from an ExpressionInfo to a string.
The expression to be converted.
The string representation of expression.
Defines an operator that allows implicit conversion from a string to an ExpressionInfo.
The string representation of expression.
Gets a Boolean value indicating whether the object contains only constant values.
Returns true if this object represents an actual dynamic expression.
Returns false if the expression should be taken as a literal string value.
Essentially if the expression was prefixed with an equal sign, it would be determined to be an expression. Otherwise it would NOT be considered an expression.
Creates an ExpressionInfo from the Parsed Expression object and the original expression.
Parsed expression
Original string expression.
ExpressionInfo object representing the expression.
This function will predetermine what the Result type will be based on the 2 result types
given.
The first result type.
The second result type.
The type of operator used to combine these results.
Error message (if applicable).
True if the left operand causes an error, otherwise false. Not applicable if there
is no error.
Returns the expected ExpressionResultType of the combination of
the given result types. Returns Variant if the result type cannot be determined.
Indicates if this expression represents an empty string.
Generates a unique HashCode for this expression.
Overloaded. Determines whether the specified ExpressionInfo object represents the same expression as this one.
Determines whether the specified ExpressionInfo object represents the same expression as this one.
Determines whether the two objects represent the same expression.
Determines whether the specified objects represent different expressions.
Compares this instance to a specified object and returns an integer that indicates their relationship to one another.
A object to compare to this instance.
A signed integer that indicates the relative values of this instance and .
Implements a strongly typed collection for .
Initializes a new instance of the class.
Add item to colletion
Item to add
Determines whether the contains a specific value.
true if is found in the ; otherwise, false.
The object to locate in the .
Copies the elements of the to an , starting at a particular index.
The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing.
The zero-based index in at which copying begins.
Remove item from collection
Item for remove
Gets a value indicating whether the is read-only.
true if the is read-only; otherwise, false.
Gets or sets the at the specified index.
The index.
GrapeCity.Enterprise.Data.DataEngine.Expressions.ExpressionInfo.
Called when validation occurs.
The value.
Adds the range.
The expressions.
Determines the index of a specific item in the .
The index of if found in the list; otherwise, -1.
The to locate in the .
Inserts a new a ExpressionInfo into the at the specified location.
Transforms this collection to array.
GrapeCity.Enterprise.Data.DataEngine.Expressions.ExpressionInfo[].
Fires OnItemAdded event after an item added to the collection.
Insertion position.
Added item.
Fires OnItemRemoved event after an item removed from the collection.
Index of removed item.
Removed item.
Occurs immediately after adding an item to the collection.
Occurs immediately after removing an item from the collection.
Fires the OnItemAdded event.
Index of the item added.
Value of the item added.
Fires the OnItemRemoved event.
Index of the item removed.
Value of the item removed.
Gets the enumerator.
System.Collections.Generic.IEnumerator<GrapeCity.Enterprise.Data.DataEngine.Expressions.ExpressionInfo>.
Represents the method that handles the or event.
Provides data for the or event of the .
Initializes a new instance of class.
The index of object that was added or removed.
The object that was added or removed.
Returns the object that was added or removed.
Returns the Integer for the object that was added or removed.
Represents an expression that is a constant value.
Initializes a new instance of the .
Gets call target.
Gets name of method to be called.
Gets call arguments.
Represents an identifier in an expression, such as constants or enums.
Gets identifier name referenced by this expression.
Creates a new ExpressionInfo that has a sub expression that is cast based on the Intrinsic type.
Returns true if this object represents an actual dynamic expression.
Returns false if the expression should be taken as a literal string value.
Essentially if the expression was prefixed with an equal sign, it would be determined to be an expression. Otherwise it would NOT be considered an expression.
Represents a constructor in an expression, such as new.
Gets call arguments.
Represents the value "Nothing" in Visual Basic.
Use .
Returns an instance of .
This class is using a Create method to permit using a singleton instance. If it becomes necessary to not use a singleton, it will only be necessary to change this function's implementation.
Describes a location in text.
Represents an uninitialized object.
Initializes a new instance of the structure.
The initial value for .
The initial value for .
The initial value for .
The zero based index into the stream of text.
The one based line number.
The one based column number.
Determines if this object describes a valid location.
Determins if the specific location occurs before this location.
The location to compare this location to.
True if the specified location occurs this location, otherwise false.
Returns a string representation of this object.
A string that represents this object.
Determines if the specified object is equal to this object.
The object to compare this object to.
True if the specified object is equal to this one.
Determines if the specified is equal to this object.
The object to compare this object to.
True if the specified is equal to this one.
See
Parse an expression.
The scanner to use to fetch the tokens.
The list of errors produced during parsing.
An expression-level parse tree.
Parse a type name.
The scanner to use to fetch the tokens.
The list of errors produced during parsing.
A typename-level parse tree.
Disposes the Scanner.
Gets the next token without advancing the scanner position.
Next token
Gets the next token and advancing the scanner position.
Next token.
Reads next token and returns its starting location.
Next token starting location.
Sets the scanner position to the beginning of the token.
The token in which to reposition the scanner.
Set the scanner to position at the first of the tokenTypes.
Array of token types to match.
Creates a span based on the token passed in and the current token (or
previous token if there is no current token).
The token to base the new Span on.
new Span
Create a new Span based on the two Token objects passed in.
First token to base Span on.
Second token to base Span on.
new Span
Create a new Span based on a Token and Tree.
Token to start the Span with.
Tree to end the Span with.
new Span.
Determines if the TokenType can end a statement.
TokenType to verify.
true if the TokenType can end a statement, otherwise false.
Determines if the TokenType begins a statement.
TokenType to verify.
true if the tokenType begins the statement, otherwise false.
Determines if the token signifies that the statement must end
Token to verify.
true if the token must end the statement, otherwise false.
Reads in the next token and forms a SimpleName object out of it.
whether or not the SimpleName can be a keyword.
The next token as a SimpleName.
Gets the next token as a Name.
The next Name.
Determines the next token(s) as an Argument.
ref to a bool
The next Token(s) as an Argument.
Determines if there are more to the Arguments of the statement.
true if the Arguments continue, otherwise false.
Creates a collection of Arguments.
collection of Arguments.
Creates a literal expression out of the next token.
next token as a LiteralExpression.
Creates an Expression out of an intrisic cast.
IntrinsicCastExpression.
Creates a casting expression.
A casting expression.
Creates an instance expression from the next token.
InstanceExpression.
Creates an expression for parenthesis.
ParentheticalExpression.
Create a SimpleName expression from the next token.
SimpleNameExpression.
Create a dictionary lookup expression or a qualified name expression from next token.
Token to start at
expression to end with.
dictionary lookup expression or a qualified name expression
Creates a Call or Index expression with arguments.
Token at beginning of call or index.
Target expression.
CallOrIndexExpression.
Creates a typeof expression - "TypeOf expression Is TypeName".
TypeOfExpression
Creates a GetType expression - "GetType(target)"
GetTypeExpression
Creates a new expression.
NewExpression
Determines the OperatorType based on the TokenType.
TokenType to get the binary operator for.
OperatorType that corresponds with the TokenType.
Gets the Precedencs level of the OperatorType.
OperatorType to get the Precedence level of.
Precendence level of the OperatorType argument.
End parsing - looking for errors and reseting internal values.
Scans for strings and char literals.
Literal Token
Scan a comment that begins with a tick mark
the comment token
Scan a comment that begins with REM
the comment token
Describes the location of a span of text.
Represents an uninitialized object.
Initializes a new instance of the structure.
The value for .
The value for .
The starting location of the text.
The ending location of the text.
Determines if this object describes a valid location.
Returns a string representation of this object.
A string that represents this object.
Determines if the specified object is equal to this object.
The object to compare this object to.
True if the specified object is equal to this one.
Determines if the specified is equal to this object.
The object to compare this object to.
True if the specified is equal to this one.
See
Used to contain results from ExpressionInfo validation.
Valid results.
Creates a new instance with a single error.
The error message,
The location of the error.
Creates a new instance with multiple errors.
An array of validation errors.
Creates a new instance by combining the results of 2 instances.
The first validation results to be combined.
The second validation results to be combined.
Gets whether or not this expression is valid.
Gets an array of error information (messages and locations).
Contains information about an error (message and location).
Initializes new instance of ErrorInformation with a given message and
The error message
The error location.
Strings defining the errors associated with an expression.
Spans defining the locations of the errors associated with an expression.
Provides additional LINQ extensions.
This method extends the LINQ methods to flatten a collection of items that have a property of children of the same type.
Item type
Source collection.
function that returns a collection of children for each item
Returns a one level list of elements of type T.
This method extends the LINQ methods to obtain a single-level collection of descendants(is a collections) of an object of type T
Item type.
The object of type T.
function that returns a collection of children
Returns a one level list of elements of type T.
This method extends the LINQ methods to obtain a single-level collection of descendants(is an object) of an object of type T
Item type.
The object of type T.
function that returns of children object of type T.
Returns a one level list of elements of type T.
Projection of given sequence with first, last markers.
Applies a specified function to the corresponding elements of two sequences, producing a sequence of the results
The type of the elements of the first input sequence
The type of the elements of the second input sequence
The type of the elements of the result sequence
The first sequence to merge
The second sequence to merge
A function that specifies how to merge the elements from the two sequences
An that contains merged elements of two input sequences
Applies a specified function to the corresponding elements of two sequences, producing a sequence of the results
The type of the elements of the first input sequence
The type of the elements of the second input sequence
The type of the elements of the result sequence
The first sequence to merge
The second sequence to merge
A function that specifies how to merge the elements from the two sequences
An that contains merged elements of two input sequences
This method extends the LINQ methods to add index for each item
Item type
Initial sequence.
Returns that represents sequence with indeses for items
Wraps an item of type T into type , adding the specified index
Item type
The item
Index for item
Returns new instance with the specified index
Generates a sequence that contains one repeated value.
The type of the value to be repeated in the result sequence.
The value to be repeated.
The number of times to repeat the value in the generated sequence
An that contains a repeated value.
Proceeds each item in enumerable with its follower.
Source collection.
Projection function (x,y) -> z, where x is current item and y is next.
Type of collection item.
Type of result collection item.
Representation of item with index.
Item type.
Index of the item in collection.
Item itself.
FP-style extensions
Start match block (advanced 'switch').
The same as Match but type is defined
The value to be returned if all patterns failed to match.
The same as Match but type is defined
The value to be returned if all patterns failed to match.
Represents expression matching result.
Gets the value of the matched expression.
Gets the result of successful match block.
Closes the match block a return the matching result.
Gets true if at least one match succeeded (Otherwise block is ignored).
Matches item by type.
Matches the item by value.
Matches the item by value.
Allows to provide fallback implementation (in case no other matches).
Provides additional methods to work with expressions
Returns a value that indicates whether the given expression is valid
Does a quick Empty check on an ExpressionInfo.
Re-creates new expression tree with renamed identifier
Replaces all occurances of the identifier in current expression, using provided function
Original expression
Replacing function
New ExpressionInfo instance with replaced identifier or exact instance if no changes were made
Returns the inverse of this expression.