StringComparator intrinsic class. This class provides support for dictionaries based on complex string matches, including truncation (matching an input word to a dictionary word when the input word is at least some minimum length, and matches the dictionary word up to the full length of the input word, but the input word is shorter than the dictionary word); case folding (matching upper-case letters to lower-case letters and vice versa); and character equivalences (for matching accented characters to non-accented equivalents, or matching special characters to multi-character equivalents, such as matching a German "ess-zet" ("sharp-s") ligature to a pair of lower-case "s" characters in input).

intrinsic class StringComparator :   Object

Superclass Tree   (in declaration order)


Subclass Tree  


Global Objects  


Summary of Properties  


Summary of Methods  

calcHash  matchValues 

Inherited from Object :
getPropList  getPropParams  getSuperclassList  isClass  isTransient  ofKind  propDefined  propInherited  propType  valToSymbol 




calcHash (str)strcomp.h[82]

Calculate a hash value. This returns an integer giving the hash value for the given string.

matchValues (inputStr, dictStr)strcomp.h[100]
Match two values. The first value is the input string, and the second is the dictionary string. Each character in the dictionary string can match the corresponding input string character exactly (with or without case sensitivity, as specified in our constructor), or can match the equivalence mapping sequence for the dictionary character.

The return value is zero if the values do not match. If the values do match, the return value is a non-zero integer, which will be a bitwise OR combination of all of the flag values applicable to the match. This is a combination of pre-defined flag values (see below) and any flag values from equivalence mappings. The flag values from ALL equivalence mappings that were actually used to make the match are included.

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