TentativeResolveResultsclassaction.t[3828]

"Tentative" noun resolver results gather. This type of results gatherer is used to perform a tentative pre-resolution of an object of a multi-object action.

Consider what happens when we resolve a two-object action, such as "put <dobj> in <iobj>". Since we have two objects, we obviously must resolve one object or the other first; but this means that we must resolve one object with no knowledge of the resolution of the other object. This often makes it very difficult to resolve that first object intelligently, because we'd really like to know something about the other object. For example, if we first resolve the iobj of "put <dobj> in <iobj>", it would be nice to know which dobj we're talking about, since we could reduce the likelihood that the iobj is the dobj's present container.

Tentative resolution addresses this need by giving us some information about a later-resolved object while resolving an earlier-resolved object, even though we obviously can't have fully resolved the later-resolved object. In tentative resolution, we perform the resolution of the later-resolved object, completely in the dark about the earlier-resolved object(s), and come up with as much information as we can. The important thing about this stage of resolution is that we don't ask any interactive questions and we don't count anything for ranking purposes - we simply do the best we can and note the results, leaving any ranking or interaction for the true resolution phase that we'll perform later.

class TentativeResolveResults :   ResolveResults

Superclass Tree   (in declaration order)

TentativeResolveResults
        ResolveResults
                object

Subclass Tree  

(none)

Global Objects  

(none)

Summary of Properties  

allowActionRemapping  allowEquivalentFiltering  npMissing 

Summary of Methods  

ambiguousNounPhrase  askMissingLiteral  askMissingObject  canResolveInteractively  construct  emptyNounPhrase  incCommandCount  insufficientQuantity  noMatch  noMatchForAll  noMatchForAllBut  noMatchForListBut  noMatchForLocation  noMatchForPossessive  noMatchForPronoun  noMatchPoss  noteActorSpecified  noteAdjEnding  noteBadPrep  noteEmptyBut  noteIndefinite  noteLiteral  noteMatches  noteMiscWordList  noteNounSlots  notePronoun  noteWeakPhrasing  nothingInLocation  noVocabMatch  reflexiveNotAllowed  uniqueObjectRequired  unknownNounPhrase  wrongReflexive  zeroQuantity 

Properties  

allowActionRemappingaction.t[3864]

no description available

allowEquivalentFilteringaction.t[3872]
during the tentative phase, keep all equivalents - we don't want to make any arbitrary choices among equivalents during this phase, because doing so could improperly force a choice among otherwise ambiguous resolutions to the other phrase

npMissingaction.t[3912]
flag: the noun phrase we're resolving is a missing noun phrase, which means that we'll ask for it to be filled in when we get around to resolving it for real

Methods  

ambiguousNounPhrase (keeper, asker, txt, matchList, fullMatchList, scopeList, requiredNum, resolver)action.t[3878]

for ambiguous results, don't attempt to narrow things down - just keep the entire list

askMissingLiteral (action, which)action.t[3902]
no interaction is allowed, so return no tokens if we need to ask for a literal

askMissingObject (asker, resolver, responseProd)action.t[3889]
no interaction is allowed, so return nothing if we need to ask for a missing object

canResolveInteractively ( )action.t[3905]
no interaction is allowed during tentative resolution

construct (target, issuer)action.t[3829]
no description available

emptyNounPhrase (resolver)action.t[3851]
no description available

incCommandCount ( )action.t[3860]
no description available

insufficientQuantity (txt, matchList, requiredNum)action.t[3853]
no description available

noMatch (action, txt)action.t[3835]
ignore most resolution problems, since this is only a tentative resolution pass

noMatchForAll ( )action.t[3838]
no description available

noMatchForAllBut ( )action.t[3840]
no description available

noMatchForListBut ( )action.t[3841]
no description available

noMatchForLocation (loc, txt)action.t[3846]
no description available

noMatchForPossessive (owner, txt)action.t[3845]
no description available

noMatchForPronoun (typ, txt)action.t[3842]
no description available

noMatchPoss (action, txt)action.t[3836]
no description available

noteActorSpecified ( )action.t[3861]
no description available

noteAdjEnding ( )action.t[3855]
no description available

noteBadPrep ( )action.t[3847]
no description available

noteEmptyBut ( )action.t[3839]
no description available

noteIndefinite ( )action.t[3856]
no description available

noteLiteral (txt)action.t[3850]
no description available

noteMatches (matchList)action.t[3859]
no description available

noteMiscWordList (txt)action.t[3857]
no description available

noteNounSlots (cnt)action.t[3862]
no description available

notePronoun ( )action.t[3858]
no description available

noteWeakPhrasing (level)action.t[3863]
no description available

nothingInLocation (loc)action.t[3848]
no description available

noVocabMatch (action, txt)action.t[3837]
no description available

reflexiveNotAllowed (typ, txt)action.t[3843]
no description available

uniqueObjectRequired (txt, matchList)action.t[3854]
no description available

unknownNounPhrase (match, resolver)action.t[3849]
no description available

wrongReflexive (typ, txt)action.t[3844]
no description available

zeroQuantity (txt)action.t[3852]
no description available

TADS 3 Library Manual
Generated on 5/16/2013 from TADS version 3.1.3