3 * Automatically generated by running "php schema.php icu_uspoof".
5 * You may modify the file, but re-running schema.php against this file will
6 * standardize the format without losing your schema changes. It does lose
7 * any changes that are not part of schema. Use "note" field to comment on
8 * schema itself, and "note" fields are not used in any code generation but
9 * only staying within this file.
13 ///////////////////////////////////////////////////////////////////////////////
14 // Preamble: C++ code inserted at beginning of ext_{name}.h
18 // Avoid dragging in the icu namespace.
19 #ifndef U_USING_ICU_NAMESPACE
20 #define U_USING_ICU_NAMESPACE 0
23 #include "unicode/uspoof.h"
24 #include "unicode/utypes.h"
28 ///////////////////////////////////////////////////////////////////////////////
32 // 'name' => name of the constant
33 // 'type' => type of the constant
34 // 'note' => additional note about this constant's schema
38 ///////////////////////////////////////////////////////////////////////////////
42 // 'name' => name of the function
43 // 'desc' => description of the function's purpose
44 // 'flags' => attributes of the function, see base.php for possible values
45 // 'opt' => optimization callback function's name for compiler
46 // 'note' => additional note about this function's schema
49 // 'type' => return type, use Reference for ref return
50 // 'desc' => description of the return value
52 // 'args' => arguments
54 // 'name' => name of the argument
55 // 'type' => type of the argument, use Reference for output parameter
56 // 'value' => default value of the argument
57 // 'desc' => description of the argument
59 // 'taint_observer' => taint propagation information
61 // 'set_mask' => which bits to set automatically
62 // 'clear_mask' => which bits to clear automatically
67 ///////////////////////////////////////////////////////////////////////////////
72 // 'name' => name of the class
73 // 'desc' => description of the class's purpose
74 // 'flags' => attributes of the class, see base.php for possible values
75 // 'note' => additional note about this class's schema
76 // 'parent' => parent class name, if any
77 // 'ifaces' => array of interfaces tihs class implements
78 // 'bases' => extra internal and special base classes this class requires
79 // 'footer' => extra C++ inserted at end of class declaration
92 // 'name' => name of the property
93 // 'type' => type of the property
94 // 'flags' => attributes of the property
95 // 'desc' => description of the property
96 // 'note' => additional note about this property's schema
101 ///////////////////////////////////////////////////////////////////////////////
105 'name' => "SpoofChecker",
106 'desc' => "Unicode Security and Spoofing Detection (see http://icu-project.org/apiref/icu4c/uspoof_8h.html for details)",
107 'flags' => HasDocComment
,
110 private: USpoofChecker *m_spoof_checker;
117 'name' => "SINGLE_SCRIPT_CONFUSABLE",
123 'name' => "MIXED_SCRIPT_CONFUSABLE",
129 'name' => "WHOLE_SCRIPT_CONFUSABLE",
135 'name' => "ANY_CASE",
141 'name' => "SINGLE_SCRIPT",
147 'name' => "INVISIBLE",
153 'name' => "CHAR_LIMIT",
159 'name' => "__construct",
160 'desc' => "Creates a spoof checker that checks for visually confusing characters in a string. By default, runs the following tests: SINGLE_SCRIPT_CONFUSABLE, MIXED_SCRIPT_CONFUSABLE, WHOLE_SCRIPT_CONFUSABLE, ANY_CASE, INVISIBLE.",
161 'flags' => HasDocComment
,
169 'name' => "isSuspicious",
170 'desc' => "Check the specified UTF-8 string for possible security or spoofing issues.",
171 'flags' => HasDocComment
,
174 'desc' => "Returns TRUE if the string has possible security or spoofing issues, FALSE otherwise.",
180 'desc' => "A UTF-8 string to be checked for possible security issues.",
183 'name' => "issuesFound",
184 'type' => Variant | Reference
,
186 'desc' => "If passed, this will hold an integer value with bits set for any potential security or spoofing issues detected. Zero is returned if no issues are found with the input string.",
193 'name' => "areConfusable",
194 'desc' => "Check the whether two specified UTF-8 strings are visually confusable. The types of confusability to be tested - single script, mixed script, or whole script - are determined by the check options set for this instance.",
195 'flags' => HasDocComment
,
198 'desc' => "Returns TRUE if the two strings are confusable, FALSE otherwise.",
204 'desc' => "The first of the two UTF-8 strings to be compared for confusability.",
209 'desc' => "The second of the two UTF-8 strings to be compared for confusability.",
212 'name' => "issuesFound",
213 'type' => Variant | Reference
,
215 'desc' => "If passed, this will hold an integer value with bit(s) set corresponding to the type of confusability found, as defined by the constant values stored in this class. Zero is returned if the strings are not confusable.",
222 'name' => "setAllowedLocales",
223 'desc' => "Limit characters that are acceptable in identifiers being checked to those normally used with the languages associated with the specified locales.",
224 'flags' => HasDocComment
,
230 'name' => "localesList",
232 'desc' => "A list of locales, from which the language and associated script are extracted. The locales are comma-separated if there is more than one. White space may not appear within an individual locale, but is ignored otherwise. The locales are syntactically like those from the HTTP Accept-Language header. If the localesList is empty, no restrictions will be placed on the allowed characters."
239 'name' => "setChecks",
240 'desc' => "Specify the set of checks that will be performed by the check function",
241 'flags' => HasDocComment
,
249 'desc' => "The set of checks that this spoof checker will perform. The value is a bit set, obtained by OR-ing together the constant values in this class.",