Lines Matching defs:property
10 #include "src/regexp/property-sequences.h"
1432 bool IsExactPropertyAlias(const char* property_name, UProperty property) {
1433 const char* short_name = u_getPropertyName(property, U_SHORT_PROPERTY_NAME);
1438 property, static_cast<UPropertyNameChoice>(U_LONG_PROPERTY_NAME + i));
1446 UProperty property, int32_t property_value) {
1448 u_getPropertyValueName(property, property_value, U_SHORT_PROPERTY_NAME);
1454 property, property_value,
1462 bool LookupPropertyValueName(UProperty property,
1465 UProperty property_for_lookup = property;
1467 // For the property Script_Extensions, we have to do the property value
1468 // name lookup as if the property is Script.
1475 // We require the property name to match exactly to one of the property value
1484 set.applyIntPropertyValue(property, property_value, ec);
1529 bool IsSupportedBinaryProperty(UProperty property) {
1530 switch (property) {
1592 // https://tc39.github.io/proposal-regexp-unicode-property-escapes/
1596 // property name/value candidate string does not contain '\0' characters and
1611 // Parse the property class as follows:
1613 // - either as a general category property value name.
1614 // - or as a binary property name.
1615 // - In \p{name=value}, 'name' is interpreted as an enumerated property name,
1616 // and 'value' is interpreted as one of the available property value names.
1650 // First attempt to interpret as general category property value name.
1660 // Then attempt to interpret as binary property name with value name 'Y'.
1661 UProperty property = u_getPropertyEnum(name);
1662 if (!IsSupportedBinaryProperty(property)) return false;
1663 if (!IsExactPropertyAlias(name, property)) return false;
1664 return LookupPropertyValueName(property, negate ? "N" : "Y", false, add_to,
1667 // Both property name and value name are specified. Attempt to interpret
1668 // the property name as enumerated property.
1671 UProperty property = u_getPropertyEnum(property_name);
1672 if (!IsExactPropertyAlias(property_name, property)) return false;
1673 if (property == UCHAR_GENERAL_CATEGORY) {
1675 property = UCHAR_GENERAL_CATEGORY_MASK;
1676 } else if (property != UCHAR_SCRIPT &&
1677 property != UCHAR_SCRIPT_EXTENSIONS) {
1680 return LookupPropertyValueName(property, value_name, negate, add_to,