A B C D E F G H I L M N O P R S T U V W Y Z
All Classes All Packages
All Classes All Packages
All Classes All Packages
A
- a - Variable in class net.hydromatic.morel.ast.Ast.PrefixCall
- a0 - Variable in class net.hydromatic.morel.ast.Ast.InfixCall
- a1 - Variable in class net.hydromatic.morel.ast.Ast.InfixCall
- ABS - net.hydromatic.morel.compile.BuiltIn
-
Function "abs", of type "int → int".
- accept(int, K, V) - Method in interface net.hydromatic.morel.util.Ord.IntObjObjConsumer
- accept(int, K, V) - Method in interface net.hydromatic.morel.util.Pair.PairWithOrdinalConsumer
-
Performs this operation on the given arguments.
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Aggregate
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.AnnotatedExp
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.AnnotatedPat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Apply
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Case
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.CompositeType
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Con0Pat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.ConPat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.DatatypeBind
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.DatatypeDecl
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Decl
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Exp
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Fn
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.From
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.FunBind
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.FunctionType
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.FunDecl
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.FunMatch
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Id
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.IdPat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.If
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.InfixCall
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.InfixPat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.LetExp
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.List
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.ListPat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Literal
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.LiteralPat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Match
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.NamedType
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Pat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.PrefixCall
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Record
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.RecordPat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.RecordSelector
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.RecordType
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Tuple
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.TuplePat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.TupleType
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.TyCon
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.Type
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.TyVar
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.ValBind
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.ValDecl
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.Ast.WildcardPat
- accept(Shuttle) - Method in class net.hydromatic.morel.ast.AstNode
-
Accepts a shuttle, calling the
Shuttle.visit(net.hydromatic.morel.ast.Ast.Literal)
method appropriate to the type of this node, and returning the result. - accept(TypeVisitor<R>) - Method in class net.hydromatic.morel.type.ApplyType
- accept(TypeVisitor<R>) - Method in class net.hydromatic.morel.type.DataType
- accept(TypeVisitor<R>) - Method in enum net.hydromatic.morel.type.DummyType
- accept(TypeVisitor<R>) - Method in class net.hydromatic.morel.type.FnType
- accept(TypeVisitor<R>) - Method in class net.hydromatic.morel.type.ForallType
- accept(TypeVisitor<R>) - Method in class net.hydromatic.morel.type.ListType
- accept(TypeVisitor<R>) - Method in enum net.hydromatic.morel.type.PrimitiveType
- accept(TypeVisitor<R>) - Method in class net.hydromatic.morel.type.RecordType
- accept(TypeVisitor<R>) - Method in class net.hydromatic.morel.type.TupleType
- accept(TypeVisitor<R>) - Method in interface net.hydromatic.morel.type.Type
- accept(TypeVisitor<R>) - Method in class net.hydromatic.morel.type.TypeSystem.TemporaryType
- accept(TypeVisitor<R>) - Method in class net.hydromatic.morel.type.TypeVar
- accept(Unifier.TermVisitor<R>) - Method in class net.hydromatic.morel.util.Unifier.Sequence
- accept(Unifier.TermVisitor<R>) - Method in interface net.hydromatic.morel.util.Unifier.Term
- accept(Unifier.TermVisitor<R>) - Method in class net.hydromatic.morel.util.Unifier.Variable
- accept(Unifier.Variable, Unifier.Term, List<Unifier.TermTerm>) - Method in interface net.hydromatic.morel.util.Unifier.Action
- add(int, E) - Method in class net.hydromatic.morel.util.TailList
- add(E) - Method in class net.hydromatic.morel.util.TailList
- addAll(int, Collection<? extends E>) - Method in class net.hydromatic.morel.util.TailList
- addAll(Collection<? extends E>) - Method in class net.hydromatic.morel.util.TailList
- adjacents(Iterable<T>) - Static method in class net.hydromatic.morel.util.Pair
-
Returns an iterator that iterates over (i, i + 1) pairs in an iterable.
- aggregate - Variable in class net.hydromatic.morel.ast.Ast.Aggregate
- aggregate(Pos, Ast.Exp, Ast.Exp, Ast.Id) - Method in enum net.hydromatic.morel.ast.AstBuilder
- aggregate(Environment, Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
- Aggregate(Pos, Ast.Exp, Ast.Exp, Ast.Id) - Constructor for class net.hydromatic.morel.ast.Ast.Aggregate
- AGGREGATE - net.hydromatic.morel.ast.Op
- aggregates - Variable in class net.hydromatic.morel.ast.Ast.From
- alias - Variable in enum net.hydromatic.morel.compile.BuiltIn
-
An alias, or null.
- andAlso(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- andAlso(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "andalso".
- ANDALSO - net.hydromatic.morel.ast.Op
- ANNOTATED_EXP - net.hydromatic.morel.ast.Op
- ANNOTATED_PAT - net.hydromatic.morel.ast.Op
- annotatedExp(Pos, Ast.Type, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- annotatedPat(Pos, Ast.Pat, Ast.Type) - Method in enum net.hydromatic.morel.ast.AstBuilder
- append(String) - Method in class net.hydromatic.morel.ast.AstWriter
-
Appends a string to the output.
- append(AstNode, int, int) - Method in class net.hydromatic.morel.ast.AstWriter
-
Appends a parse tree node.
- appendAll(Iterable<? extends AstNode>, int, Op, int) - Method in class net.hydromatic.morel.ast.AstWriter
-
Appends a list of parse tree nodes.
- appendAll(Iterable<? extends AstNode>, String) - Method in class net.hydromatic.morel.ast.AstWriter
-
Appends a list of parse tree nodes separated by
sep
. - appendAll(Iterable<? extends AstNode>, String, String, String) - Method in class net.hydromatic.morel.ast.AstWriter
-
Appends a list of parse tree nodes separated by
sep
, and also with prefix and suffix:start node0 sep node1 ... sep nodeN end
. - appendAll(Iterable<? extends AstNode>, String, String, String, String) - Method in class net.hydromatic.morel.ast.AstWriter
-
Appends a list of parse tree nodes separated by
sep
, and also with prefix and suffix:start node0 sep node1 ... sep nodeN end
. - Applicable - Interface in net.hydromatic.morel.eval
-
A compiled expression that can be evaluated by applying to an argument.
- apply(String, Iterable<Unifier.Term>) - Method in class net.hydromatic.morel.util.Unifier
-
Creates a sequence, or returns an existing one with the same terms.
- apply(String, Unifier.Term...) - Method in class net.hydromatic.morel.util.Unifier
-
Creates a sequence, or returns an existing one with the same terms.
- apply(Map<Unifier.Variable, Unifier.Term>) - Method in class net.hydromatic.morel.util.Unifier.Sequence
- apply(Map<Unifier.Variable, Unifier.Term>) - Method in interface net.hydromatic.morel.util.Unifier.Term
- apply(Map<Unifier.Variable, Unifier.Term>) - Method in class net.hydromatic.morel.util.Unifier.Variable
- apply(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- apply(Applicable, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Generates the code for applying a function value to an argument.
- apply(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Generates the code for applying a function (or function value) to an argument.
- apply(EvalEnv, Object) - Method in interface net.hydromatic.morel.eval.Applicable
- apply(EvalEnv, Object) - Method in class net.hydromatic.morel.eval.Closure
- apply(Type, List<Type>) - Method in class net.hydromatic.morel.type.TypeSystem
- APPLY - net.hydromatic.morel.ast.Op
- APPLY_TYPE - net.hydromatic.morel.ast.Op
- ApplyType - Class in net.hydromatic.morel.type
-
Type that is a polymorphic type applied to a set of types.
- ApplyType(Type, ImmutableList<Type>, String) - Constructor for class net.hydromatic.morel.type.ApplyType
- arg - Variable in class net.hydromatic.morel.ast.Ast.Apply
- argNameTypes - Variable in class net.hydromatic.morel.type.RecordType
- args - Variable in class net.hydromatic.morel.ast.Ast.List
- args - Variable in class net.hydromatic.morel.ast.Ast.ListPat
- args - Variable in class net.hydromatic.morel.ast.Ast.Record
- args - Variable in class net.hydromatic.morel.ast.Ast.RecordPat
- args - Variable in class net.hydromatic.morel.ast.Ast.Tuple
- args - Variable in class net.hydromatic.morel.ast.Ast.TuplePat
- args() - Method in class net.hydromatic.morel.ast.Ast.Exp
-
Returns a list of all arguments.
- argTypes - Variable in class net.hydromatic.morel.type.TupleType
- argument - Variable in class net.hydromatic.morel.ast.Ast.Aggregate
- asCode() - Method in interface net.hydromatic.morel.eval.Applicable
-
Converts this Applicable to a Code that has similar effect (but is less efficient).
- ASSIGN - net.hydromatic.morel.ast.Op
- ast - net.hydromatic.morel.ast.AstBuilder
-
The singleton instance of the AST builder.
- Ast - Class in net.hydromatic.morel.ast
-
Various sub-classes of AST nodes.
- Ast.Aggregate - Class in net.hydromatic.morel.ast
-
Call to an aggregate function in a
compute
clause. - Ast.AnnotatedExp - Class in net.hydromatic.morel.ast
-
Parse tree node of an expression annotated with a type.
- Ast.AnnotatedPat - Class in net.hydromatic.morel.ast
-
Pattern that is a pattern annotated with a type.
- Ast.Apply - Class in net.hydromatic.morel.ast
-
Application of a function to its argument.
- Ast.Case - Class in net.hydromatic.morel.ast
-
Case expression.
- Ast.CompositeType - Class in net.hydromatic.morel.ast
-
Not really a type, just a way for the parser to represent the type arguments to a type constructor.
- Ast.Con0Pat - Class in net.hydromatic.morel.ast
-
Type constructor pattern with no argument.
- Ast.ConPat - Class in net.hydromatic.morel.ast
-
Type constructor pattern with an argument.
- Ast.DatatypeBind - Class in net.hydromatic.morel.ast
-
Parse tree node of a datatype binding.
- Ast.DatatypeDecl - Class in net.hydromatic.morel.ast
-
Parse tree node of a datatype declaration.
- Ast.Decl - Class in net.hydromatic.morel.ast
-
Base class for declarations.
- Ast.Exp - Class in net.hydromatic.morel.ast
-
Base class of expression ASTs.
- Ast.Fn - Class in net.hydromatic.morel.ast
-
Lambda expression.
- Ast.From - Class in net.hydromatic.morel.ast
-
From expression.
- Ast.FunBind - Class in net.hydromatic.morel.ast
-
One of the branches (separated by 'and') in a 'fun' function declaration.
- Ast.FunctionType - Class in net.hydromatic.morel.ast
-
Function type.
- Ast.FunDecl - Class in net.hydromatic.morel.ast
-
Parse tree node of a function declaration.
- Ast.FunMatch - Class in net.hydromatic.morel.ast
-
One of the branches (separated by '|') in a 'fun' function declaration.
- Ast.Id - Class in net.hydromatic.morel.ast
-
Parse tree node of an identifier.
- Ast.IdPat - Class in net.hydromatic.morel.ast
-
Named pattern, the pattern analog of the
Ast.Id
expression. - Ast.If - Class in net.hydromatic.morel.ast
-
"If ...
- Ast.InfixCall - Class in net.hydromatic.morel.ast
-
Call to an infix operator.
- Ast.InfixPat - Class in net.hydromatic.morel.ast
-
Pattern build from an infix operator applied to two patterns.
- Ast.LetExp - Class in net.hydromatic.morel.ast
-
"Let" expression.
- Ast.List - Class in net.hydromatic.morel.ast
-
List.
- Ast.ListPat - Class in net.hydromatic.morel.ast
-
List pattern, the pattern analog of the
Ast.List
expression. - Ast.Literal - Class in net.hydromatic.morel.ast
-
Parse tree node of a literal (constant).
- Ast.LiteralPat - Class in net.hydromatic.morel.ast
-
Literal pattern, the pattern analog of the
Ast.Literal
expression. - Ast.Match - Class in net.hydromatic.morel.ast
-
Match.
- Ast.NamedType - Class in net.hydromatic.morel.ast
-
Parse tree for a named type (e.g.
- Ast.Pat - Class in net.hydromatic.morel.ast
-
Base class for a pattern.
- Ast.PrefixCall - Class in net.hydromatic.morel.ast
-
Call to an prefix operator.
- Ast.Record - Class in net.hydromatic.morel.ast
-
Record.
- Ast.RecordPat - Class in net.hydromatic.morel.ast
-
Record pattern.
- Ast.RecordSelector - Class in net.hydromatic.morel.ast
-
Parse tree node of a record selector.
- Ast.RecordType - Class in net.hydromatic.morel.ast
-
Parse tree node of a record type.
- Ast.Tuple - Class in net.hydromatic.morel.ast
-
Tuple.
- Ast.TuplePat - Class in net.hydromatic.morel.ast
-
Tuple pattern, the pattern analog of the
Ast.Tuple
expression. - Ast.TupleType - Class in net.hydromatic.morel.ast
-
Tuple type.
- Ast.TyCon - Class in net.hydromatic.morel.ast
-
Type constructor.
- Ast.Type - Class in net.hydromatic.morel.ast
-
Base class for parse tree nodes that represent types.
- Ast.TyVar - Class in net.hydromatic.morel.ast
-
Parse tree node of a type variable.
- Ast.ValBind - Class in net.hydromatic.morel.ast
-
Value bind.
- Ast.ValDecl - Class in net.hydromatic.morel.ast
-
Parse tree node of a value declaration.
- Ast.WildcardPat - Class in net.hydromatic.morel.ast
-
Wildcard pattern.
- AstBuilder - Enum in net.hydromatic.morel.ast
-
Builds parse tree nodes.
- AstNode - Class in net.hydromatic.morel.ast
-
Abstract syntax tree node.
- AstNode(Pos, Op) - Constructor for class net.hydromatic.morel.ast.AstNode
- AstWriter - Class in net.hydromatic.morel.ast
-
Context for writing an AST out as a string.
- AstWriter() - Constructor for class net.hydromatic.morel.ast.AstWriter
- AT - net.hydromatic.morel.ast.Op
- atom(String) - Method in class net.hydromatic.morel.util.Unifier
-
Creates an atom, or returns an existing one with the same name.
B
- BAR - net.hydromatic.morel.ast.Op
- BEFORE - net.hydromatic.morel.ast.Op
- binary(String, AstNode, String, AstNode, int) - Method in class net.hydromatic.morel.ast.AstWriter
-
Appends a call to a binary operator (e.g.
- binary(String, AstNode, String, AstNode, String) - Method in class net.hydromatic.morel.ast.AstWriter
-
Appends a call to a binary operator (e.g.
- bind(String, Object) - Method in interface net.hydromatic.morel.eval.EvalEnv
-
Creates an environment that has the same content as this one, plus the binding (name, value).
- bind(String, Type, Object) - Method in class net.hydromatic.morel.compile.Environment
-
Creates an environment that is the same as a given environment, plus one more variable.
- bindAll(Iterable<Binding>) - Method in class net.hydromatic.morel.compile.Environment
-
Creates an environment that is the same as this, plus the given bindings.
- Binding - Class in net.hydromatic.morel.type
-
Binding of a name to a type and a value.
- Binding(String, Type, Object) - Constructor for class net.hydromatic.morel.type.Binding
- bindMutable(String) - Method in interface net.hydromatic.morel.eval.EvalEnv
-
Creates an evaluation environment that has the same content as this one, plus a mutable slot.
- binds - Variable in class net.hydromatic.morel.ast.Ast.DatatypeDecl
- BOOL - net.hydromatic.morel.type.PrimitiveType
- BOOL_LITERAL - net.hydromatic.morel.ast.Op
- BOOL_LITERAL_PAT - net.hydromatic.morel.ast.Op
- boolLiteral(Pos, boolean) - Method in enum net.hydromatic.morel.ast.AstBuilder
-
Creates a
boolean
literal. - BuiltIn - Enum in net.hydromatic.morel.compile
-
Built-in constants and functions.
- BY_ML_NAME - Static variable in enum net.hydromatic.morel.compile.BuiltIn
C
- CalciteForeignValue - Class in net.hydromatic.morel.foreign
-
Value based on a Calcite schema.
- CalciteForeignValue(SchemaPlus, boolean) - Constructor for class net.hydromatic.morel.foreign.CalciteForeignValue
-
Creates a CalciteForeignValue.
- caret(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- caret(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "^" (string concatenation).
- CARET - net.hydromatic.morel.ast.Op
- CASE - net.hydromatic.morel.ast.Op
- caseOf(Pos, Ast.Exp, Iterable<? extends Ast.Match>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- CHAR - net.hydromatic.morel.type.PrimitiveType
- CHAR_LITERAL - net.hydromatic.morel.ast.Op
- CHAR_LITERAL_PAT - net.hydromatic.morel.ast.Op
- charLiteral(Pos, char) - Method in enum net.hydromatic.morel.ast.AstBuilder
-
Creates a
char
literal. - checkCycle(Map<Unifier.Variable, Unifier.Term>, Map<Unifier.Variable, Unifier.Variable>) - Method in class net.hydromatic.morel.util.Unifier.Sequence
- checkCycle(Map<Unifier.Variable, Unifier.Term>, Map<Unifier.Variable, Unifier.Variable>) - Method in interface net.hydromatic.morel.util.Unifier.Term
-
Throws CycleException if expanding this term leads to a cycle.
- checkCycle(Map<Unifier.Variable, Unifier.Term>, Map<Unifier.Variable, Unifier.Variable>) - Method in class net.hydromatic.morel.util.Unifier.Variable
- clear() - Method in class net.hydromatic.morel.util.TailList
- Closure - Class in net.hydromatic.morel.eval
-
Value that is sufficient for a function to bind its argument and evaluate its body.
- Closure(EvalEnv, ImmutableList<Pair<Ast.Pat, Code>>) - Constructor for class net.hydromatic.morel.eval.Closure
-
Not a public API.
- Code - Interface in net.hydromatic.morel.eval
-
A compiled expression, that can be evaluated.
- codes - Variable in class net.hydromatic.morel.eval.Codes.TupleCode
- Codes - Class in net.hydromatic.morel.eval
-
Helpers for
Code
. - Codes.TupleCode - Class in net.hydromatic.morel.eval
-
A code that evaluates expressions and creates a tuple with the results.
- compareTo(Closure) - Method in class net.hydromatic.morel.eval.Closure
- compareTo(Unit) - Method in class net.hydromatic.morel.eval.Unit
- compareTo(Pair<T1, T2>) - Method in class net.hydromatic.morel.util.Pair
- compareTo(Unifier.Variable) - Method in class net.hydromatic.morel.util.Unifier.Variable
- compile(Environment, Ast.Exp) - Method in class net.hydromatic.morel.compile.Compiler
- CompiledStatement - Interface in net.hydromatic.morel.compile
-
Statement that has been compiled and is ready to be run from the REPL.
- CompileException - Exception in net.hydromatic.morel.compile
-
An error occurred during compilation.
- CompileException(String) - Constructor for exception net.hydromatic.morel.compile.CompileException
- Compiler - Class in net.hydromatic.morel.compile
-
Compiles an expression to code that can be evaluated.
- Compiler(TypeResolver.TypeMap) - Constructor for class net.hydromatic.morel.compile.Compiler
- Compiles - Class in net.hydromatic.morel.compile
-
Helpers for
Compiler
andTypeResolver
. - Compiles() - Constructor for class net.hydromatic.morel.compile.Compiles
- COMPOSE - net.hydromatic.morel.ast.Op
- COMPOSITE_TYPE - net.hydromatic.morel.ast.Op
- compositeType(Pos, Iterable<Ast.Type>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- CON_PAT - net.hydromatic.morel.ast.Op
- CON0_PAT - net.hydromatic.morel.ast.Op
- con0Pat(Pos, Ast.Id) - Method in enum net.hydromatic.morel.ast.AstBuilder
- condition - Variable in class net.hydromatic.morel.ast.Ast.If
- conPat(Pos, Ast.Id, Ast.Pat) - Method in enum net.hydromatic.morel.ast.AstBuilder
- cons(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- cons(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "::" (list cons).
- CONS - net.hydromatic.morel.ast.Op
- CONS_PAT - net.hydromatic.morel.ast.Op
- ConsList<E> - Class in net.hydromatic.morel.util
-
List that consists of a head element and an immutable non-empty list.
- consPat(Ast.Pat, Ast.Pat) - Method in enum net.hydromatic.morel.ast.AstBuilder
- constant(Comparable) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates to the same value in all environments.
- contains(Unifier.Variable) - Method in class net.hydromatic.morel.util.Unifier.Sequence
- contains(Unifier.Variable) - Method in interface net.hydromatic.morel.util.Unifier.Term
- contains(Unifier.Variable) - Method in class net.hydromatic.morel.util.Unifier.Variable
- copy(boolean, Ast.Pat, Ast.Exp) - Method in class net.hydromatic.morel.ast.Ast.ValBind
-
Creates a copy of this
ValBind
with given contents, or this if the contents are the same. - copy(Iterable<Ast.Decl>, Ast.Exp) - Method in class net.hydromatic.morel.ast.Ast.LetExp
-
Creates a copy of this
LetExp
with given contents, or this if the contents are the same. - copy(Iterable<Ast.ValBind>) - Method in class net.hydromatic.morel.ast.Ast.ValDecl
-
Creates a copy of this
ValDecl
with given contents, or this if the contents are the same. - copy(List<Ast.Exp>) - Method in class net.hydromatic.morel.ast.Ast.Tuple
- copy(Map<Ast.Id, Ast.Exp>, Ast.Exp, Ast.Exp, List<Pair<Ast.Exp, Ast.Id>>, List<Ast.Aggregate>) - Method in class net.hydromatic.morel.ast.Ast.From
-
Creates a copy of this
From
with given contents, or this if the contents are the same. - copy(Ast.Exp, Ast.Exp) - Method in class net.hydromatic.morel.ast.Ast.Apply
- copy(TypeSystem, Function<Type, Type>) - Method in class net.hydromatic.morel.type.ApplyType
- copy(TypeSystem, Function<Type, Type>) - Method in class net.hydromatic.morel.type.DataType
- copy(TypeSystem, Function<Type, Type>) - Method in enum net.hydromatic.morel.type.DummyType
- copy(TypeSystem, Function<Type, Type>) - Method in class net.hydromatic.morel.type.FnType
- copy(TypeSystem, Function<Type, Type>) - Method in class net.hydromatic.morel.type.ForallType
- copy(TypeSystem, Function<Type, Type>) - Method in class net.hydromatic.morel.type.ListType
- copy(TypeSystem, Function<Type, Type>) - Method in enum net.hydromatic.morel.type.PrimitiveType
- copy(TypeSystem, Function<Type, Type>) - Method in class net.hydromatic.morel.type.RecordType
- copy(TypeSystem, Function<Type, Type>) - Method in class net.hydromatic.morel.type.TupleType
- copy(TypeSystem, Function<Type, Type>) - Method in interface net.hydromatic.morel.type.Type
-
Copies this type, applying a given transform to component types, and returning the original type if the component types are unchanged.
- copy(TypeSystem, Function<Type, Type>) - Method in class net.hydromatic.morel.type.TypeSystem.TemporaryType
- copy(TypeSystem, Function<Type, Type>) - Method in class net.hydromatic.morel.type.TypeVar
- copyOf(Map<String, Object>) - Static method in class net.hydromatic.morel.eval.EvalEnvs
-
Creates an evaluation environment with the given (name, value) map.
- createEnvironment(TypeSystem, Map<String, ForeignValue>) - Static method in class net.hydromatic.morel.compile.Compiles
-
Creates an environment containing the given foreign values.
D
- DATA_TYPE - net.hydromatic.morel.ast.Op
- dataType(String, List<TypeVar>, Map<String, Type>) - Method in class net.hydromatic.morel.type.TypeSystem
-
Creates a data type.
- DataType - Class in net.hydromatic.morel.type
-
Algebraic type.
- DATATYPE_BIND - net.hydromatic.morel.ast.Op
- DATATYPE_DECL - net.hydromatic.morel.ast.Op
- datatypeBind(Pos, Ast.Id, Iterable<Ast.TyVar>, Iterable<Ast.TyCon>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- datatypeDecl(Pos, Iterable<Ast.DatatypeBind>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- decls - Variable in class net.hydromatic.morel.ast.Ast.LetExp
- deduceType(Environment, Ast.Decl, TypeSystem) - Static method in class net.hydromatic.morel.compile.TypeResolver
-
Deduces the type of a declaration.
- delete() - Method in class net.hydromatic.morel.type.TypeSystem.TemporaryType
- description() - Method in enum net.hydromatic.morel.type.DummyType
- description() - Method in enum net.hydromatic.morel.type.PrimitiveType
- description() - Method in interface net.hydromatic.morel.type.Type
-
Description of the type, e.g.
- description() - Method in class net.hydromatic.morel.type.TypeSystem.TemporaryType
- description() - Method in class net.hydromatic.morel.type.TypeVar
- div(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- div(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "div".
- DIV - net.hydromatic.morel.ast.Op
- divide(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- divide(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "/".
- DIVIDE - net.hydromatic.morel.ast.Op
- DummyType - Enum in net.hydromatic.morel.type
-
Type that is a place-holder for a type constructor that has no arguments; for example, "NONE" in "datatype 'a option = NONE | SOME of 'a" would have dummy type.
E
- e - Variable in class net.hydromatic.morel.ast.Ast.AnnotatedExp
- e - Variable in class net.hydromatic.morel.ast.Ast.Case
- e - Variable in class net.hydromatic.morel.ast.Ast.FunMatch
- e - Variable in class net.hydromatic.morel.ast.Ast.LetExp
- e - Variable in class net.hydromatic.morel.ast.Ast.Match
- e - Variable in class net.hydromatic.morel.ast.Ast.ValBind
- e - Variable in class net.hydromatic.morel.util.Ord
- elementType - Variable in class net.hydromatic.morel.type.ListType
- ellipsis - Variable in class net.hydromatic.morel.ast.Ast.RecordPat
- empty() - Static method in class net.hydromatic.morel.compile.Environments
-
Creates an empty environment.
- emptyEnv() - Static method in class net.hydromatic.morel.eval.Codes
-
Creates an empty evaluation environment.
- emptyEnvWith(Environment) - Static method in class net.hydromatic.morel.eval.Codes
-
Creates an evaluation environment that contains the bound values from a compilation environment.
- endColumn - Variable in class net.hydromatic.morel.ast.Pos
- endLine - Variable in class net.hydromatic.morel.ast.Pos
- ensureClosed(Type) - Method in class net.hydromatic.morel.type.TypeSystem
-
Converts a type into a
ForallType
if it has free type variables. - env(TypeSystem, Environment) - Static method in class net.hydromatic.morel.eval.Codes
-
Creates a compilation environment.
- Environment - Class in net.hydromatic.morel.compile
-
Environment for validation/compilation.
- Environment() - Constructor for class net.hydromatic.morel.compile.Environment
- Environments - Class in net.hydromatic.morel.compile
-
Helpers for
Environment
. - eq(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "
=
". - EQ - net.hydromatic.morel.ast.Op
- equal(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.AnnotatedExp
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.DatatypeBind
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.DatatypeDecl
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.FunDecl
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.Id
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.Literal
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.LiteralPat
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.NamedType
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.RecordSelector
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.RecordType
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.TyVar
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.ValDecl
- equals(Object) - Method in class net.hydromatic.morel.ast.Ast.WildcardPat
- equals(Object) - Method in class net.hydromatic.morel.ast.Pos
- equals(Object) - Method in class net.hydromatic.morel.util.ConsList
- equals(Object) - Method in class net.hydromatic.morel.util.Pair
- equals(Object) - Method in class net.hydromatic.morel.util.Unifier.Sequence
- equals(Object) - Method in class net.hydromatic.morel.util.Unifier.Substitution
- eval(Environment, List<String>, List<Binding>) - Method in interface net.hydromatic.morel.compile.CompiledStatement
-
Evaluates this statement, adding lines of feedback to
output
and writing bindings (values to variables, and types definitions) tobindings
. - eval(EvalEnv) - Method in interface net.hydromatic.morel.eval.Code
- eval(EvalEnv) - Method in class net.hydromatic.morel.eval.Codes.TupleCode
- EvalEnv - Interface in net.hydromatic.morel.eval
-
Evaluation environment.
- EvalEnvs - Class in net.hydromatic.morel.eval
-
Helpers for
EvalEnv
. - expand(Environment) - Method in interface net.hydromatic.morel.compile.Macro
F
- failure(String) - Method in class net.hydromatic.morel.util.Unifier
- Failure() - Constructor for class net.hydromatic.morel.util.Unifier.Failure
- FALSE - net.hydromatic.morel.compile.BuiltIn
-
Literal "false", of type "bool".
- fieldTypes - Variable in class net.hydromatic.morel.ast.Ast.RecordType
- filterExp - Variable in class net.hydromatic.morel.ast.Ast.From
- firstAnd(Iterable<T>) - Static method in class net.hydromatic.morel.util.Pair
-
Returns an iterator that iterates over (0, i) pairs in an iterable for i > 0.
- fn - Variable in class net.hydromatic.morel.ast.Ast.Apply
- fn(Pos, Iterable<? extends Ast.Match>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- fn(Pos, Ast.Match...) - Method in enum net.hydromatic.morel.ast.AstBuilder
- FN - net.hydromatic.morel.ast.Op
- fnType(Type, Type) - Method in class net.hydromatic.morel.type.TypeSystem
-
Creates a function type.
- fnType(Type, Type, Type, Type...) - Method in class net.hydromatic.morel.type.TypeSystem
-
Creates a multi-step function type.
- FnType - Class in net.hydromatic.morel.type
-
The type of a function value.
- foldCons(List<Ast.Exp>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- foldFunctionType(List<Ast.Type>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- FORALL_TYPE - net.hydromatic.morel.ast.Op
- forallType(int, Function<TypeSystem.ForallHelper, Type>) - Method in class net.hydromatic.morel.type.TypeSystem
-
Creates a "forall" type.
- forallType(Iterable<TypeVar>, Type) - Method in class net.hydromatic.morel.type.TypeSystem
-
Creates a "forall" type.
- ForallType - Class in net.hydromatic.morel.type
-
Universally quantified type.
- forEach(Iterable<E>, ObjIntConsumer<E>) - Static method in class net.hydromatic.morel.util.Ord
-
Performs the given action for each element of the
Iterable
. - forEach(Iterable<K>, Iterable<V>, BiConsumer<K, V>) - Static method in class net.hydromatic.morel.util.Pair
-
Calls a consumer for each pair of items in two iterables.
- forEach(Map<K, V>, Ord.IntObjObjConsumer<K, V>) - Static method in class net.hydromatic.morel.util.Ord
-
Performs the given action for each entry of a
Map
. - forEachArg(ObjIntConsumer<Ast.Exp>) - Method in class net.hydromatic.morel.ast.Ast.Exp
- forEachArg(ObjIntConsumer<Ast.Exp>) - Method in class net.hydromatic.morel.ast.Ast.InfixCall
- forEachArg(ObjIntConsumer<Ast.Exp>) - Method in class net.hydromatic.morel.ast.Ast.List
- forEachArg(ObjIntConsumer<Ast.Exp>) - Method in class net.hydromatic.morel.ast.Ast.PrefixCall
- forEachArg(ObjIntConsumer<Ast.Exp>) - Method in class net.hydromatic.morel.ast.Ast.Record
- forEachArg(ObjIntConsumer<Ast.Exp>) - Method in class net.hydromatic.morel.ast.Ast.Tuple
- forEachArg(ObjIntConsumer<Ast.Pat>) - Method in class net.hydromatic.morel.ast.Ast.AnnotatedPat
- forEachArg(ObjIntConsumer<Ast.Pat>) - Method in class net.hydromatic.morel.ast.Ast.ConPat
- forEachArg(ObjIntConsumer<Ast.Pat>) - Method in class net.hydromatic.morel.ast.Ast.InfixPat
- forEachArg(ObjIntConsumer<Ast.Pat>) - Method in class net.hydromatic.morel.ast.Ast.ListPat
- forEachArg(ObjIntConsumer<Ast.Pat>) - Method in class net.hydromatic.morel.ast.Ast.Pat
- forEachArg(ObjIntConsumer<Ast.Pat>) - Method in class net.hydromatic.morel.ast.Ast.RecordPat
- forEachArg(ObjIntConsumer<Ast.Pat>) - Method in class net.hydromatic.morel.ast.Ast.TuplePat
- forEachIndexed(Iterable<? extends Map.Entry<K, V>>, Pair.PairWithOrdinalConsumer<K, V>) - Static method in class net.hydromatic.morel.util.Pair
-
Calls a consumer with an ordinal for each pair of items in an iterable of pairs.
- forEachIndexed(Iterable<K>, Iterable<V>, Pair.PairWithOrdinalConsumer<K, V>) - Static method in class net.hydromatic.morel.util.Pair
-
Calls a consumer with an ordinal for each pair of items in two iterables.
- forEachIndexed(Map<K, V>, Pair.PairWithOrdinalConsumer<K, V>) - Static method in class net.hydromatic.morel.util.Pair
-
Calls a consumer for each entry in a map.
- forEachType(BiConsumer<String, Type>) - Method in class net.hydromatic.morel.compile.Environment
-
Calls a consumer for each variable and its type.
- forEachType(TypeSystem, BiConsumer<String, Type>) - Static method in enum net.hydromatic.morel.compile.BuiltIn
-
Calls a consumer once per value.
- forEachValue(BiConsumer<String, Object>) - Method in class net.hydromatic.morel.compile.Environment
-
Calls a consumer for each variable and its value.
- ForeignValue - Interface in net.hydromatic.morel.foreign
-
External value.
- from(Map<Ast.Id, Code>, Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
- from(Pos, Map<Ast.Id, Ast.Exp>, Ast.Exp, Ast.Exp, List<Pair<Ast.Exp, Ast.Id>>, List<Ast.Aggregate>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- FROM - net.hydromatic.morel.ast.Op
- fromGroup(Map<Ast.Id, Code>, Code, List<Code>, List<Applicable>, List<String>) - Static method in class net.hydromatic.morel.eval.Codes
- FUN_BIND - net.hydromatic.morel.ast.Op
- FUN_DECL - net.hydromatic.morel.ast.Op
- FUN_MATCH - net.hydromatic.morel.ast.Op
- funBind(Pos, Iterable<? extends Ast.FunMatch>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- funBinds - Variable in class net.hydromatic.morel.ast.Ast.FunDecl
- FUNCTION_TYPE - net.hydromatic.morel.ast.Op
- functionType(Pos, Ast.Type, Ast.Type) - Method in enum net.hydromatic.morel.ast.AstBuilder
- funDecl(Pos, Iterable<? extends Ast.FunBind>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- funMatch(Pos, String, Iterable<? extends Ast.Pat>, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
G
- ge(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "
>=
". - GE - net.hydromatic.morel.ast.Op
- get(int) - Method in class net.hydromatic.morel.eval.Unit
- get(int) - Method in class net.hydromatic.morel.foreign.RelList
- get(int) - Method in interface net.hydromatic.morel.type.TypeSystem.ForallHelper
- get(int) - Method in class net.hydromatic.morel.util.ConsList
- get(int) - Method in class net.hydromatic.morel.util.MapList
- get(int) - Method in class net.hydromatic.morel.util.TailList
- get(String) - Method in class net.hydromatic.morel.compile.Environment
-
Returns the binding of
name
; throws if not. - get(String) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that returns the value of variable "name" in the current environment.
- getKey() - Method in class net.hydromatic.morel.util.Ord
- getKey() - Method in class net.hydromatic.morel.util.Pair
- getOpt(String) - Method in class net.hydromatic.morel.compile.Environment
-
Returns the binding of
name
if bound, null if not. - getOpt(String) - Method in interface net.hydromatic.morel.eval.EvalEnv
-
Returns the binding of
name
if bound, null if not. - getType() - Method in interface net.hydromatic.morel.compile.CompiledStatement
- getType(AstNode) - Method in class net.hydromatic.morel.compile.TypeResolver.TypeMap
-
Returns a type of an AST node.
- getValue() - Method in class net.hydromatic.morel.util.Ord
- getValue() - Method in class net.hydromatic.morel.util.Pair
- getValueMap() - Method in class net.hydromatic.morel.compile.Environment
-
Returns a map of the values and bindings.
- greaterThan(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- greaterThanOrEqual(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- groupExps - Variable in class net.hydromatic.morel.ast.Ast.From
- gt(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "
>
". - GT - net.hydromatic.morel.ast.Op
H
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.AnnotatedExp
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.DatatypeBind
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.DatatypeDecl
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.FunDecl
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.Id
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.Literal
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.LiteralPat
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.NamedType
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.RecordSelector
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.RecordType
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.TyVar
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.ValDecl
- hashCode() - Method in class net.hydromatic.morel.ast.Ast.WildcardPat
- hashCode() - Method in class net.hydromatic.morel.ast.Pos
- hashCode() - Method in class net.hydromatic.morel.util.ConsList
- hashCode() - Method in class net.hydromatic.morel.util.Pair
- hashCode() - Method in class net.hydromatic.morel.util.Unifier.Sequence
- hashCode() - Method in class net.hydromatic.morel.util.Unifier.Substitution
- hasType(AstNode) - Method in class net.hydromatic.morel.compile.TypeResolver.TypeMap
-
Returns whether an AST node has a type.
I
- i - Variable in class net.hydromatic.morel.util.Ord
- id - Variable in class net.hydromatic.morel.ast.Ast.Aggregate
- id - Variable in class net.hydromatic.morel.ast.Ast.TyCon
- id(Pos, String) - Method in enum net.hydromatic.morel.ast.AstBuilder
- ID - net.hydromatic.morel.ast.Op
- ID_PAT - net.hydromatic.morel.ast.Op
- idPat(Pos, String) - Method in enum net.hydromatic.morel.ast.AstBuilder
- If(Pos, Ast.Exp, Ast.Exp, Ast.Exp) - Constructor for class net.hydromatic.morel.ast.Ast.If
- IF - net.hydromatic.morel.ast.Op
- ifFalse - Variable in class net.hydromatic.morel.ast.Ast.If
- ifThenElse(Pos, Ast.Exp, Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- ifThenElse(Code, Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
- ifTrue - Variable in class net.hydromatic.morel.ast.Ast.If
- IGNORE - net.hydromatic.morel.compile.BuiltIn
-
Function "ignore", of type "α → unit".
- implicitLabel(Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- indexOf(Object) - Method in class net.hydromatic.morel.util.ConsList
- infix(int, AstNode, Op, AstNode, int) - Method in class net.hydromatic.morel.ast.AstWriter
-
Appends a call to an infix operator.
- infixCall(Pos, Op, Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- infixPat(Pos, Op, Ast.Pat, Ast.Pat) - Method in enum net.hydromatic.morel.ast.AstBuilder
- INSTANCE - net.hydromatic.morel.type.DummyType
- INSTANCE - Static variable in class net.hydromatic.morel.eval.Unit
- INT - net.hydromatic.morel.type.PrimitiveType
- INT_LITERAL - net.hydromatic.morel.ast.Op
- INT_LITERAL_PAT - net.hydromatic.morel.ast.Op
- intLiteral(BigDecimal, Pos) - Method in enum net.hydromatic.morel.ast.AstBuilder
-
Creates an
int
literal. - isConstant() - Method in interface net.hydromatic.morel.eval.Code
- iterator() - Method in class net.hydromatic.morel.util.ConsList
L
- lastIndexOf(Object) - Method in class net.hydromatic.morel.util.ConsList
- le(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "
<=
". - LE - net.hydromatic.morel.ast.Op
- left - Variable in enum net.hydromatic.morel.ast.Op
-
Left precedence
- left - Variable in class net.hydromatic.morel.util.Pair
- left(Iterable<? extends Map.Entry<L, R>>) - Static method in class net.hydromatic.morel.util.Pair
-
Returns an iterable over the left slice of an iterable.
- left(List<? extends Map.Entry<K, V>>) - Static method in class net.hydromatic.morel.util.Pair
- lessThan(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- lessThanOrEqual(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- let(List<Code>, Code) - Static method in class net.hydromatic.morel.eval.Codes
- let(Pos, Iterable<? extends Ast.Decl>, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- LET - net.hydromatic.morel.ast.Op
- list(int) - Method in interface net.hydromatic.morel.type.TypeSystem.ForallHelper
- list(Iterable<? extends Code>) - Static method in class net.hydromatic.morel.eval.Codes
- list(Pos, Iterable<? extends Ast.Exp>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- LIST - net.hydromatic.morel.ast.Op
- LIST_ALL - net.hydromatic.morel.compile.BuiltIn
-
Function "List.all", of type "(α → bool) → α list → bool".
- LIST_APP - net.hydromatic.morel.compile.BuiltIn
-
Function "List.app", of type "(α → unit) → α list → unit".
- LIST_AT - net.hydromatic.morel.compile.BuiltIn
-
Function "List.at", of type "α list * α list → α list".
- LIST_COLLATE - net.hydromatic.morel.compile.BuiltIn
-
Function "List.collate", of type "(α * α → order) → α list * α list → order".
- LIST_CONCAT - net.hydromatic.morel.compile.BuiltIn
-
Function "List.concat", of type "α list list → α list".
- LIST_DROP - net.hydromatic.morel.compile.BuiltIn
-
Function "List.drop", of type "α list * int → α list".
- LIST_EXISTS - net.hydromatic.morel.compile.BuiltIn
-
Function "List.exists", of type "(α → bool) → α list → bool".
- LIST_FILTER - net.hydromatic.morel.compile.BuiltIn
-
Function "List.filter", of type "(α → bool) → α list → α list".
- LIST_FIND - net.hydromatic.morel.compile.BuiltIn
-
Function "List.find", of type "(α → bool) → α list → α option".
- LIST_FOLDL - net.hydromatic.morel.compile.BuiltIn
-
Function "List.foldl", of type "(α * β → β) → β → α list → β".
- LIST_FOLDR - net.hydromatic.morel.compile.BuiltIn
-
Function "List.foldr", of type "(α * β → β) → β → α list → β".
- LIST_GET_ITEM - net.hydromatic.morel.compile.BuiltIn
-
Function "List.getItem", of type "α list → (α * α list) option".
- LIST_HD - net.hydromatic.morel.compile.BuiltIn
-
Function "List.hd", of type "α list → α".
- LIST_LAST - net.hydromatic.morel.compile.BuiltIn
-
Function "List.last", of type "α list → α".
- LIST_LENGTH - net.hydromatic.morel.compile.BuiltIn
-
Function "List.length", of type "α list → int".
- LIST_MAP - net.hydromatic.morel.compile.BuiltIn
-
Function "List.map", of type "(α → β) → α list → β list".
- LIST_MAP_PARTIAL - net.hydromatic.morel.compile.BuiltIn
-
Function "List.mapPartial", of type "(α → β option) → α list → β list".
- LIST_NIL - net.hydromatic.morel.compile.BuiltIn
-
Constant "List.nil", of type "α list".
- LIST_NTH - net.hydromatic.morel.compile.BuiltIn
-
Function "List.nth", of type "α list * int → α".
- LIST_NULL - net.hydromatic.morel.compile.BuiltIn
-
Function "List.null", of type "α list → bool".
- LIST_PARTITION - net.hydromatic.morel.compile.BuiltIn
-
Function "List.partition", of type "(α → bool) → α list → α list * α list".
- LIST_PAT - net.hydromatic.morel.ast.Op
- LIST_REV - net.hydromatic.morel.compile.BuiltIn
-
Function "List.rev", of type "α list → α list".
- LIST_REV_APPEND - net.hydromatic.morel.compile.BuiltIn
-
Function "List.revAppend", of type "α list * α list → α list".
- LIST_TABULATE - net.hydromatic.morel.compile.BuiltIn
-
Function "List.tabulate", of type "int * (int → α) → α list".
- LIST_TAKE - net.hydromatic.morel.compile.BuiltIn
-
Function "List.take", of type "α list * int → α list".
- LIST_TL - net.hydromatic.morel.compile.BuiltIn
-
Function "List.tl", of type "α list → α list".
- listIterator() - Method in class net.hydromatic.morel.util.ConsList
- listIterator(int) - Method in class net.hydromatic.morel.util.ConsList
- listPat(Pos, Iterable<? extends Ast.Pat>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- listPat(Pos, Ast.Pat...) - Method in enum net.hydromatic.morel.ast.AstBuilder
- listType(Type) - Method in class net.hydromatic.morel.type.TypeSystem
-
Creates a list type.
- ListType - Class in net.hydromatic.morel.type
-
The type of a list value.
- literalPat(Pos, Op, Comparable) - Method in enum net.hydromatic.morel.ast.AstBuilder
- lookup(String) - Method in class net.hydromatic.morel.type.TypeSystem
-
Looks up a type by name.
- lookupOpt(String) - Method in class net.hydromatic.morel.type.TypeSystem
-
Looks up a type by name, returning null if not found.
- lookupTyCon(String) - Method in class net.hydromatic.morel.type.TypeSystem
- lt(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "
<
". - LT - net.hydromatic.morel.ast.Op
M
- Macro - Interface in net.hydromatic.morel.compile
-
A function that is 'called' at compile time, and generates an expanded parse tree.
- main(String[]) - Static method in class net.hydromatic.morel.Main
-
Command-line entry point.
- main(String[]) - Static method in class net.hydromatic.morel.Shell
-
Command-line entry point.
- Main - Class in net.hydromatic.morel
-
Standard ML REPL.
- Main(String[], InputStream, PrintStream, Map<String, ForeignValue>) - Constructor for class net.hydromatic.morel.Main
-
Creates a Main.
- Main(String[], Reader, Writer, Map<String, ForeignValue>) - Constructor for class net.hydromatic.morel.Main
-
Creates a Main.
- map(Pos, Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- MAP - net.hydromatic.morel.ast.Op
- MapList<E> - Class in net.hydromatic.morel.util
-
Read-only list that generates elements between 0 and
size
- 1 by applying a function. - MartelliUnifier - Class in net.hydromatic.morel.util
-
Unification algorithm due to Martelli, Montanari (1976) and Paterson, Wegman (1978).
- MartelliUnifier() - Constructor for class net.hydromatic.morel.util.MartelliUnifier
- match(Pos, Ast.Pat, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- MATCH - net.hydromatic.morel.ast.Op
- matchList - Variable in class net.hydromatic.morel.ast.Ast.Case
- matchList - Variable in class net.hydromatic.morel.ast.Ast.Fn
- matchList - Variable in class net.hydromatic.morel.ast.Ast.FunBind
- minus(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- minus(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "-".
- MINUS - net.hydromatic.morel.ast.Op
- mlName - Variable in enum net.hydromatic.morel.compile.BuiltIn
-
The name as it appears in ML's symbol table.
- mod(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- mod(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "mod".
- MOD - net.hydromatic.morel.ast.Op
- MutableEvalEnv - Interface in net.hydromatic.morel.eval
-
An evaluation environment whose last entry is mutable.
N
- name - Variable in class net.hydromatic.morel.ast.Ast.DatatypeBind
- name - Variable in class net.hydromatic.morel.ast.Ast.FunBind
- name - Variable in class net.hydromatic.morel.ast.Ast.FunMatch
- name - Variable in class net.hydromatic.morel.ast.Ast.Id
- name - Variable in class net.hydromatic.morel.ast.Ast.IdPat
- name - Variable in class net.hydromatic.morel.ast.Ast.NamedType
- name - Variable in class net.hydromatic.morel.ast.Ast.RecordSelector
- name - Variable in class net.hydromatic.morel.ast.Ast.TyVar
- name - Variable in class net.hydromatic.morel.type.Binding
- name - Variable in class net.hydromatic.morel.type.DataType
- name() - Method in class net.hydromatic.morel.type.DataType
- name() - Method in interface net.hydromatic.morel.type.NamedType
-
Name of the type.
- name() - Method in class net.hydromatic.morel.type.TypeSystem.TemporaryType
- NAMED_TYPE - net.hydromatic.morel.ast.Op
- namedType(Pos, Iterable<? extends Ast.Type>, String) - Method in enum net.hydromatic.morel.ast.AstBuilder
- NamedType - Interface in net.hydromatic.morel.type
-
Type that has a name.
- ne(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "
<>
". - NE - net.hydromatic.morel.ast.Op
- negate(Pos, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- negate(Code) - Static method in class net.hydromatic.morel.eval.Codes
- NEGATE - net.hydromatic.morel.ast.Op
- net.hydromatic.morel - package net.hydromatic.morel
-
Standard ML interpreter, implemented in Java.
- net.hydromatic.morel.ast - package net.hydromatic.morel.ast
-
Abstract syntax tree.
- net.hydromatic.morel.compile - package net.hydromatic.morel.compile
-
Validates programs (represented as
AstNode
), deduces their type, and compiles them into code that can be evaluated. - net.hydromatic.morel.eval - package net.hydromatic.morel.eval
-
Evaluates expressions.
- net.hydromatic.morel.foreign - package net.hydromatic.morel.foreign
-
Provides access to external data sources.
- net.hydromatic.morel.type - package net.hydromatic.morel.type
-
Type system.
- net.hydromatic.morel.util - package net.hydromatic.morel.util
-
Utilities.
- node - Variable in class net.hydromatic.morel.compile.TypeResolver.Resolved
- NOT - net.hydromatic.morel.compile.BuiltIn
-
Function "not", of type "bool → bool".
- notEqual(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- nth(int) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns an applicable that returns the
slot
th field of a tuple or record.
O
- occurs() - Method in class net.hydromatic.morel.util.Unifier
-
Whether this unifier checks for cycles in substitutions.
- of(int, E) - Static method in class net.hydromatic.morel.util.Ord
-
Creates an Ord.
- of(int, IntFunction<E>) - Static method in class net.hydromatic.morel.util.MapList
-
Creates a MapList.
- of(E, List<? extends E>) - Static method in class net.hydromatic.morel.util.ConsList
-
Creates a ConsList.
- of(Map.Entry<K, V>) - Static method in class net.hydromatic.morel.util.Pair
-
Creates a
Pair
from aMap.Entry
. - of(T1, T2) - Static method in class net.hydromatic.morel.util.Pair
-
Creates a Pair of appropriate type.
- op - Variable in class net.hydromatic.morel.ast.AstNode
- op() - Method in enum net.hydromatic.morel.type.DummyType
- op() - Method in enum net.hydromatic.morel.type.PrimitiveType
- op() - Method in interface net.hydromatic.morel.type.Type
-
Type operator.
- op() - Method in class net.hydromatic.morel.type.TypeSystem.TemporaryType
- op() - Method in class net.hydromatic.morel.type.TypeVar
- Op - Enum in net.hydromatic.morel.ast
-
Sub-types of
AstNode
. - operator - Variable in class net.hydromatic.morel.util.Unifier.Sequence
- Ord<E> - Class in net.hydromatic.morel.util
-
Pair of an element and an ordinal.
- Ord.IntObjObjConsumer<K,V> - Interface in net.hydromatic.morel.util
-
Consumer that receives an ordinal, a key, and a value.
- ORDERING - Static variable in class net.hydromatic.morel.type.RecordType
-
Ordering that compares integer values numerically, string values lexicographically, and integer values before string values.
- orElse(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- orElse(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "orelse".
- ORELSE - net.hydromatic.morel.ast.Op
- originalNode - Variable in class net.hydromatic.morel.compile.TypeResolver.Resolved
P
- p0 - Variable in class net.hydromatic.morel.ast.Ast.InfixPat
- p1 - Variable in class net.hydromatic.morel.ast.Ast.InfixPat
- padded - Variable in enum net.hydromatic.morel.ast.Op
-
Padded name, e.g.
- Pair<T1,T2> - Class in net.hydromatic.morel.util
-
Pair of objects.
- Pair(T1, T2) - Constructor for class net.hydromatic.morel.util.Pair
-
Creates a Pair.
- Pair.PairWithOrdinalConsumer<K,V> - Interface in net.hydromatic.morel.util
-
Represents an operation that accepts two input arguments and an ordinal, and returns no result.
- paramType - Variable in class net.hydromatic.morel.ast.Ast.FunctionType
- paramType - Variable in class net.hydromatic.morel.type.FnType
- pat - Variable in class net.hydromatic.morel.ast.Ast.AnnotatedPat
- pat - Variable in class net.hydromatic.morel.ast.Ast.ConPat
- pat - Variable in class net.hydromatic.morel.ast.Ast.Match
- pat - Variable in class net.hydromatic.morel.ast.Ast.ValBind
- patList - Variable in class net.hydromatic.morel.ast.Ast.FunMatch
- pause() - Method in class net.hydromatic.morel.Shell
-
Pauses after creating the terminal.
- plus(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- plus(Pos) - Method in class net.hydromatic.morel.ast.Pos
- plus(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "+".
- PLUS - net.hydromatic.morel.ast.Op
- plusAll(Iterable<Pos>) - Method in class net.hydromatic.morel.ast.Pos
- plusAll(List<? extends AstNode>) - Method in class net.hydromatic.morel.ast.Pos
- pos - Variable in class net.hydromatic.morel.ast.AstNode
- Pos - Class in net.hydromatic.morel.ast
-
Position of a parse-tree node.
- Pos(int, int, int, int) - Constructor for class net.hydromatic.morel.ast.Pos
-
Creates a Pos.
- predicate(int) - Method in interface net.hydromatic.morel.type.TypeSystem.ForallHelper
- prefix(int, Op, AstNode, int) - Method in class net.hydromatic.morel.ast.AstWriter
-
Appends a call to an prefix operator.
- prefixCall(Pos, Op, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
-
Creates a call to a prefix operator.
- prepareStatement(TypeSystem, Environment, AstNode) - Static method in class net.hydromatic.morel.compile.Compiles
-
Validates and compiles a statement (expression or declaration), and compiles it to code that can be evaluated by the interpreter.
- PrimitiveType - Enum in net.hydromatic.morel.type
-
Primitive type.
R
- REAL - net.hydromatic.morel.type.PrimitiveType
- REAL_LITERAL - net.hydromatic.morel.ast.Op
- REAL_LITERAL_PAT - net.hydromatic.morel.ast.Op
- realLiteral(BigDecimal, Pos) - Method in enum net.hydromatic.morel.ast.AstBuilder
-
Creates a
float
literal. - rec - Variable in class net.hydromatic.morel.ast.Ast.ValBind
- record(Pos, Map<String, Ast.Exp>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- RECORD - net.hydromatic.morel.ast.Op
- RECORD_PAT - net.hydromatic.morel.ast.Op
- RECORD_SELECTOR - net.hydromatic.morel.ast.Op
- RECORD_TYPE - net.hydromatic.morel.ast.Op
- recordPat(Pos, boolean, Map<String, ? extends Ast.Pat>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- recordSelector(Pos, String) - Method in enum net.hydromatic.morel.ast.AstBuilder
- recordType(SortedMap<String, ? extends Type>) - Method in class net.hydromatic.morel.type.TypeSystem
-
Creates a record type.
- recordType(Pos, Map<String, Ast.Type>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- RecordType - Class in net.hydromatic.morel.type
-
The type of a record value.
- RELATIONAL_COUNT - net.hydromatic.morel.compile.BuiltIn
-
Function "Relational.count", aka "count", of type "int list → int".
- RELATIONAL_SUM - net.hydromatic.morel.compile.BuiltIn
-
Function "Relational.sum", aka "sum", of type "int list → int".
- RelList - Class in net.hydromatic.morel.foreign
-
A list whose contents are computed by evaluating a relational expression.
- remove(int) - Method in class net.hydromatic.morel.util.TailList
- resolve() - Method in class net.hydromatic.morel.util.Unifier.Substitution
- resultMap - Variable in class net.hydromatic.morel.util.Unifier.Substitution
-
The result of the unification algorithm proper.
- resultType - Variable in class net.hydromatic.morel.ast.Ast.FunctionType
- resultType - Variable in class net.hydromatic.morel.type.FnType
- reverse(E...) - Static method in class net.hydromatic.morel.util.Ord
-
Iterates over an array in reverse order.
- reverse(Iterable<? extends E>) - Static method in class net.hydromatic.morel.util.Ord
-
Iterates over a list in reverse order.
- right - Variable in enum net.hydromatic.morel.ast.Op
-
Right precedence
- right - Variable in class net.hydromatic.morel.util.Pair
- right(Iterable<? extends Map.Entry<L, R>>) - Static method in class net.hydromatic.morel.util.Pair
-
Returns an iterable over the right slice of an iterable.
- right(List<? extends Map.Entry<K, V>>) - Static method in class net.hydromatic.morel.util.Pair
- RobinsonUnifier - Class in net.hydromatic.morel.util
-
Robinson's unification algorithm.
- RobinsonUnifier() - Constructor for class net.hydromatic.morel.util.RobinsonUnifier
- run() - Method in class net.hydromatic.morel.Main
- run() - Method in class net.hydromatic.morel.Shell
S
- set(int, E) - Method in class net.hydromatic.morel.util.TailList
- set(Object) - Method in interface net.hydromatic.morel.eval.MutableEvalEnv
- setValue(E) - Method in class net.hydromatic.morel.util.Ord
- setValue(T2) - Method in class net.hydromatic.morel.util.Pair
- Shell - Class in net.hydromatic.morel
-
Command shell for ML, powered by JLine3.
- Shell(List<String>, InputStream, OutputStream) - Constructor for class net.hydromatic.morel.Shell
-
Creates a Shell.
- Shuttle - Class in net.hydromatic.morel.ast
-
Visits and transforms syntax trees.
- Shuttle() - Constructor for class net.hydromatic.morel.ast.Shuttle
- size() - Method in class net.hydromatic.morel.eval.Unit
- size() - Method in class net.hydromatic.morel.foreign.RelList
- size() - Method in class net.hydromatic.morel.util.ConsList
- size() - Method in class net.hydromatic.morel.util.MapList
- size() - Method in class net.hydromatic.morel.util.TailList
- slot - Variable in class net.hydromatic.morel.ast.Ast.RecordSelector
-
Set during validation, after the type of the argument has been deduced, contains the ordinal of the field in the record or tuple that is to be accessed.
- sources - Variable in class net.hydromatic.morel.ast.Ast.From
- startColumn - Variable in class net.hydromatic.morel.ast.Pos
- startLine - Variable in class net.hydromatic.morel.ast.Pos
- Static - Class in net.hydromatic.morel.util
-
Utilities.
- STRING - net.hydromatic.morel.type.PrimitiveType
- STRING_CONCAT - net.hydromatic.morel.compile.BuiltIn
-
Function "String.concat", of type "string list → string".
- STRING_CONCAT_WITH - net.hydromatic.morel.compile.BuiltIn
-
Function "String.concatWith", of type "string → string list → string".
- STRING_EXPLODE - net.hydromatic.morel.compile.BuiltIn
-
Function "String.explode", of type "string → char list".
- STRING_EXTRACT - net.hydromatic.morel.compile.BuiltIn
-
Function "String.extract", of type "string * int * int option → string".
- STRING_IMPLODE - net.hydromatic.morel.compile.BuiltIn
-
Function "String.implode", of type "char list → string".
- STRING_IS_PREFIX - net.hydromatic.morel.compile.BuiltIn
-
Function "String.isPrefix", of type "string → string → bool".
- STRING_IS_SUBSTRING - net.hydromatic.morel.compile.BuiltIn
-
Function "String.isSubstring", of type "string → string → bool".
- STRING_IS_SUFFIX - net.hydromatic.morel.compile.BuiltIn
-
Function "String.isSuffix", of type "string → string → bool".
- STRING_LITERAL - net.hydromatic.morel.ast.Op
- STRING_LITERAL_PAT - net.hydromatic.morel.ast.Op
- STRING_MAP - net.hydromatic.morel.compile.BuiltIn
-
Function "String.map", of type "(char → char) → string → string".
- STRING_MAX_SIZE - net.hydromatic.morel.compile.BuiltIn
-
Constant "String.maxSize", of type "int".
- STRING_SIZE - net.hydromatic.morel.compile.BuiltIn
-
Function "String.size", of type "string → int".
- STRING_STR - net.hydromatic.morel.compile.BuiltIn
-
Function "String.str", of type "char → string".
- STRING_SUB - net.hydromatic.morel.compile.BuiltIn
-
Function "String.sub", of type "string * int → char".
- STRING_SUBSTRING - net.hydromatic.morel.compile.BuiltIn
-
Function "String.substring", of type "string * int * int → string".
- STRING_TRANSLATE - net.hydromatic.morel.compile.BuiltIn
-
Function "String.translate", of type "(char → string) → string → string".
- stringLiteral(Pos, String) - Method in enum net.hydromatic.morel.ast.AstBuilder
-
Creates a string literal.
- substitution(Unifier.Term...) - Method in class net.hydromatic.morel.util.Unifier
-
Creates a substitution.
- sum(Iterable<E>, Function<E, Pos>) - Static method in class net.hydromatic.morel.ast.Pos
- sum(Iterable<Pos>) - Static method in class net.hydromatic.morel.ast.Pos
-
Combines an iterable of parser positions to create a position which spans from the beginning of the first to the end of the last.
- sum(List<? extends AstNode>) - Static method in class net.hydromatic.morel.ast.Pos
- SYS_ENV - net.hydromatic.morel.compile.BuiltIn
-
Function "Sys.env", aka "env", of type "unit → string list".
T
- TailList<E> - Class in net.hydromatic.morel.util
-
A dynamic list that reads from a given point in a backing list.
- TailList(List<E>) - Constructor for class net.hydromatic.morel.util.TailList
-
Creates a list whose start is the current size of the backing list.
- TailList(List<E>, int) - Constructor for class net.hydromatic.morel.util.TailList
-
Creates a list that reads elements from a given backing list after a given start point.
- TEMPORARY_DATA_TYPE - net.hydromatic.morel.ast.Op
-
Used internally, while resolving a self-referential DATA_TYPE.
- temporaryType(String) - Method in class net.hydromatic.morel.type.TypeSystem
- terms - Variable in class net.hydromatic.morel.util.Unifier.Sequence
- TermTerm(Unifier.Term, Unifier.Term) - Constructor for class net.hydromatic.morel.util.Unifier.TermTerm
- times(Ast.Exp, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- times(Code, Code) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns a Code that evaluates "*".
- TIMES - net.hydromatic.morel.ast.Op
- toArray() - Method in class net.hydromatic.morel.util.ConsList
- toArray(T[]) - Method in class net.hydromatic.morel.util.ConsList
- toExp(Ast.ValDecl) - Static method in class net.hydromatic.morel.compile.Compiles
- toImmutableList() - Static method in class net.hydromatic.morel.util.Static
-
Returns a
Collector
that accumulates the input elements into a GuavaImmutableList
via aImmutableList.Builder
. - toList() - Method in class net.hydromatic.morel.util.ConsList
- toMap(Iterable<Pair<K, V>>) - Static method in class net.hydromatic.morel.util.Pair
-
Converts a collection of Pairs into a Map.
- toPat() - Method in enum net.hydromatic.morel.ast.Op
-
Converts the op of a literal or tuple expression to the corresponding op of a pattern.
- toString() - Method in class net.hydromatic.morel.ast.AstNode
-
Converts this node into an ML string.
- toString() - Method in class net.hydromatic.morel.ast.AstWriter
- toString() - Method in class net.hydromatic.morel.ast.Pos
- toString() - Method in class net.hydromatic.morel.compile.Environment
- toString() - Method in class net.hydromatic.morel.eval.Closure
- toString() - Method in class net.hydromatic.morel.eval.Unit
- toString() - Method in class net.hydromatic.morel.type.Binding
- toString() - Method in class net.hydromatic.morel.type.TypeVar
-
Returns a string for debugging; see also
TypeVar.description()
. - toString() - Method in class net.hydromatic.morel.util.ConsList
- toString() - Method in class net.hydromatic.morel.util.Pair
- toString() - Method in class net.hydromatic.morel.util.Unifier.Sequence
- toString() - Method in class net.hydromatic.morel.util.Unifier.Substitution
- toString() - Method in class net.hydromatic.morel.util.Unifier.TermTerm
- toString() - Method in class net.hydromatic.morel.util.Unifier.Variable
- toString(AstNode) - Static method in class net.hydromatic.morel.ast.Ast
- toValDecl(Ast.Exp) - Static method in class net.hydromatic.morel.compile.Compiles
-
Converts
e
toval = e
. - TRUE - net.hydromatic.morel.compile.BuiltIn
-
Literal "true", of type "bool".
- tuple(Iterable<? extends Code>) - Static method in class net.hydromatic.morel.eval.Codes
- tuple(Pos, Iterable<? extends Ast.Exp>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- TUPLE - net.hydromatic.morel.ast.Op
- TUPLE_PAT - net.hydromatic.morel.ast.Op
- TUPLE_TYPE - net.hydromatic.morel.ast.Op
- tuplePat(Pos, Iterable<? extends Ast.Pat>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- tuplePat(Pos, Ast.Pat...) - Method in enum net.hydromatic.morel.ast.AstBuilder
- tupleType(List<? extends Type>) - Method in class net.hydromatic.morel.type.TypeSystem
-
Creates a tuple type.
- tupleType(Pos, Iterable<Ast.Type>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- tupleType(Type...) - Method in class net.hydromatic.morel.type.TypeSystem
-
Creates a tuple type from an array of types.
- TupleType - Class in net.hydromatic.morel.type
-
The type of a tuple value.
- TY_CON - net.hydromatic.morel.ast.Op
- TY_VAR - net.hydromatic.morel.ast.Op
- tyCon - Variable in class net.hydromatic.morel.ast.Ast.Con0Pat
- tyCon - Variable in class net.hydromatic.morel.ast.Ast.ConPat
- tyCon(Type, String) - Static method in class net.hydromatic.morel.eval.Codes
-
Returns an applicable that constructs an instance of a datatype.
- tyCons - Variable in class net.hydromatic.morel.ast.Ast.DatatypeBind
- type - Variable in class net.hydromatic.morel.ast.Ast.AnnotatedExp
- type - Variable in class net.hydromatic.morel.ast.Ast.AnnotatedPat
- type - Variable in class net.hydromatic.morel.ast.Ast.TyCon
- type - Variable in class net.hydromatic.morel.type.ApplyType
- type - Variable in class net.hydromatic.morel.type.Binding
- type - Variable in class net.hydromatic.morel.type.ForallType
- type(TypeSystem) - Method in class net.hydromatic.morel.foreign.CalciteForeignValue
- type(TypeSystem) - Method in interface net.hydromatic.morel.foreign.ForeignValue
- Type - Interface in net.hydromatic.morel.type
-
Type.
- typeConstructor(Pos, Ast.Id, Ast.Type) - Method in enum net.hydromatic.morel.ast.AstBuilder
- typeConstructors - Variable in class net.hydromatic.morel.type.DataType
- typeFunction - Variable in enum net.hydromatic.morel.compile.BuiltIn
-
Derives a type, in a particular type system, for this constant or function.
- typeMap - Variable in class net.hydromatic.morel.compile.TypeResolver.Resolved
- TypeResolver - Class in net.hydromatic.morel.compile
-
Resolves the type of an expression.
- TypeResolver.Resolved - Class in net.hydromatic.morel.compile
-
Result of validating a declaration.
- TypeResolver.TypeMap - Class in net.hydromatic.morel.compile
-
The result of type resolution, a map from AST nodes to types.
- types - Variable in class net.hydromatic.morel.ast.Ast.CompositeType
- types - Variable in class net.hydromatic.morel.ast.Ast.NamedType
- types - Variable in class net.hydromatic.morel.ast.Ast.TupleType
- types - Variable in class net.hydromatic.morel.type.ApplyType
- TypeSystem - Class in net.hydromatic.morel.type
-
A table that contains all types in use, indexed by their description (e.g.
- TypeSystem() - Constructor for class net.hydromatic.morel.type.TypeSystem
- TypeSystem.ForallHelper - Interface in net.hydromatic.morel.type
-
Provides access to type variables from within a call to
TypeSystem.forallType(int, Function)
. - TypeSystem.TemporaryType - Class in net.hydromatic.morel.type
-
Placeholder for a type that is being recursively defined.
- TypeVar - Class in net.hydromatic.morel.type
-
Type variable (e.g.
- TypeVar(int) - Constructor for class net.hydromatic.morel.type.TypeVar
-
Creates a type variable with a given ordinal.
- typeVariable(int) - Method in class net.hydromatic.morel.type.TypeSystem
- typeVars - Variable in class net.hydromatic.morel.type.DataType
- typeVars - Variable in class net.hydromatic.morel.type.ForallType
- TypeVisitor<R> - Class in net.hydromatic.morel.type
-
Visitor over
Type
objects. - TypeVisitor() - Constructor for class net.hydromatic.morel.type.TypeVisitor
- tyVar(Pos, String) - Method in enum net.hydromatic.morel.ast.AstBuilder
- tyVars - Variable in class net.hydromatic.morel.ast.Ast.DatatypeBind
U
- Unifier - Class in net.hydromatic.morel.util
-
Given pairs of terms, finds a substitution to minimize those pairs of terms.
- Unifier() - Constructor for class net.hydromatic.morel.util.Unifier
- Unifier.Action - Interface in net.hydromatic.morel.util
-
Called by the unifier when a Term's type becomes known.
- Unifier.Failure - Class in net.hydromatic.morel.util
-
Result indicating that unification was not possible.
- Unifier.Result - Interface in net.hydromatic.morel.util
-
Result of attempting unification.
- Unifier.Sequence - Class in net.hydromatic.morel.util
-
A sequence of terms.
- Unifier.Substitution - Class in net.hydromatic.morel.util
-
The results of a successful unification.
- Unifier.Term - Interface in net.hydromatic.morel.util
-
Term (variable, symbol or node).
- Unifier.TermTerm - Class in net.hydromatic.morel.util
-
A pair of terms.
- Unifier.TermVisitor<R> - Interface in net.hydromatic.morel.util
-
Visitor for terms.
- Unifier.Variable - Class in net.hydromatic.morel.util
-
A variable that represents a symbol or a sequence; unification's task is to find the substitutions for such variables.
- unify(List<Unifier.TermTerm>, Map<Unifier.Variable, Unifier.Action>) - Method in class net.hydromatic.morel.util.MartelliUnifier
- unify(List<Unifier.TermTerm>, Map<Unifier.Variable, Unifier.Action>) - Method in class net.hydromatic.morel.util.RobinsonUnifier
- unify(List<Unifier.TermTerm>, Map<Unifier.Variable, Unifier.Action>) - Method in class net.hydromatic.morel.util.Unifier
- unify(Unifier.Term, Unifier.Term) - Method in class net.hydromatic.morel.util.RobinsonUnifier
- Unit - Class in net.hydromatic.morel.eval
-
A placeholder value for the "unit" type.
- UNIT - net.hydromatic.morel.type.PrimitiveType
- UNIT_LITERAL - net.hydromatic.morel.ast.Op
- unitLiteral(Pos) - Method in enum net.hydromatic.morel.ast.AstBuilder
-
Creates a unit literal.
V
- VAL_BIND - net.hydromatic.morel.ast.Op
- VAL_DECL - net.hydromatic.morel.ast.Op
- valBind(Pos, boolean, Ast.Pat, Ast.Exp) - Method in enum net.hydromatic.morel.ast.AstBuilder
- valBinds - Variable in class net.hydromatic.morel.ast.Ast.ValDecl
- valDecl(Pos, Iterable<? extends Ast.ValBind>) - Method in enum net.hydromatic.morel.ast.AstBuilder
- valDecl(Pos, Ast.ValBind...) - Method in enum net.hydromatic.morel.ast.AstBuilder
- validateExpression(Ast.Exp, Map<String, ForeignValue>) - Static method in class net.hydromatic.morel.compile.Compiles
-
Validates an expression, deducing its type and perhaps rewriting the expression to a form that can more easily be compiled.
- value - Variable in class net.hydromatic.morel.ast.Ast.Literal
- value - Variable in class net.hydromatic.morel.ast.Ast.LiteralPat
- value - Variable in class net.hydromatic.morel.type.Binding
- value() - Method in class net.hydromatic.morel.foreign.CalciteForeignValue
- value() - Method in interface net.hydromatic.morel.foreign.ForeignValue
- valueMap() - Method in interface net.hydromatic.morel.eval.EvalEnv
-
Returns a map of the values and bindings.
- valueOf(String) - Static method in enum net.hydromatic.morel.ast.AstBuilder
-
Returns the enum constant of this type with the specified name.
- valueOf(String) - Static method in enum net.hydromatic.morel.ast.Op
-
Returns the enum constant of this type with the specified name.
- valueOf(String) - Static method in enum net.hydromatic.morel.compile.BuiltIn
-
Returns the enum constant of this type with the specified name.
- valueOf(String) - Static method in enum net.hydromatic.morel.type.DummyType
-
Returns the enum constant of this type with the specified name.
- valueOf(String) - Static method in enum net.hydromatic.morel.type.PrimitiveType
-
Returns the enum constant of this type with the specified name.
- values() - Static method in enum net.hydromatic.morel.ast.AstBuilder
-
Returns an array containing the constants of this enum type, in the order they are declared.
- values() - Static method in enum net.hydromatic.morel.ast.Op
-
Returns an array containing the constants of this enum type, in the order they are declared.
- values() - Static method in enum net.hydromatic.morel.compile.BuiltIn
-
Returns an array containing the constants of this enum type, in the order they are declared.
- values() - Static method in enum net.hydromatic.morel.type.DummyType
-
Returns an array containing the constants of this enum type, in the order they are declared.
- values() - Static method in enum net.hydromatic.morel.type.PrimitiveType
-
Returns an array containing the constants of this enum type, in the order they are declared.
- variable() - Method in class net.hydromatic.morel.util.Unifier
-
Creates a new variable, with a new name.
- variable(String) - Method in class net.hydromatic.morel.util.Unifier
-
Creates a variable, or returns an existing one with the same name.
- visit(BiConsumer<String, Object>) - Method in interface net.hydromatic.morel.eval.EvalEnv
-
Visits every variable binding in this environment.
- visit(Consumer<Ast.Pat>) - Method in class net.hydromatic.morel.ast.Ast.Pat
- visit(Ast.Aggregate) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.AnnotatedExp) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.AnnotatedPat) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.Apply) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.Case) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.CompositeType) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.Con0Pat) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.ConPat) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.DatatypeBind) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.DatatypeDecl) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.Fn) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.From) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.FunBind) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.FunctionType) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.FunDecl) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.FunMatch) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.Id) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.IdPat) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.If) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.InfixCall) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.InfixPat) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.LetExp) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.List) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.ListPat) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.Literal) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.LiteralPat) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.Match) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.NamedType) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.PrefixCall) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.Record) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.RecordPat) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.RecordSelector) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.RecordType) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.Tuple) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.TuplePat) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.TupleType) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.TyCon) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.TyVar) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.ValBind) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.ValDecl) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(Ast.WildcardPat) - Method in class net.hydromatic.morel.ast.Shuttle
- visit(ApplyType) - Method in class net.hydromatic.morel.type.TypeVisitor
-
Visits an
ApplyType
. - visit(DataType) - Method in class net.hydromatic.morel.type.TypeVisitor
-
Visits a
DataType
. - visit(FnType) - Method in class net.hydromatic.morel.type.TypeVisitor
-
Visits a
FnType
. - visit(ForallType) - Method in class net.hydromatic.morel.type.TypeVisitor
-
Visits a
ForallType
. - visit(ListType) - Method in class net.hydromatic.morel.type.TypeVisitor
-
Visits a
ListType
. - visit(PrimitiveType) - Method in class net.hydromatic.morel.type.TypeVisitor
-
Visits a
PrimitiveType
. - visit(RecordType) - Method in class net.hydromatic.morel.type.TypeVisitor
-
Visits a
RecordType
. - visit(TupleType) - Method in class net.hydromatic.morel.type.TypeVisitor
-
Visits a
TupleType
. - visit(TypeVar) - Method in class net.hydromatic.morel.type.TypeVisitor
-
Visits a
TypeVar
. - visit(Unifier.Sequence) - Method in interface net.hydromatic.morel.util.Unifier.TermVisitor
- visit(Unifier.Variable) - Method in interface net.hydromatic.morel.util.Unifier.TermVisitor
W
- WILDCARD_PAT - net.hydromatic.morel.ast.Op
- wildcardPat(Pos) - Method in enum net.hydromatic.morel.ast.AstBuilder
Y
- yieldExp - Variable in class net.hydromatic.morel.ast.Ast.From
- yieldExpOrDefault - Variable in class net.hydromatic.morel.ast.Ast.From
-
The expression in the yield clause, or the default yield expression if not specified; never null.
Z
- ZERO - Static variable in class net.hydromatic.morel.ast.Pos
- zip(E[]) - Static method in class net.hydromatic.morel.util.Ord
-
Returns a numbered list based on an array.
- zip(Iterable<? extends E>) - Static method in class net.hydromatic.morel.util.Ord
-
Creates an iterable of
Ord
s over an iterable. - zip(Iterable<? extends K>, Iterable<? extends V>) - Static method in class net.hydromatic.morel.util.Pair
-
Converts two iterables into an iterable of
Pair
s. - zip(Iterator<? extends E>) - Static method in class net.hydromatic.morel.util.Ord
-
Creates an iterator of
Ord
s over an iterator. - zip(List<? extends E>) - Static method in class net.hydromatic.morel.util.Ord
-
Returns a numbered list.
- zip(List<K>, List<V>) - Static method in class net.hydromatic.morel.util.Pair
-
Converts two lists into a list of
Pair
s, whose length is the lesser of the lengths of the source lists. - zip(List<K>, List<V>, boolean) - Static method in class net.hydromatic.morel.util.Pair
-
Converts two lists into a list of
Pair
s. - zip(K[], V[]) - Static method in class net.hydromatic.morel.util.Pair
-
Converts two arrays into a list of
Pair
s. - zipMutable(List<K>, List<V>) - Static method in class net.hydromatic.morel.util.Pair
-
Returns a mutable list of pairs backed by a pair of mutable lists.
All Classes All Packages