Package: com.arsi.mj.maprpt.lexer.ptree.symbol
previous next contents
Package com.arsi.mj.maprpt.lexer.ptree.symbol
contains the following classes and interfaces.
Classes and Interfaces |
ArraySubscript |
Represents a parsed array subscript (e.g., [5] , [v22] ). |
BooleanOperator |
Represents a boolean operator such as AND or OR. |
Cdr |
Represents a parsed cabinet-drawer-report (CDR) specification (e.g., 16,B,2 )
or result number (e.g., -1 ).
|
FieldSpecification |
A field specification that follows a field declaration in LDV,Q .
|
MathOperator |
Represents a mathematical operator (e.g., + , ** ). |
Reformat |
Represents a parsed re-format specification (e.g., (p) ). |
ReformatStringBounds |
Represents a parsed, re-formatting string bounds (e.g., (4-7z) ).
|
RelationalOperator |
Represents a relational operator (e.g., EQ , NOT LT ). |
StringBounds |
Represents a parsed string bounds (e.g., (4-7) , (v88 - v99[2]) ).
|
StringBoundsLimit |
An integer character position or count that defines a limit of the string
bounds, either an integer literal or expression. |
VariableDecl |
A variable declaration, e.g., v1s20='hello, world!' |
VariableReference |
Represents a parsed variable reference (e.g., v100 , <myvar> ).
|
VariableTypeSize |
Represents a parsed variable type and size (e.g., s20 , f7.2 ). |
Class: ArraySubscript
next
package
Represents a parsed array subscript (e.g.,
[5]
,
[v22]
).
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.ArraySubscript
extends java.lang.Object
Constructors |
Initializes an instance of this class.
- Parameters:
aSubscr - the compile-time array subscript.
public ArraySubscript(java.lang.Integer aSubscr)
|
Initializes an instance of this class.
- Parameters:
aSubscr - the run-time array subscript.
public ArraySubscript(com.arsi.mj.maprpt.lexer.ptree.expr.IVariableDerefExpr aSubscr)
|
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Convert symbol to Mapper source string.
- Returns:
- symbol as Mapper source string.
public java.lang.String toMapperString()
|
Represents a boolean operator such as AND or OR.
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.BooleanOperator
extends java.lang.Object
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Represents a parsed cabinet-drawer-report (CDR) specification (e.g.,
16,B,2
)
or result number (e.g.,
-1
).
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr
extends java.lang.Object
Inner Class Cabinet |
Cabinet part of a CDR specification, either a cabinet number literal or expression.
public static class com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Cabinet
extends java.lang.Object
|
Cabinet number expression known only at runtime, NULL if compile-time. public final com.arsi.mj.maprpt.lexer.ptree.expr.ConcatExpr expr
Literal cabinet number known at compile time, NULL if run-time. public final java.lang.Integer literal
|
public Cdr.Cabinet(com.arsi.mj.maprpt.lexer.ptree.expr.ConcatExpr aCabinet)
public Cdr.Cabinet(int aCabinet)
|
Inner Class CDR |
Represents a cabinet, drawer and report (CDR) specification.
public static class com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.CDR
extends java.lang.Object
|
Cabinet number literal or expression, is always populated. public final com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Cabinet cabinet
Drawer letter literal or expression, is always populated. public final com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Drawer drawer
Report number, NULL if only cabinet and drawer specified. public final com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Report report
Name of report that was resolved to arrive at c,d,[r], if any (may be NULL). public final java.lang.String resolvedReportName
|
public Cdr.CDR(com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Cabinet aCabinet, com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Drawer aDrawer, com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Report aReport)
public Cdr.CDR(com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Cabinet aCabinet, com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Drawer aDrawer, com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Report aReport, java.lang.String aResolvedName)
|
Inner Class Drawer |
Drawer part of a CDR specification, either a drawer letter literal or expression.
public static class com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Drawer
extends java.lang.Object
|
Drawer letter expression known only at runtime, NULL if compile-time. public final com.arsi.mj.maprpt.lexer.ptree.expr.ConcatExpr expr
Literal drawer letter known at compile time, NULL if run-time. public final java.lang.Character literal
|
public Cdr.Drawer(char aDrawer)
public Cdr.Drawer(com.arsi.mj.maprpt.lexer.ptree.expr.ConcatExpr aDrawer)
|
Inner Class Report |
Report part of a CDR specification, either a report number literal or expression.
public static class com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.Report
extends java.lang.Object
|
Report number expression known only at runtime, NULL if compile-time. public final com.arsi.mj.maprpt.lexer.ptree.expr.ConcatExpr expr
Literal report number known at compile time, NULL if run-time. public final java.lang.Integer literal
|
public Cdr.Report(com.arsi.mj.maprpt.lexer.ptree.expr.ConcatExpr aRptnum)
public Cdr.Report(int aRptnum)
|
Inner Class ResultIdentifier |
Result identifier (e.g., -1 ), either an integer literal or expression.
public static class com.arsi.mj.maprpt.lexer.ptree.symbol.Cdr.ResultIdentifier
extends java.lang.Object
|
Result number expression known only at runtime, NULL if compile-time. public final com.arsi.mj.maprpt.lexer.ptree.expr.ConcatExpr expr
Literal result number known at compile time, NULL if run-time. public final java.lang.Integer literal
|
public Cdr.ResultIdentifier(com.arsi.mj.maprpt.lexer.ptree.expr.ConcatExpr aResultNum)
public Cdr.ResultIdentifier(int aResultNum)
|
A field specification that follows a field declaration in
LDV,Q
.
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.FieldSpecification
extends java.lang.Object
Fields |
Character used to delimiter the field. public final char delimChar
|
Ordinal position of delimiter occurrence where this field starts (typically 0=first field). public final int delimPosition
|
Constructors |
public FieldSpecification(int aDelimPosition, char aDelimChar)
|
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Represents a mathematical operator (e.g.,
+
,
**
).
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.MathOperator
extends java.lang.Object
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Represents a parsed re-format specification (e.g.,
(p)
).
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.Reformat
extends java.lang.Object
Fields |
The type of re-formatting to apply. public final java.util.EnumSet formats
|
Constructors |
Initializes an instance of this class.
- Parameters:
someFmts - format types.
public Reformat(java.util.EnumSet someFmts)
|
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Represents a parsed, re-formatting string bounds (e.g.,
(4-7z)
).
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.ReformatStringBounds
extends java.lang.Object
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Represents a relational operator (e.g.,
EQ
,
NOT LT
).
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.RelationalOperator
extends java.lang.Object
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Represents a parsed string bounds (e.g.,
(4-7)
,
(v88 - v99[2])
).
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.StringBounds
extends java.lang.Object
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Convert symbol to Mapper source string.
- Returns:
- symbol as Mapper source string, without enclosing parentheses.
public java.lang.String toMapperString()
|
An integer character position or count that defines a limit of the string
bounds, either an integer literal or expression.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.StringBoundsLimit
extends java.lang.Object
Fields |
Character position or count expression known only at runtime, NULL if compile-time. public final com.arsi.mj.maprpt.lexer.ptree.expr.ConcatExpr expr
|
Literal character position or count known at compile time, NULL if run-time. public final java.lang.Integer literal
|
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Convert symbol to Mapper source string.
- Returns:
- symbol as Mapper source string.
public java.lang.String toMapperString()
|
A variable declaration, e.g.,
v1s20='hello, world!'
.
* Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.VariableDecl
extends java.lang.Object
Fields |
Substring bounds to apply to variable (e.g., (5-3) ), may be NULL. public final com.arsi.mj.maprpt.lexer.ptree.symbol.StringBounds bounds
|
Concatenation expression that initializes variable, may be NULL. public final com.arsi.mj.maprpt.lexer.ptree.expr.ConcatExpr concatExpr
|
Field position and delimiter for LDV with Q option, may be NULL if no Q option. public final com.arsi.mj.maprpt.lexer.ptree.symbol.FieldSpecification fldSpec
|
Array subscript that indicates variable is array member (e.g., [7] ), may be NULL. public final com.arsi.mj.maprpt.lexer.ptree.symbol.ArraySubscript subscript
|
Type and size of variable (e.g., s20 , i5 ), may be NULL. public final com.arsi.mj.maprpt.lexer.ptree.symbol.VariableTypeSize typeSize
|
Variable name or number and metadata, cannot be NULL. public final com.arsi.mj.maprpt.lexer.ptree.symbol.VariableReference varRef
|
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Represents a parsed variable reference (e.g.,
v100
,
<myvar>
).
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.VariableReference
extends java.lang.Object
Fields |
Is this a call-by-value variable passed as an argument to CALL ? public boolean isCallByValue
|
Is this an environmental variable? (e.g., <<$myvar>> ) public final boolean isEnvironment
|
Is this a global variable? (e.g., <<*myvar>> ) public final boolean isGlobal
|
Does this variable use indirection (e.g., vv35 , <<myvar>> ). public final boolean isIndirect
|
Name of variable, is NULL if numbered variable, can contain almost any characters. public final java.lang.String variableName
|
Number of variable, is -1 if named variable. public final int variableNumber
|
Constructors |
Initializes an instance of this class.
- Parameters:
aName - name of variable (without leading * or $ scope indicator) or NULL if numbered variable,
can contain almost any characters.
aVarnum - number of variable, or -1 if named variable.
anIndirectFlag - does this variable use indirection?
aGlobalFlag - is this a global variable?
anEnvFlag - is this an environmental variable?
public VariableReference(java.lang.String aName, int aVarnum, boolean anIndirectFlag, boolean aGlobalFlag, boolean anEnvFlag)
|
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Is this a call-by-value variable passed as an argument to CALL ?
- Returns:
- true if variable is call-by-value argument to
CALL , false if not.
public boolean isCallByValue()
|
Set indication that this variable is a call-by-value argument to CALL .
- Parameters:
aCBVFlag - true if variable is call-by-value argument to CALL , false if not.
public void setCallByValue(boolean aCBVFlag)
|
Convert symbol to Mapper source string.
- Returns:
- symbol as Mapper source string.
public java.lang.String toMapperString()
|
Convert parse tree symbol to variable identity useful to control flow symbol table.
- Returns:
- variable identity useful to control flow symbol table.
public com.arsi.mj.maprpt.lexer.symtab.VariableIdentity variableIdentityForSymbolTable()
|
Represents a parsed variable type and size (e.g.,
s20
,
f7.2
).
Treat this class as "thread-safe" since it is immutable.
public class com.arsi.mj.maprpt.lexer.ptree.symbol.VariableTypeSize
extends java.lang.Object
Fields |
Fundamental data type of variable (e.g., FLOAT, STRING, INTEGER). public final com.arsi.mj.datatype.MaprptDataType dataType
|
Compile-time precision of variable, NULL if precisionVariable is not NULL. public final java.lang.Integer precision
|
Run-time precision of variable, NULL if precision is not NULL. public final com.arsi.mj.maprpt.lexer.ptree.expr.IVariableDerefExpr precisionVariable
|
Compile-time scale of variable, NULL if scaleVariable is not NULL. public final java.lang.Integer scale
|
Run-time scale of variable, NULL if scale is not NULL. public final com.arsi.mj.maprpt.lexer.ptree.expr.IVariableDerefExpr scaleVariable
|
Mapper variable type (e.g., 's', 'h', 'f', 'a', 'i'). public final com.arsi.mj.maprpt.lexer.ptree.cmd.MaprptVariableType variableType
|
Constructors |
Initializes an instance of this class.
- Parameters:
aPrecision - precision, or total size, of variable.
aScale - for float variables (variable type FIXED_POINT ), the number of digits after the
decimal point, otherwise pass as 0 .
aDataType - fundamental, scalar type.
aVariableType - variable type as specified in Mapper RUN.
public VariableTypeSize(java.lang.Integer aPrecision, java.lang.Integer aScale, com.arsi.mj.datatype.MaprptDataType aDataType, com.arsi.mj.maprpt.lexer.ptree.cmd.MaprptVariableType aVariableType)
|
Initializes an instance of this class.
- Parameters:
aPrecision - precision, or total size, of variable.
aScale - for float variables (variable type FIXED_POINT ), run-time reference that
evaluates to the number of digits after the decimal point, otherwise pass as 0 .
aDataType - fundamental, scalar type.
aVariableType - variable type as specified in Mapper RUN.
public VariableTypeSize(java.lang.Integer aPrecision, com.arsi.mj.maprpt.lexer.ptree.expr.IVariableDerefExpr aScale, com.arsi.mj.datatype.MaprptDataType aDataType, com.arsi.mj.maprpt.lexer.ptree.cmd.MaprptVariableType aVariableType)
|
Initializes an instance of this class.
- Parameters:
aPrecision - run-time reference that evaluates to precision, or total size, of variable.
aScale - for float variables (variable type FIXED_POINT ), number of digits after
the decimal point, otherwise pass as 0 .
aDataType - fundamental, scalar type.
aVariableType - variable type as specified in Mapper RUN.
public VariableTypeSize(com.arsi.mj.maprpt.lexer.ptree.expr.IVariableDerefExpr aPrecision, java.lang.Integer aScale, com.arsi.mj.datatype.MaprptDataType aDataType, com.arsi.mj.maprpt.lexer.ptree.cmd.MaprptVariableType aVariableType)
|
Initializes an instance of this class.
- Parameters:
aPrecision - run-time reference that evaluates to precision, or total size, of variable.
aScale - for float variables (variable type FIXED_POINT ), run-time reference that
evaluates to the number of digits after the decimal point, otherwise pass as 0 .
aDataType - fundamental, scalar type.
aVariableType - variable type as specified in Mapper RUN.
public VariableTypeSize(com.arsi.mj.maprpt.lexer.ptree.expr.IVariableDerefExpr aPrecision, com.arsi.mj.maprpt.lexer.ptree.expr.IVariableDerefExpr aScale, com.arsi.mj.datatype.MaprptDataType aDataType, com.arsi.mj.maprpt.lexer.ptree.cmd.MaprptVariableType aVariableType)
|
Methods |
public boolean equals(java.lang.Object anObject)
|
public int hashCode()
|
Convert symbol to Mapper source string.
- Returns:
- symbol as Mapper source string.
public java.lang.String toMapperString()
|