Package kawa.lang
Class BindDecls
- java.lang.Object
-
- kawa.lang.BindDecls
-
public class BindDecls extends Object
Methods for parsing patterns.
-
-
Field Summary
Fields Modifier and Type Field Description boolean
allowShadowing
Type
booleanType
Procedure
compareEquals
Object
ifKeyword
static BindDecls
instance
boolean
makeConstant
-
Constructor Summary
Constructors Constructor Description BindDecls()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Expression
compareLiteral(Declaration param, QuoteExp literal)
Declaration
define(Symbol name, TemplateScope templateScope, ScopeExp scope, Translator comp)
QuoteExp
literalPattern(Object patval, Translator comp)
void
parseBracketListPattern(Pair patpair, int scanNesting, ScopeExp scope, Declaration decl, Translator comp)
Handle patterns of the form[pat1 ... patN]
.Object[]
parsePatternCar(Pair patList, int scanNesting, ScopeExp scope, Translator comp)
Parse a declaration or more generally a pattern.Object[]
parsePatternCar(Pair patList, Expression init, TemplateScope templateScope, int scanNesting, ScopeExp scope, Translator comp)
Object
parsePatternNext(Pair patList, Translator comp)
static void
setInitializer(Declaration decl, Expression init, ScopeExp scope, Translator comp)
-
-
-
Method Detail
-
define
public Declaration define(Symbol name, TemplateScope templateScope, ScopeExp scope, Translator comp)
-
parsePatternNext
public Object parsePatternNext(Pair patList, Translator comp)
-
parsePatternCar
public Object[] parsePatternCar(Pair patList, int scanNesting, ScopeExp scope, Translator comp)
Parse a declaration or more generally a pattern. The actual pattern is an initial sublist (using just the initial car) of the patList.- Returns:
- A 2-element array, where element 0 is the unused remainder of patList, while element 1 is a Declaration for that pattern.
-
parsePatternCar
public Object[] parsePatternCar(Pair patList, Expression init, TemplateScope templateScope, int scanNesting, ScopeExp scope, Translator comp)
-
parseBracketListPattern
public void parseBracketListPattern(Pair patpair, int scanNesting, ScopeExp scope, Declaration decl, Translator comp)
Handle patterns of the form[pat1 ... patN]
.
-
setInitializer
public static void setInitializer(Declaration decl, Expression init, ScopeExp scope, Translator comp)
-
literalPattern
public QuoteExp literalPattern(Object patval, Translator comp)
-
compareLiteral
public Expression compareLiteral(Declaration param, QuoteExp literal)
-
-