|
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Object
|
+--org.quasiliteral.astro.BaseBuilder
|
+--org.quasiliteral.quasiterm.QBuilder
Untamed:
| Field Summary | |
private AstroBuilder |
myBuilder
|
static QBuilder |
term__quasiParser
Enabled: |
| Fields inherited from class org.quasiliteral.astro.BaseBuilder |
|
| Constructor Summary | |
QBuilder(AstroBuilder builder)
Enabled: |
|
| Method Summary | |
Astro |
atHole(Astro litInt)
Enabled: The at-hole that's returned is initially a term-hole, but may get converted to a functor-hole by QAstro.asFunctor(). |
AstroArg |
choice(AstroArg leftArg,
AstroArg rightArg)
Enabled: |
Astro |
composite(AstroTag tag,
Object data,
SourceSpan optSpan)
Enabled: For QTerms, this is non-atomic |
boolean |
doesQuasis()
Enabled: |
Astro |
dollarHole(Astro litInt)
Enabled: The dollar-hole that's returned is initially a term-hole, but may get converted to a functor-hole by QAstro.asFunctor(). |
AstroArg |
group(Object args)
Enabled: |
AstroArg |
interleave(AstroArg leftArg,
AstroArg rightArg)
Enabled: |
protected Astro |
leafInternal(AstroTag tag,
Object optData,
SourceSpan optSpan)
Actually makes the kind of leaf this builder makes. |
Object |
list()
Enabled: |
MatchMaker |
matchMaker(Twine template)
Enabled: |
MatchMaker |
matchMaker(Twine template,
int[] dlrHoles,
int[] atHoles)
Enabled: |
AstroArg |
some(AstroArg optSub,
String quant)
Enabled: |
Astro |
taggedHole(Astro ident,
Astro functorHole)
Enabled: |
Astro |
term(Astro functor)
Enabled: Just returns 'functor' itself. |
Astro |
term(Astro functor,
Object args)
Enabled: Returns the QTerm ' |
ValueMaker |
valueMaker(Twine template)
Enabled: |
ValueMaker |
valueMaker(Twine template,
int[] dlrHoles)
Enabled: |
Object |
with(Object list,
AstroArg next)
Enabled: |
| Methods inherited from class org.quasiliteral.astro.BaseBuilder |
bag, getSchema, leafChar, leafData, leafFloat64, leafInteger, leafLong, leafString, leafTag, leafTwine, list, list, list, list, start, tuple, unpack |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.quasiliteral.astro.AstroBuilder |
bag, getSchema, leafChar, leafData, leafFloat64, leafInteger, leafLong, leafString, leafTag, leafTwine, list, list, list, list, start, tuple, unpack |
| Field Detail |
public static final QBuilder term__quasiParser
private final AstroBuilder myBuilder
| Constructor Detail |
public QBuilder(AstroBuilder builder)
| Method Detail |
public ValueMaker valueMaker(Twine template,
int[] dlrHoles)
valueMaker in interface QuasiExprParserpublic ValueMaker valueMaker(Twine template)
valueMaker in interface QuasiExprParser
public MatchMaker matchMaker(Twine template,
int[] dlrHoles,
int[] atHoles)
matchMaker in interface QuasiPatternParserpublic MatchMaker matchMaker(Twine template)
matchMaker in interface QuasiPatternParser
protected Astro leafInternal(AstroTag tag,
Object optData,
SourceSpan optSpan)
BaseBuilderThis is '*Internal' and 'protected' because it assumes that the general invariants among the arguments are already ensured. It is up to the callers of leafInternal to ensure this.
leafInternal in class BaseBuildertag - Identifies a token type in a particular grammar or set
of related grammars.optData - null, or a Character,
BigInteger, Double,
or Twine presumably calculated from lexing this
token. If not null, then if the tag is the
corresponding literal-type-tag, then this is still a
leaf. Otherwise, it's a composite.
public Astro composite(AstroTag tag,
Object data,
SourceSpan optSpan)
composite in interface AstroBuildercomposite in class BaseBuilderdata - Nust not be null
public Astro term(Astro functor,
Object args)
Note that the QTerm constructor will first convert 'functor' using
QAstro.asFunctor(), so if 'functor' is originally a term-hole,
the functor of the resulting QTerm will be a corresponding
functor-hole.
term in interface AstroBuilderargs - :Argspublic Astro term(Astro functor)
Note that, if 'functor' is a term-hole (one that doesn't constrain the literal term to be zero-arity), then so will the result, since it's the same.
term in interface AstroBuilderterm in class BaseBuilderpublic Object list()
list in interface AstroBuilder
public Object with(Object list,
AstroArg next)
with in interface AstroBuilderlist - :Args
public boolean doesQuasis()
doesQuasis in interface QuasiBuilder
public Astro taggedHole(Astro ident,
Astro functorHole)
taggedHole in interface QuasiBuilder
public AstroArg choice(AstroArg leftArg,
AstroArg rightArg)
choice in interface QuasiBuilder
public AstroArg interleave(AstroArg leftArg,
AstroArg rightArg)
interleave in interface QuasiBuilder
public AstroArg some(AstroArg optSub,
String quant)
some in interface QuasiBuilderpublic AstroArg group(Object args)
group in interface QuasiBuilderargs - is a list of AstroArg.public Astro dollarHole(Astro litInt)
QAstro.asFunctor().
dollarHole in interface QuasiBuilderpublic Astro atHole(Astro litInt)
QAstro.asFunctor().
atHole in interface QuasiBuilder
|
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||