Package net.hydromatic.morel.ast
Class Core.Id
- java.lang.Object
-
- net.hydromatic.morel.ast.AstNode
-
- net.hydromatic.morel.ast.Core.BaseNode
-
- net.hydromatic.morel.ast.Core.Exp
-
- net.hydromatic.morel.ast.Core.Id
-
- All Implemented Interfaces:
Comparable<Core.Id>
- Enclosing class:
- Core
public static class Core.Id extends Core.Exp implements Comparable<Core.Id>
Reference to a variable.While
Ast.Idis widely used, and means an occurrence of a name in the parse tree,Idis much narrower: it means a reference to a value. What would be anIdin Ast is often aStringin Core; for example, compareAst.Con0Pat.tyConwithCore.Con0Pat.tyCon.
-
-
Constructor Summary
Constructors Constructor Description Id(Core.NamedPat idPat)Creates an Id.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Core.Expaccept(Shuttle shuttle)Accepts a shuttle, calling theShuttle.visit(net.hydromatic.morel.ast.Ast.Literal)method appropriate to the type of this node, and returning the result.voidaccept(Visitor visitor)Accepts a visitor, calling theShuttle.visit(net.hydromatic.morel.ast.Ast.Literal)method appropriate to the type of this node, and returning the result.intcompareTo(Core.Id o)booleanequals(Object o)inthashCode()(package private) AstWriterunparse(AstWriter w, int left, int right)-
Methods inherited from class net.hydromatic.morel.ast.Core.Exp
forEachArg, type
-
-
-
-
Field Detail
-
idPat
public final Core.NamedPat idPat
-
-
Constructor Detail
-
Id
Id(Core.NamedPat idPat)
Creates an Id.
-
-
Method Detail
-
compareTo
public int compareTo(Core.Id o)
- Specified by:
compareToin interfaceComparable<Core.Id>
-
accept
public Core.Exp accept(Shuttle shuttle)
Description copied from class:AstNodeAccepts a shuttle, calling theShuttle.visit(net.hydromatic.morel.ast.Ast.Literal)method appropriate to the type of this node, and returning the result.
-
accept
public void accept(Visitor visitor)
Description copied from class:AstNodeAccepts a visitor, calling theShuttle.visit(net.hydromatic.morel.ast.Ast.Literal)method appropriate to the type of this node, and returning the result.- Overrides:
acceptin classCore.BaseNode
-
-