ExceptResolverclass
Exception list resolver. We use this type of resolution for noun phrases in the “but” list of an “all but” construct.
We scope the “all but” list to the objects in the “all” list, since there’s no point in excluding objects that aren’t in the “all” list. In addition, if a phrase in the exclusion list matches more than one object in the “all” list, we consider it a match to all of those objects, even if it’s a definite phrase - this means that items in the “but” list are never ambiguous.
class
ExceptResolver
:
ProxyResolver
Superclass Tree (in declaration order)
ExceptResolver
ProxyResolver
` object`
Subclass Tree
(none)
Global Objects
(none)
Summary of Properties
isSubResolver
mainList
mainListText
origResolver
Summary of Methods
construct
filterAmbiguousEquivalents
filterAmbiguousNounPhrase
filterPluralPhrase
getAll
getQualifierResolver
matchName
objInScope
Inherited from ProxyResolver
:
getPossessiveResolver
propNotDefined
Properties
isSubResolver
we’re a sub-phrase resolver
mainList
the main list from which we’re excluding things
mainListText
the original text for the main list
origResolver
the original underlying resolver
Methods
construct (mainList, mainListText, resolver)
OVERRIDDEN
no description available
filterAmbiguousEquivalents (lst, np)
filter ambiguous equivalents
filterAmbiguousNounPhrase (lst, requiredNum, np)
filter an ambiguous noun list
filterPluralPhrase (lst, np)
filter a plural noun list
getAll (np)
for ‘all’, simply return the whole original list
getQualifierResolver ( )
Resolve qualifiers in the enclosing main scope, since qualifier phrases are not part of the narrowed list - qualifiers apply to the main phrase from which we’re excluding, not to the exclusion list itself.
matchName (obj, origTokens, adjustedTokens)
match an object’s name - we’ll use the disambiguation name resolver, so that they can give us partial names just like in answer to a disambiguation question
objInScope (obj)
determine if an object is in scope - it’s in scope if it’s in the original main list
TADS 3 Library Manual
Generated on 5/16/2013 from TADS version 3.1.3