Productionclass | parser.t[3326] |
Superclass Tree | Subclass Tree | Global Objects | Property Summary | Method Summary | Property Details | Method Details |
The language module's grammar rules can define certain special properties on any production match object, and we'll find them in the course of building the command from the match tree:
endOfSentence=true - define this on a production for a sentence-ending verb conjunction. In English (and most Western languages), this can be used with rules that match punctuation marks like periods, exclamation points, and question marks, since these marks typically end a sentence. The parser distinguishes between the grammar rules for the first clause in a sentence vs subsequent clauses. It starts a new input line with the first-in-sentence rule, then uses the additional clause rule for each subsequent clause. When a clause ends with a sentence-ending mark, though, we'll treat the next clause as a sentence opener again.
class
Production : object
Production
actorBadCommandPhrase(main)
atSingleNoun(main)
BadListProduction
singleNoun(multiple)
commandOnlyConjunction(nonSentenceEnding)
commandOnlyConjunction(sentenceEnding)
commandOrNounConjunction(main)
CommandProduction
commandPhrase(ambiguousConj)
commandPhrase(definiteConj)
defaultCommandPhrase(examine)
firstCommandPhrase(askTellActorTo)
firstCommandPhrase(commandOnly)
firstCommandPhrase(withActor)
completeNounPhrase(main)
completeNounPhrase(miscPrep)
completeNounPhraseWithAll(main)
completeNounPhraseWithoutAll(main)
compoundNounArticle(main)
compoundNounPhrase(of)
compoundNounPhrase(simple)
compoundNounPrep(main)
compoundPluralPhrase(of)
compoundPluralPhrase(simple)
contentsPrep(main)
contentsPrepOrVerb(main)
ContentsQualifierProduction
nounPhraseWithContents(contents)
pluralPhraseWithContents(contents)
qualifiedPluralNounPhrase(theOnesContaining)
qualifiedSingularNounPhrase(theOneContaining)
CoreNounPhraseProduction
nounPhrase(main)
pluralPhrase(main)
detPluralNounPhrase(main)
detPluralOnlyNounPhrase(main)
directionName(root)
disambigListItem(noun)
disambigListItem(plural)
disambigListItem(possessive)
disambigPhrase(all)
disambigPhrase(any)
disambigPhrase(list)
disambigPhrase(ordinalList)
DisambigProduction
mainDisambigPhrase(main)
EmptyNounProduction
literalPhrase(empty)
nounList(empty)
simpleNounPhrase(empty)
simplePluralPhrase(empty)
singleNoun(empty)
exceptListBody(single)
ExceptListProduction
exceptList(main)
exceptNounPhrase(singleComplete)
exceptNounPhrase(singlePossessive)
explicitDetPluralNounPhrase(definite)
explicitDetPluralNounPhrase(possessive)
explicitDetPluralOnlyNounPhrase(definite)
explicitDetPluralOnlyNounPhrase(possessive)
forSingleNoun(main)
fromSingleNoun(main)
implicitDetPluralOnlyNounPhrase(main)
indetPluralNounPhrase(basic)
indetPluralOnlyNounPhrase(basic)
indetSingularNounPhrase(basic)
inSingleNoun(main)
literalNounPhrase(number)
literalNounPhrase(string)
LiteralNounProduction
literalPhrase(miscList)
literalPhrase(string)
LocationalProduction
disambigPhrase(locational)
indetPluralNounPhrase(locational)
indetPluralOnlyNounPhrase(locational)
indetSingularNounPhrase(locational)
qualifiedPluralNounPhrase(theOnesIn)
qualifiedSingularNounPhrase(anyOneIn)
qualifiedSingularNounPhrase(theOneIn)
LocationPrepProduction
locationPrep(from)
locationPrep(in)
locationPrep(on)
MiscWordListProduction
miscWordList(list)
miscWordList(wordOrNumber)
nounConjunction(main)
nounList(list)
nounList(nonTerminal)
nounList(terminal)
NounListProduction
disambigList(list)
disambigOrdinalList(head)
disambigOrdinalList(tail)
exceptListBody(list)
nonTerminalNounMultiList(multi)
nonTerminalNounMultiList(pair)
nounMultiList(multi)
nounMultiList(nonterminal)
nounPhraseWithContents(basic)
nounWord(noun)
nounWord(nounAbbr)
nounWord(nounApostS)
NumberNounProduction
numberObjPhrase(main)
numberPhrase(digits)
numberPhrase(spelled)
poundNumberPhrase(main)
onSingleNoun(main)
oopsCommand(main)
OopsProduction
oopsPhrase(main)
OrdinalProduction
disambigListItem(ordinal)
disambigOrdinalItem(main)
outOfSingleNoun(main)
pluralPhraseWithContents(basic)
PossessiveProduction
possessiveAdjPhrase(definiteNpApostropheS)
possessiveAdjPhrase(her)
possessiveAdjPhrase(his)
possessiveAdjPhrase(indefiniteNpApostropheS)
possessiveAdjPhrase(its)
possessiveAdjPhrase(my)
possessiveAdjPhrase(npApostropheS)
possessiveAdjPhrase(their)
possessiveAdjPhrase(your)
possessiveNounPhrase(hers)
possessiveNounPhrase(his)
possessiveNounPhrase(its)
possessiveNounPhrase(mine)
possessiveNounPhrase(npApostropheS)
possessiveNounPhrase(theirs)
possessiveNounPhrase(yours)
PronounProduction
pronounPhrase(her)
pronounPhrase(herself)
pronounPhrase(him)
pronounPhrase(himself)
pronounPhrase(it)
pronounPhrase(itself)
pronounPhrase(me)
pronounPhrase(them)
pronounPhrase(themselves)
pronounPhrase(us)
pronounPhrase(you)
putPrep(main)
putPrepSingleNoun(main)
qualifiedNounPhrase(main)
qualifiedPluralNounPhrase(all)
qualifiedPluralNounPhrase(determiner)
qualifiedSingularNounPhrase(anyPlural)
qualifiedSingularNounPhrase(arbitrary)
qualifiedSingularNounPhrase(definite)
qualifiedSingularNounPhrase(indefinite)
qualifiedSingularNounPhrase(possessive)
QuantifierProduction
disambigPhrase(both)
explicitDetPluralNounPhrase(definiteNumber)
explicitDetPluralNounPhrase(possessiveNumber)
explicitDetPluralNounPhrase(possessiveNumber2)
explicitDetPluralOnlyNounPhrase(definiteNumber)
explicitDetPluralOnlyNounPhrase(possessiveNumber)
explicitDetPluralOnlyNounPhrase(possessiveNumber2)
qualifiedPluralNounPhrase(allNum)
qualifiedPluralNounPhrase(anyNum)
qualifiedPluralNounPhrase(both)
qualifiedPluralNounPhrase(definiteNum)
quotedStringPhrase(main)
simpleNounPhrase(adjAndOne)
simpleNounPhrase(adjAndOnes)
simpleNounPhrase(list)
simpleNounPhrase(literal)
simpleNounPhrase(literalAndList)
simpleNounPhrase(misc)
simpleNounPhrase(noun)
simplePluralPhrase(adjAndOnes)
simplePluralPhrase(misc)
simplePluralPhrase(plural)
singleNoun(normal)
singleNounOnly(main)
spelledHundred(aHundred)
spelledHundred(aHundredPlus)
spelledHundred(hundreds)
spelledHundred(hundredsPlus)
spelledHundred(small)
spelledMillion(aMillion)
spelledMillion(aMillionAndSmall)
spelledMillion(millions)
spelledMillion(millionsAndSmall)
spelledMillion(millionsPlus)
spelledNumber(main)
spelledSmallNumber(digit)
spelledSmallNumber(teen)
spelledSmallNumber(tens)
spelledSmallNumber(tensAndUnits)
spelledSmallNumber(zero)
spelledThousand(aThousand)
spelledThousand(aThousandAndSmall)
spelledThousand(thousands)
spelledThousand(thousandsAndSmall)
spelledThousand(thousandsPlus)
terminalNounPhrase(allBut)
terminalNounPhrase(anyBut)
terminalNounPhrase(pluralExcept)
throughSingleNoun(main)
TopicNounProduction
aboutTopicPhrase(main)
topicPhrase(main)
topicPhrase(misc)
toSingleNoun(main)
VerbProduction
defaultVerbPhrase(noun)
EnTravelVia
VerbRule(About)
VerbRule(Again)
VerbRule(AskAbout)
VerbRule(AskAboutImplicit)
VerbRule(AskAboutWhat)
VerbRule(AskFor)
VerbRule(AskForImplicit)
VerbRule(AskVague)
VerbRule(AskWhomFor)
VerbRule(Attach)
VerbRule(AttachTo)
VerbRule(Attack)
VerbRule(AttackWith)
VerbRule(AuxQuery)
VerbRule(Board)
VerbRule(Break)
VerbRule(Brief)
VerbRule(Burn)
VerbRule(BurnWith)
VerbRule(Clean)
VerbRule(CleanWith)
VerbRule(Climb)
VerbRule(ClimbDown)
VerbRule(ClimbDownWhat)
VerbRule(ClimbUp)
VerbRule(ClimbUpWhat)
VerbRule(Close)
VerbRule(CmdMenu)
VerbRule(ConsultAbout)
VerbRule(ConsultWhatAbout)
VerbRule(Continue)
VerbRule(Credits)
VerbRule(Cut)
VerbRule(CutWith)
VerbRule(Debug)
VerbRule(DebugI)
VerbRule(Detach)
VerbRule(DetachFrom)
VerbRule(Dig)
VerbRule(DigWith)
VerbRule(Doff)
VerbRule(Drink)
VerbRule(Drop)
VerbRule(Eat)
VerbRule(Enter)
VerbRule(EnterOn)
VerbRule(Evaluate)
VerbRule(Examine)
VerbRule(Exits)
VerbRule(ExitsColour)
VerbRule(ExitsMode)
VerbRule(Extinguish)
VerbRule(ExtraHints)
VerbRule(FactInfo)
VerbRule(Fasten)
VerbRule(FastenTo)
VerbRule(Feel)
VerbRule(FiatLux)
VerbRule(Flip)
VerbRule(Follow)
VerbRule(Footnote)
VerbRule(FootnotesFull)
VerbRule(FootnotesMedium)
VerbRule(FootnotesOff)
VerbRule(FootnotesStatus)
VerbRule(FullScore)
VerbRule(GetOff)
VerbRule(GetOut)
VerbRule(GetOutOf)
VerbRule(GiveTo)
VerbRule(GiveToImplicit)
VerbRule(GiveToType2)
VerbRule(GoAlong)
VerbRule(GoBack)
VerbRule(GoNear)
VerbRule(Goodbye)
VerbRule(GoSomewhere)
VerbRule(GoThrough)
VerbRule(GoTo)
VerbRule(Hello)
VerbRule(Help)
VerbRule(Hints)
VerbRule(HintsOff)
VerbRule(In)
VerbRule(instructions)
VerbRule(Intro)
VerbRule(Inventory)
VerbRule(InventoryTall)
VerbRule(InventoryWide)
VerbRule(Jump)
VerbRule(JumpOff)
VerbRule(JumpOffIntransitive)
VerbRule(JumpOver)
VerbRule(KeepGoing)
VerbRule(Kiss)
VerbRule(Lie)
VerbRule(LieIn)
VerbRule(LieOn)
VerbRule(Light)
VerbRule(Listen)
VerbRule(ListenTo)
VerbRule(ListFacts)
VerbRule(ListRelations)
VerbRule(ListTests)
VerbRule(Lock)
VerbRule(LockWith)
VerbRule(Look)
VerbRule(LookBehind)
VerbRule(LookHere)
VerbRule(LookIn)
VerbRule(LookThrough)
VerbRule(LookUnder)
VerbRule(LookUp)
VerbRule(LookX)
VerbRule(Move)
VerbRule(MoveTo)
VerbRule(MoveWith)
VerbRule(No)
VerbRule(Notify)
VerbRule(NotifyOff)
VerbRule(NotifyOn)
VerbRule(Open)
VerbRule(Out)
VerbRule(PlugIn)
VerbRule(PlugInto)
VerbRule(PlugIntoWhat)
VerbRule(Pour)
VerbRule(PourInto)
VerbRule(PourOnto)
VerbRule(Pull)
VerbRule(Purloin)
VerbRule(Push)
VerbRule(PushTravelClimbDown)
VerbRule(PushTravelClimbUp)
VerbRule(PushTravelDir)
VerbRule(PushTravelEnter)
VerbRule(PushTravelGetOutOf)
VerbRule(PushTravelThrough)
VerbRule(PutBehind)
VerbRule(PutIn)
VerbRule(PutOn)
VerbRule(PutUnder)
VerbRule(PutWhere)
VerbRule(Query)
VerbRule(Query2)
VerbRule(QueryAbout)
VerbRule(QueryVague)
VerbRule(Quit)
VerbRule(Read)
VerbRule(Record)
VerbRule(RecordEvents)
VerbRule(RecordEventsString)
VerbRule(RecordOff)
VerbRule(RecordString)
VerbRule(RelationDetails)
VerbRule(Remove)
VerbRule(ReplayQuiet)
VerbRule(ReplayString)
VerbRule(Restart)
VerbRule(Restore)
VerbRule(RestoreString)
VerbRule(Sample)
VerbRule(Save)
VerbRule(SaveString)
VerbRule(Say)
VerbRule(SayTo)
VerbRule(Score)
VerbRule(Screw)
VerbRule(ScrewWith)
VerbRule(ScriptOff)
VerbRule(ScriptOn)
VerbRule(ScriptString)
VerbRule(Search)
VerbRule(Seek)
VerbRule(Set)
VerbRule(SetTo)
VerbRule(ShowTo)
VerbRule(ShowToImplicit)
VerbRule(ShowToType2)
VerbRule(Sit)
VerbRule(SitIn)
VerbRule(SitOn)
VerbRule(Sleep)
VerbRule(Smell)
VerbRule(SmellSomething)
VerbRule(Stand)
VerbRule(StandIn)
VerbRule(StandOn)
VerbRule(Strike)
VerbRule(Switch)
VerbRule(SwitchOff)
VerbRule(SwitchOn)
VerbRule(Take)
VerbRule(TakeFrom)
VerbRule(TalkAbout)
VerbRule(TalkAboutImplicit)
VerbRule(TalkTo)
VerbRule(Taste)
VerbRule(TellAbout)
VerbRule(TellAboutImplicit)
VerbRule(TellAboutWhat)
VerbRule(TellThat)
VerbRule(TellTo)
VerbRule(TellVague)
VerbRule(Test)
VerbRule(Think)
VerbRule(ThinkAbout)
VerbRule(Throw)
VerbRule(ThrowAt)
VerbRule(ThrowDir)
VerbRule(ThrowDirDown)
VerbRule(ThrowTo)
VerbRule(ThrowToType2)
VerbRule(ToggleDiaambigEnum)
VerbRule(Topics)
VerbRule(Travel)
VerbRule(Turn)
VerbRule(TurnTo)
VerbRule(TurnWith)
VerbRule(TypeLiteralOn)
VerbRule(TypeLiteralOnWhat)
VerbRule(TypeOn)
VerbRule(Undo)
VerbRule(Unfasten)
VerbRule(UnfastenFrom)
VerbRule(Unlock)
VerbRule(UnlockWith)
VerbRule(Unplug)
VerbRule(UnplugFrom)
VerbRule(Unscrew)
VerbRule(UnscrewWith)
VerbRule(VagueTravel)
VerbRule(Verbose)
VerbRule(Version)
VerbRule(Wait)
VerbRule(Wear)
VerbRule(WhatAmICarrying)
VerbRule(WhatIsNoun)
VerbRule(WhatNext)
VerbRule(WhatsHere)
VerbRule(WhatsThePoint)
VerbRule(WhatThisGame)
VerbRule(WhereAmI)
VerbRule(WhereGo)
VerbRule(WhereHelp)
VerbRule(WhoAmI)
VerbRule(Write)
VerbRule(WriteOn)
VerbRule(Yell)
VerbRule(Yes)
withSingleNoun(main)
YesOrNoProduction
yesOrNoPhrase(no)
yesOrNoPhrase(yes)
determiner
nounPhraseRole
npClass
parent
addNounListItem
build
findAction
findChild
findParent
getNounPhraseRole
getText
getTokens
grammarInfoForBuild
isChildOf
noteEndOfSentence
visitLiteral
visitProd
determiner | parser.t[3511] |
nounPhraseRole | parser.t[3470] |
In a positional language grammar, the predicate production will mark its immediate child in each noun phrase slot by setting this according to the role that the sub-tree plays in the predicate grammar. Non-positional languages that use grammatical case or other ways of encoding the role information must set this some other way.
npClass | parser.t[3456] |
Special phrase types (topics, literals, and numbers) have their own NounPhrase subclasses. This is important because the resolution rules for these phrase types differ from the regular object resolution rules.
parent | parser.t[3526] |
addNounListItem (cmd, prod) | parser.t[3428] |
Our default handling is to first check our nounPhraseRole property; if it's set, it tells us the role that this sub-tree plays in the predicate (direct object, indirect object, accessory). We use that information to add the new NounPhrase to the Command list that we're building for our assigned role.
If nounPhraseRole is nil, then we simply pass the request up to our parent. Eventually we should reach a node encoding the function slot.
build (cmd, np) | parser.t[3353] |
findAction ( ) | parser.t[3562] |
findChild (cls) | parser.t[3574] |
findParent (func) | parser.t[3533] |
getNounPhraseRole ( ) | parser.t[3476] |
getText ( ) | parser.t[3328] |
getTokens ( ) | parser.t[3339] |
grammarInfoForBuild ( ) | parser.t[3403] |
isChildOf (prod) | parser.t[3544] |
noteEndOfSentence (cmd, prod) | parser.t[3440] |
visitLiteral (cmd, np, tok) | parser.t[3487] |
visitProd (cmd, np, prod) | parser.t[3499] |