DisambigResolverclassdisambig.t[343], en_us.t[3435]

Disambiguation Resolver. This is a special resolver that we use for resolving disambiguation responses.

Modified in en_us.t[3435]:
Custom disambiguation resolver.

class DisambigResolver :   InteractiveResolver

Superclass Tree   (in declaration order)


Subclass Tree  


Global Objects  


Summary of Properties  

allowAll  distinguisher  fullMatchList  matchList  matchText  ordinalMatchList 

Summary of Methods  

construct  filterAmbiguousNounPhrase  filterPluralPhrase  getAll  getQualifierResolver  matchName  objInScope  resolvePronounAntecedent  selectIndefinite 

Inherited from InteractiveResolver :
getReflexiveBinding  resolvePronounAsTargetActor 

Inherited from ProxyResolver :
getPossessiveResolver  propNotDefined 



we allow ALL in interactive disambiguation responses, regardless of the verb, because we're just selecting from the list presented in the prompt in these cases

The distinguisher that was used to generate the prompt. Some distinguishers can tell objects apart by other characteristics than just their names, so when parsing we want to be able to give the distinguisher a look at the input to see if the player is referring to one of the distinguishing characteristics rather than the object's own name.

the full original match list, which might include items in scope beyond those offered as interactive choices

the original match list we are disambiguating, which includes all of the objects offered as interactive choices, and might include indistinguishable equivalents of offered items

the text of the phrase we're disambiguating

The "ordinal" match list: this includes the exact list offered as interactive choices in the same order as they were shown in the prompt. This list can be used to correlate ordinal responses to the prompt list, since it contains exactly the items listed in the prompt. Note that this list will only contain one of each indistinguishable object.


construct (matchText, ordinalMatchList, matchList, fullMatchList, resolver, dist)OVERRIDDENdisambig.t[344]

no description available

filterAmbiguousNounPhrase (lst, requiredNum, np)disambig.t[395]
filter an ambiguous noun list

filterPluralPhrase (lst, np)disambig.t[406]
filter a plural noun list

getAll (np)disambig.t[392]
for 'all', use the full current full match list

getQualifierResolver ( )disambig.t[373]
Resolve qualifiers in the enclosing main scope, since qualifier phrases in responses are not part of the narrowed list being disambiguated.

matchName (obj, origTokens, adjustedTokens)disambig.t[362]
Match an object's name. We'll send this to the distinguisher for handling.

objInScope (obj)disambig.t[379]
Determine if an object is in scope. We pass this to the distinguisher to decide.

resolvePronounAntecedent (typ, np, results, poss)OVERRIDDENen_us.t[3444]
Perform special resolution on pronouns used in interactive responses. If the pronoun is HIM or HER, then look through the list of possible matches for a matching gendered object, and use it as the result if we find one. If we find more than one, then use the default handling instead, treating the pronoun as referring back to the simple antecedent previously set.

selectIndefinite (results, lst, requiredNumber)disambig.t[422]
Select the match for an indefinite noun phrase. In interactive disambiguation, an indefinite noun phrase simply narrows the list, rather than selecting any match, so treat this as still ambiguous.

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