Package net.hydromatic.morel.eval
Class Codes
java.lang.Object
net.hydromatic.morel.eval.Codes
Helpers for
Code.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static classCode that implementsandAlso(Code, Code).private static classApplies anApplicableto aCode.private static classApplies anApplicable2to twoCodearguments.private static classApplies anApplicable3to threeCodearguments.(package private) static class(package private) static classAbstract implementation for row sinks that have one successor.static enumDefinitions of Morel built-in exceptions.private static classImplementation ofApplicablethat has a single char argument.private static classImplementation ofCodes.RowSinkthat the last step of afromwrites into.(package private) static classImplementation ofRELATIONAL_COMPARE.private static classCode that implements a constant.(package private) static classImplementation ofCodes.RowSinkfor non-distinctexceptstep.(package private) static classImplementation ofCodes.RowSinkfor a distinctexceptstep.private static classFirst row sink in the chain.(package private) static classCode that evaluates a query.private static classCode that retrieves the value of a variable from the environment.private static classCode that retrieves, as a tuple, the value of several variables from the environment.private static classImplementation ofCodes.RowSinkfor agroupstep.private static classprivate static classImplementsBuiltIn.INTERACT_USE.(package private) static classImplementation ofCodes.RowSinkfor a non-distinctintersectstep.(package private) static classImplementation ofCodes.RowSinkfor a distinctintersectstep.private static classprivate static classCode that implementslet(List, Code)with one argument.private static classCode that implementslet(List, Code)with multiple arguments.private static classImplementsBuiltIn.LIST_HD.private static classImplementsBuiltIn.LIST_LAST.private static classImplementsBuiltIn.LIST_NTHandBuiltIn.VECTOR_SUB.private static classImplementsBuiltIn.LIST_TABULATE.private static classImplementsBuiltIn.LIST_TAKE.private static classImplementsBuiltIn.LIST_TL.static classJava exception that wraps an exception thrown by the Morel runtime.private static classImplementsBuiltIn.OPTION_VAL_OF.(package private) static classImplementation ofCodes.RowSinkfor anorderstep.private static classImplementation ofCodethat evaluates the current row ordinal.private static classImplementation ofCodethat increments the current row ordinal then calls anotherCode.private static classCode that implementsorElse(Code, Code).static interfaceAnApplicablewhose position can be changed.private static classImplementation of bothApplicableandCodes.Positioned.private static classImplementsBuiltIn.REAL_CHECK_FLOAT.private static classImplementsBuiltIn.REAL_COMPARE.private static classImplementsBuiltIn.REAL_COMPARE.private static classImplementsBuiltIn.RELATIONAL_ONLY.static interfaceAccepts rows produced by a supplier as part of afromstep.(package private) static classImplementation ofCodes.RowSinkfor ajoinstep.(package private) static class(package private) static classImplementation ofCodes.RowSinkfor askipstep.private static classImplementsBuiltIn.STRING_CONCAT.private static classImplementsBuiltIn.STRING_CONCAT_WITH.private static classImplementsBuiltIn.STRING_SUB.private static classImplementsBuiltIn.STRING_SUB.private static classImplementsBuiltIn.STRING_SUBSTRING.(package private) static classImplementation ofCodes.RowSinkfor atakestep.static classA code that evaluates expressions and creates a tuple with the results.static interfaceAnApplicablewhose type may be specified.(package private) static classImplementation ofCodes.RowSinkfor aunionstep.private static classImplementsBuiltIn.VECTOR_UPDATE.(package private) static classImplementation ofCodes.RowSinkfor awherestep.(package private) static classprivate static classImplementation ofCodes.RowSinkfor ayieldstep. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final ApplicableAn applicable that returns the absolute value of an int.private static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicablestatic final Map<Applicable, BuiltIn> private static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Characterprivate static final Integerprivate static final Characterprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final EvalEnv(package private) static final PatternPattern for floating point numbers (after '~' has been converted to '-')Converts afloatto a String per the JDK.private static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Listprivate static final Applicableprivate static final Listprivate static final Applicable(package private) static final PatternPattern for integers (after '~' has been converted to '-'). ".", ".e", ".e-", ".e5", "e7", "2.", ".5", "2.e5" are invalid; "-2", "5" are valid.private static final Listprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final floatprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final floatprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicablestatic final floatA special value that represents Standard ML "~NaN".private static final ApplicableAn applicable that negates a boolean value.private static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Macroprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Macroprivate static final Applicableprivate static final Applicableprivate static final Macroprivate static final Applicableprivate static final Macroprivate static final Macroprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final ListValue ofBuiltIn.Constructor.OPTION_NONE.private static final Applicableprivate static final Listprivate static final Listprivate static final Listprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final floatprivate static final Applicableprivate static final floatprivate static final floatprivate static final floatprivate static final floatprivate static final intprivate static final intprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Macroprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Integerprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final intprivate static final Applicableprivate static final Applicableprivate static final Applicableprivate static final ApplicableImplementsOP_DIVIDEfor typeint.private static final ApplicableImplementsOP_DIVIDEfor typereal.private static final Applicableprivate static final Applicableprivate static final ApplicableImplementsOP_MINUSfor typeint.private static final ApplicableImplementsOP_MINUSfor typereal.private static final ApplicableImplementsOP_NEGATEfor typeint.private static final ApplicableImplementsOP_NEGATEfor typereal.private static final ApplicableImplementsOP_PLUSfor typeint.private static final ApplicableImplementsOP_PLUSfor typereal.private static final ApplicableImplementsRELATIONAL_SUMfor typeint list.private static final ApplicableImplementsRELATIONAL_SUMfor typereal list.private static final ApplicableImplementsOP_TIMESfor typeint.private static final ApplicableImplementsOP_TIMESfor typereal. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic Applicableprivate static ApplicableImplstatic CodeReturns a Code that evaluates "andalso".static StringBuilderappendFloat(StringBuilder buf, float f) static Codeapply(Applicable fnValue, Code argCode) Generates the code for applying a function value to an argument.static CodeGenerates the code for applying a function (or function value) to an argument.static Codeapply2(Applicable2 fnValue, Code argCode0, Code argCode1) Generates the code for applying a function value to two arguments.static Codeapply3(Applicable3 fnValue, Code argCode0, Code argCode1, Code argCode2) Generates the code for applying a function value to three arguments.private static ApplicableImplcharContains(String s, boolean negate) ImplementCHAR_CONTAINSandCHAR_NOT_CONTAINS.private static ApplicableImplprivate static Applicablecollate(Applicable comparator) static Codes.RowSinkcollectRowSink(Code code) Creates aCodes.RowSinkto collect the results of afromexpression.static CodeReturns a Code that evaluates to the same value in all environments.static StringDescribes aCode.private static ApplicableImplstatic EvalEnvemptyEnv()Creates an empty evaluation environment.static EvalEnvemptyEnvWith(Session session, Environment env) Creates an evaluation environment that contains the bound values from a compilation environment.static Environmentenv(TypeSystem typeSystem, Environment environment) Creates a compilation environment.static Codes.RowSinkexceptRowSink(boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) Creates aCodes.RowSinkfor anexceptstep.private static ApplicableImplprivate static ApplicablefieldsTokens(BuiltIn builtIn) private static ApplicablefieldsTokens2(BuiltIn builtIn, Applicable applicable) private static ApplicableImplprivate static Applicablefind(Applicable f) static Codes.RowSinkfirstRowSink(Codes.RowSink rowSink) Creates aCodes.RowSinkthat starts all downstream row sinks.static StringfloatToString(float f) Converts a Javafloatto the format expected of Standard MLrealvalues.private static StringfloatToString0(float f) static Codefrom(Supplier<Codes.RowSink> rowSinkFactory) private static Map<Applicable, BuiltIn> get()static CodeReturns a Code that returns the value of variable "name" in the current environment.static CodeReturns a Code that returns a tuple consisting of the values of variables "name0", ...static Codes.RowSinkgroupRowSink(Code keyCode, com.google.common.collect.ImmutableList<Applicable> aggregateCodes, com.google.common.collect.ImmutableList<String> inNames, com.google.common.collect.ImmutableList<String> keyNames, com.google.common.collect.ImmutableList<String> outNames, Codes.RowSink rowSink) Creates aCodes.RowSinkfor agroupstep.private static ApplicableImplReturns an Applicable that returns its argument.static Codes.RowSinkintersectRowSink(boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) Creates aCodes.RowSinkfor anintersectstep.static booleanisNegative(float f) Returns whether afloatis negative.private static Applicableprivate static Applicableprivate static Applicableprivate static ApplicableImplstatic Codestatic Codeprivate static Applicableprivate static ApplicablelistApp(Applicable consumer) private static ApplicableImplprivate static ApplicableImpllistConcat(BuiltIn builtIn) private static Applicable2<List, List, Integer> private static Applicableprivate static Applicableprivate static ApplicablelistFilter0(BuiltIn builtIn) private static ApplicablelistFold(boolean left, Applicable f) private static ApplicableImplprivate static ApplicablelistFold2(boolean left, Applicable f, Object init) private static ApplicableImpllistGetItem(BuiltIn builtIn) private static ApplicablelistMap(Applicable fn) private static Applicableprivate static ApplicableImplementsLIST_MAPI,VECTOR_MAPI.private static Applicableprivate static ApplicablelistMapPartial0(BuiltIn builtIn) private static Applicableprivate static ApplicableImpllistPartition0(BuiltIn builtIn) private static EvalEnvprivate static ApplicableImplstatic Applicablenth(int slot) Returns an applicable that returns theslotth field of a tuple or record.private static ApplicableImplementsOPTION_APP.private static ApplicableImplementsOPTION_COMPOSE.private static ApplicableImplementsOPTION_COMPOSE_PARTIAL.private static ApplicableImplementation ofOPTION_FILTER.private static ApplicableImplementsOPTION_MAP.private static ApplicableImplementsOPTION_MAP_PARTIAL.private static ListoptionSome(Object o) Creates a value ofSOME v.(package private) static Listorder(int c) Converts the result ofComparable.compareTo(Object)to anOrdervalue.static Codes.RowSinkorderRowSink(Code code, Comparator comparator, Core.StepEnv env, Codes.RowSink rowSink) Creates aCodes.RowSinkfor anorderstep.static CodeordinalGet(int[] ordinalSlots) static CodeordinalInc(int[] ordinalSlots, Code nextCode) Helper forordinalGet(int[]).static CodeReturns a Code that evaluates "orelse".private static voidpopulateBuiltIns(Map<String, Object> valueMap) static Codes.RowSinkscanRowSink(Op op, Core.Pat pat, Code code, Code conditionCode, Codes.RowSink rowSink) Creates aCodes.RowSinkfor ajoinstep.static Codes.RowSinkskipRowSink(Code skipCode, Codes.RowSink rowSink) Creates aCodes.RowSinkfor askipstep.private static ApplicablestringCollate(Applicable comparator) private static StringstringConcat(Pos pos, String separator, List<String> list) private static Applicablestatic CodeRemoves wrappers, in particular the one due towrapRelList(Code).private static Core.ExpsysEnv(TypeSystem typeSystem, Environment env, Type argType) static Codes.RowSinktakeRowSink(Code takeCode, Codes.RowSink rowSink) Creates aCodes.RowSinkfor atakestep.private static Applicablestatic Codestatic ApplicableReturns an applicable that constructs an instance of a datatype.private static ApplicableImplstatic Codes.RowSinkunionRowSink(boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) private static ApplicableImplementsVECTOR_APP.private static ApplicableImplementsVECTOR_APPI.private static ApplicableImplementsVECTOR_FINDI.private static ApplicableImplementsVECTOR_MAP.static Codes.RowSinkwhereRowSink(Code filterCode, Codes.RowSink rowSink) Creates aCodes.RowSinkfor awherestep.static CodewrapRelList(Code code) static Codes.RowSinkyieldRowSink(Map<String, Code> yieldCodes, Codes.RowSink rowSink) Creates aCodes.RowSinkfor a non-terminalyieldstep.
-
Field Details
-
FLOAT_TO_STRING
Converts afloatto a String per the JDK. -
NEGATIVE_NAN
public static final float NEGATIVE_NANA special value that represents Standard ML "~NaN". -
OPTION_NONE
Value ofBuiltIn.Constructor.OPTION_NONE.- See Also:
-
OP_EQ
- See Also:
-
OP_NE
- See Also:
-
OP_LT
- See Also:
-
OP_GT
- See Also:
-
OP_LE
- See Also:
-
OP_GE
- See Also:
-
OP_ELEM
- See Also:
-
OP_NOT_ELEM
- See Also:
-
Z_NEGATE_INT
ImplementsOP_NEGATEfor typeint. -
Z_NEGATE_REAL
ImplementsOP_NEGATEfor typereal. -
Z_PLUS_INT
ImplementsOP_PLUSfor typeint. -
Z_PLUS_REAL
ImplementsOP_PLUSfor typereal. -
Z_MINUS_INT
ImplementsOP_MINUSfor typeint. -
Z_MINUS_REAL
ImplementsOP_MINUSfor typereal. -
Z_TIMES_INT
ImplementsOP_TIMESfor typeint. -
Z_TIMES_REAL
ImplementsOP_TIMESfor typereal. -
Z_DIVIDE_INT
ImplementsOP_DIVIDEfor typeint. -
Z_DIVIDE_REAL
ImplementsOP_DIVIDEfor typereal. -
OP_NEGATE
- See Also:
-
OP_DIVIDE
- See Also:
-
OP_DIV
- See Also:
-
GENERAL_OP_O
- See Also:
-
CHAR_CHR
- See Also:
-
CHAR_COMPARE
- See Also:
-
CHAR_CONTAINS
- See Also:
-
CHAR_FROM_CSTRING
- See Also:
-
CHAR_FROM_STRING
- See Also:
-
CHAR_IS_ALPHA
- See Also:
-
CHAR_IS_ALPHA_NUM
- See Also:
-
CHAR_IS_ASCII
- See Also:
-
CHAR_IS_CNTRL
- See Also:
-
CHAR_IS_DIGIT
- See Also:
-
CHAR_IS_GRAPH
- See Also:
-
CHAR_IS_HEX_DIGIT
- See Also:
-
CHAR_IS_LOWER
- See Also:
-
CHAR_IS_PRINT
- See Also:
-
CHAR_IS_PUNCT
- See Also:
-
CHAR_IS_SPACE
- See Also:
-
CHAR_IS_UPPER
- See Also:
-
CHAR_MAX_CHAR
- See Also:
-
CHAR_MAX_ORD
- See Also:
-
CHAR_MIN_CHAR
- See Also:
-
CHAR_NOT_CONTAINS
- See Also:
-
CHAR_OP_GE
- See Also:
-
CHAR_OP_GT
- See Also:
-
CHAR_OP_LE
- See Also:
-
CHAR_OP_LT
- See Also:
-
CHAR_ORD
- See Also:
-
CHAR_PRED
- See Also:
-
CHAR_SUCC
- See Also:
-
CHAR_TO_CSTRING
- See Also:
-
CHAR_TO_LOWER
- See Also:
-
CHAR_TO_STRING
- See Also:
-
CHAR_TO_UPPER
- See Also:
-
INT_ABS
- See Also:
-
INT_COMPARE
- See Also:
-
INT_FROM_INT
- See Also:
-
INT_FROM_LARGE
- See Also:
-
INT_PATTERN
Pattern for integers (after '~' has been converted to '-'). ".", ".e", ".e-", ".e5", "e7", "2.", ".5", "2.e5" are invalid; "-2", "5" are valid. -
INT_FROM_STRING
- See Also:
-
INT_MAX
- See Also:
-
INT_MAX_INT
- See Also:
-
INT_MIN
- See Also:
-
INT_MIN_INT
- See Also:
-
INT_DIV
- See Also:
-
INT_MOD
- See Also:
-
INT_PRECISION
- See Also:
-
INT_QUOT
- See Also:
-
INT_REM
- See Also:
-
INT_SAME_SIGN
- See Also:
-
INT_SIGN
- See Also:
-
INT_TO_INT
- See Also:
-
INT_TO_LARGE
- See Also:
-
INT_TO_STRING
- See Also:
-
INTERACT_USE
- See Also:
-
INTERACT_USE_SILENTLY
- See Also:
-
OP_CARET
- See Also:
-
OP_CONS
- See Also:
-
NOT
An applicable that negates a boolean value. -
ABS
An applicable that returns the absolute value of an int. -
IGNORE
- See Also:
-
OP_MINUS
- See Also:
-
OP_MOD
- See Also:
-
OP_PLUS
- See Also:
-
OP_TIMES
- See Also:
-
STRING_MAX_SIZE
- See Also:
-
STRING_OP_CARET
- See Also:
-
STRING_OP_GE
- See Also:
-
STRING_OP_GT
- See Also:
-
STRING_OP_LE
- See Also:
-
STRING_OP_LT
- See Also:
-
STRING_SIZE
- See Also:
-
STRING_SUB
- See Also:
-
STRING_COLLATE
- See Also:
-
STRING_COMPARE
- See Also:
-
STRING_EXTRACT
- See Also:
-
STRING_FIELDS
- See Also:
-
STRING_TOKENS
- See Also:
-
STRING_SUBSTRING
- See Also:
-
STRING_CONCAT
- See Also:
-
STRING_CONCAT_WITH
- See Also:
-
STRING_STR
- See Also:
-
STRING_IMPLODE
- See Also:
-
STRING_EXPLODE
- See Also:
-
STRING_MAP
- See Also:
-
STRING_TRANSLATE
- See Also:
-
STRING_IS_PREFIX
- See Also:
-
STRING_IS_SUBSTRING
- See Also:
-
STRING_IS_SUFFIX
- See Also:
-
LIST_NULL
- See Also:
-
LIST_LENGTH
- See Also:
-
LIST_AT
- See Also:
-
LIST_HD
- See Also:
-
LIST_TL
- See Also:
-
LIST_LAST
- See Also:
-
LIST_GET_ITEM
- See Also:
-
LIST_NTH
- See Also:
-
LIST_TAKE
- See Also:
-
LIST_DROP
- See Also:
-
LIST_REV
- See Also:
-
LIST_CONCAT
- See Also:
-
LIST_EXCEPT
- See Also:
-
LIST_INTERSECT
- See Also:
-
LIST_REV_APPEND
- See Also:
-
LIST_APP
- See Also:
-
LIST_MAPI
- See Also:
-
LIST_MAP
- See Also:
-
LIST_MAP_PARTIAL
- See Also:
-
LIST_FIND
- See Also:
-
LIST_FILTER
- See Also:
-
LIST_PARTITION
- See Also:
-
LIST_FOLDL
- See Also:
-
LIST_FOLDR
- See Also:
-
LIST_EXISTS
- See Also:
-
LIST_ALL
- See Also:
-
LIST_TABULATE
- See Also:
-
LIST_COLLATE
- See Also:
-
MATH_ACOS
- See Also:
-
MATH_ASIN
- See Also:
-
MATH_ATAN
- See Also:
-
MATH_ATAN2
- See Also:
-
MATH_COS
- See Also:
-
MATH_COSH
- See Also:
-
MATH_E
private static final float MATH_E- See Also:
-
MATH_EXP
- See Also:
-
MATH_LN
- See Also:
-
MATH_LOG10
- See Also:
-
MATH_PI
private static final float MATH_PI- See Also:
-
MATH_POW
- See Also:
-
MATH_SIN
- See Also:
-
MATH_SINH
- See Also:
-
MATH_SQRT
- See Also:
-
MATH_TAN
- See Also:
-
MATH_TANH
- See Also:
-
OPTION_APP
- See Also:
-
OPTION_GET_OPT
- See Also:
-
OPTION_IS_SOME
- See Also:
-
OPTION_VAL_OF
- See Also:
-
OPTION_FILTER
- See Also:
-
OPTION_JOIN
- See Also:
-
OPTION_MAP
- See Also:
-
OPTION_MAP_PARTIAL
- See Also:
-
OPTION_COMPOSE
- See Also:
-
OPTION_COMPOSE_PARTIAL
- See Also:
-
REAL_ABS
- See Also:
-
REAL_CEIL
- See Also:
-
REAL_CHECK_FLOAT
- See Also:
-
REAL_COMPARE
- See Also:
-
REAL_COPY_SIGN
- See Also:
-
REAL_FLOOR
- See Also:
-
REAL_FROM_INT
- See Also:
-
REAL_FROM_MAN_EXP
- See Also:
-
FLOAT_PATTERN
Pattern for floating point numbers (after '~' has been converted to '-'). ".", ".e", ".e-", ".e5", "e7" are invalid; "2.", ".5", "2.e5", "2.e" are valid. -
REAL_FROM_STRING
- See Also:
-
REAL_IS_FINITE
- See Also:
-
REAL_IS_NAN
- See Also:
-
REAL_IS_NORMAL
- See Also:
-
REAL_NEG_INF
private static final float REAL_NEG_INF- See Also:
-
REAL_POS_INF
private static final float REAL_POS_INF- See Also:
-
REAL_RADIX
private static final int REAL_RADIX- See Also:
-
REAL_PRECISION
private static final int REAL_PRECISION- See Also:
-
REAL_MIN
- See Also:
-
REAL_MAX
- See Also:
-
REAL_MAX_FINITE
private static final float REAL_MAX_FINITE- See Also:
-
REAL_MIN_POS
private static final float REAL_MIN_POS- See Also:
-
REAL_MIN_NORMAL_POS
private static final float REAL_MIN_NORMAL_POS- See Also:
-
REAL_REAL_MOD
- See Also:
-
REAL_REAL_CEIL
- See Also:
-
REAL_REAL_FLOOR
- See Also:
-
REAL_REAL_ROUND
- See Also:
-
REAL_REAL_TRUNC
- See Also:
-
REAL_REM
- See Also:
-
REAL_ROUND
- See Also:
-
REAL_SAME_SIGN
- See Also:
-
REAL_SIGN
- See Also:
-
REAL_SIGN_BIT
- See Also:
-
REAL_SPLIT
- See Also:
-
REAL_TO_MAN_EXP
- See Also:
-
REAL_TO_STRING
- See Also:
-
REAL_TRUNC
- See Also:
-
REAL_UNORDERED
- See Also:
-
RELATIONAL_COMPARE
- See Also:
-
RELATIONAL_COUNT
- See Also:
-
RELATIONAL_NON_EMPTY
- See Also:
-
RELATIONAL_EMPTY
- See Also:
-
RELATIONAL_ITERATE
- See Also:
-
RELATIONAL_ONLY
- See Also:
-
Z_SUM_INT
ImplementsRELATIONAL_SUMfor typeint list. -
Z_SUM_REAL
ImplementsRELATIONAL_SUMfor typereal list. -
RELATIONAL_SUM
- See Also:
-
RELATIONAL_MIN
- See Also:
-
RELATIONAL_MAX
- See Also:
-
SYS_CLEAR_ENV
- See Also:
-
SYS_PLAN
- See Also:
-
SYS_SET
- See Also:
-
SYS_SHOW
- See Also:
-
SYS_SHOW_ALL
- See Also:
-
SYS_UNSET
- See Also:
-
ORDER_LESS
- See Also:
-
ORDER_EQUAL
- See Also:
-
ORDER_GREATER
- See Also:
-
VECTOR_MAX_LEN
private static final int VECTOR_MAX_LEN- See Also:
-
VECTOR_FROM_LIST
- See Also:
-
VECTOR_TABULATE
- See Also:
-
VECTOR_LENGTH
- See Also:
-
VECTOR_SUB
- See Also:
-
VECTOR_UPDATE
- See Also:
-
VECTOR_CONCAT
- See Also:
-
VECTOR_APPI
- See Also:
-
VECTOR_APP
- See Also:
-
VECTOR_MAPI
- See Also:
-
VECTOR_MAP
- See Also:
-
VECTOR_FOLDLI
- See Also:
-
VECTOR_FOLDRI
- See Also:
-
VECTOR_FOLDL
- See Also:
-
VECTOR_FOLDR
- See Also:
-
VECTOR_FINDI
- See Also:
-
VECTOR_FIND
- See Also:
-
VECTOR_EXISTS
- See Also:
-
VECTOR_ALL
- See Also:
-
VECTOR_COLLATE
- See Also:
-
BAG_NULL
- See Also:
-
BAG_LENGTH
- See Also:
-
BAG_AT
- See Also:
-
BAG_HD
- See Also:
-
BAG_TL
- See Also:
-
BAG_GET_ITEM
- See Also:
-
BAG_NTH
- See Also:
-
BAG_TAKE
- See Also:
-
BAG_DROP
- See Also:
-
BAG_CONCAT
- See Also:
-
BAG_APP
- See Also:
-
BAG_MAP
- See Also:
-
BAG_MAP_PARTIAL
- See Also:
-
BAG_FIND
- See Also:
-
BAG_FILTER
- See Also:
-
BAG_PARTITION
- See Also:
-
BAG_FOLD
- See Also:
-
BAG_EXISTS
- See Also:
-
BAG_ALL
- See Also:
-
BAG_FROM_LIST
- See Also:
-
BAG_TO_LIST
- See Also:
-
BAG_TABULATE
- See Also:
-
Z_EXTENT
- See Also:
-
Z_LIST
- See Also:
-
BUILT_IN_VALUES
-
BUILT_IN_MAP
-
EMPTY_ENV
-
-
Constructor Details
-
Codes
private Codes()
-
-
Method Details
-
describe
Describes aCode. -
constant
Returns a Code that evaluates to the same value in all environments. -
identity
Returns an Applicable that returns its argument. -
andAlso
Returns a Code that evaluates "andalso". -
orElse
Returns a Code that evaluates "orelse". -
charContains
ImplementCHAR_CONTAINSandCHAR_NOT_CONTAINS. -
ordinalGet
- See Also:
-
ordinalInc
Helper forordinalGet(int[]). -
strip
Removes wrappers, in particular the one due towrapRelList(Code). -
get
Returns a Code that returns the value of variable "name" in the current environment. -
getTuple
Returns a Code that returns a tuple consisting of the values of variables "name0", ... "nameN" in the current environment. -
let
-
apply
Generates the code for applying a function (or function value) to an argument. -
apply
Generates the code for applying a function value to an argument. -
apply2
Generates the code for applying a function value to two arguments. -
apply3
Generates the code for applying a function value to three arguments. -
list
-
tuple
-
wrapRelList
-
tyCon
Returns an applicable that constructs an instance of a datatype. The instance is a list with two elements [constructorName, value]. -
from
-
scanRowSink
public static Codes.RowSink scanRowSink(Op op, Core.Pat pat, Code code, Code conditionCode, Codes.RowSink rowSink) Creates aCodes.RowSinkfor ajoinstep. -
whereRowSink
Creates aCodes.RowSinkfor awherestep. -
skipRowSink
Creates aCodes.RowSinkfor askipstep. -
takeRowSink
Creates aCodes.RowSinkfor atakestep. -
exceptRowSink
public static Codes.RowSink exceptRowSink(boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) Creates aCodes.RowSinkfor anexceptstep. -
intersectRowSink
public static Codes.RowSink intersectRowSink(boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) Creates aCodes.RowSinkfor anintersectstep. -
unionRowSink
public static Codes.RowSink unionRowSink(boolean distinct, com.google.common.collect.ImmutableList<Code> codes, com.google.common.collect.ImmutableList<String> names, Codes.RowSink rowSink) -
orderRowSink
public static Codes.RowSink orderRowSink(Code code, Comparator comparator, Core.StepEnv env, Codes.RowSink rowSink) Creates aCodes.RowSinkfor anorderstep. -
groupRowSink
public static Codes.RowSink groupRowSink(Code keyCode, com.google.common.collect.ImmutableList<Applicable> aggregateCodes, com.google.common.collect.ImmutableList<String> inNames, com.google.common.collect.ImmutableList<String> keyNames, com.google.common.collect.ImmutableList<String> outNames, Codes.RowSink rowSink) Creates aCodes.RowSinkfor agroupstep. -
yieldRowSink
Creates aCodes.RowSinkfor a non-terminalyieldstep. -
collectRowSink
Creates aCodes.RowSinkto collect the results of afromexpression. -
firstRowSink
Creates aCodes.RowSinkthat starts all downstream row sinks. -
nth
Returns an applicable that returns theslotth field of a tuple or record. -
stringCollate
-
fieldsTokens
-
fieldsTokens2
-
stringConcat
-
stringMap
-
translate
-
isPrefix
-
isSubstring
-
isSuffix
-
length
-
union
-
listGetItem
-
listDrop
-
listConcat
-
listApp0
-
listApp
-
listMap0
-
listMap
-
listMapPartial0
-
listMapPartial
-
find
-
find
-
listFilter0
-
listFilter
-
listPartition0
-
listPartition
-
listFold0
-
listFold
-
listFold2
-
exists
-
listExists
-
all
-
listAll
-
collate
-
collate
-
optionApp
ImplementsOPTION_APP. -
optionFilter
Implementation ofOPTION_FILTER. -
optionMap
ImplementsOPTION_MAP. -
optionSome
Creates a value ofSOME v.- See Also:
-
optionMapPartial
ImplementsOPTION_MAP_PARTIAL. -
optionCompose
ImplementsOPTION_COMPOSE. -
optionComposePartial
ImplementsOPTION_COMPOSE_PARTIAL. -
isNegative
public static boolean isNegative(float f) Returns whether afloatis negative. This is the same as the specification ofReal.signBit. -
nonEmpty
-
empty
-
sysEnv
- See Also:
-
order
Converts the result ofComparable.compareTo(Object)to anOrdervalue. -
vectorAppi
ImplementsVECTOR_APPI. -
vectorApp
ImplementsVECTOR_APP. -
listMapi
ImplementsLIST_MAPI,VECTOR_MAPI. -
vectorMap
ImplementsVECTOR_MAP. -
vectorFindi
ImplementsVECTOR_FINDI. -
populateBuiltIns
-
emptyEnv
Creates an empty evaluation environment. -
emptyEnvWith
Creates an evaluation environment that contains the bound values from a compilation environment. -
env
Creates a compilation environment. -
aggregate
public static Applicable aggregate(Environment env0, Code aggregateCode, List<String> names, @Nullable Code argumentCode) -
get
-
makeEmptyEnv
-
appendFloat
-
floatToString
Converts a Javafloatto the format expected of Standard MLrealvalues. -
floatToString0
-