TWindowsMaskUTF8.Compile procedure
Examines and converts the mask expression into a list of op codes.
Declaration
procedure Compile; overrideDescription
Compile is an overridden method used to examine and convert values from the Mask property into TMaskParsedCode values for the positions in the mask expression. It provides support for Windows-specific quirks that enabled in the class instance using the Quirks property.
CaseSensitive indicates if case is significant for the value in Mask. Mask is converted to lowercase prior to processing in the method when CaseSensitive is set to False.
Compile examines each of the UTF-8 codepoints in Mask, and adds TMaskParsedCode values when the specific mask op codes are included in the MaskOpCodes property. The value in Mask is decomposed into file name and extension component values that are used in the method. These temporary values may be altered when particular quirks are enabled and encountered in the Mask expression. The modified values are applied to the Mask property prior to calling the inherited Compile method.
Compile may raise an exception when an invalid or incomplete mask is encountered. The Compile method is called again with the same value in Mask, is simply returns False rather than re-raise the exception.
Compile is called from the Matches method when it has not already been compiled.
See also
An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
