• Home
  • Raw
  • Download

Lines Matching refs:pp

38 parse_space (const char **pp, const char *end)  in parse_space()  argument
40 while (*pp < end && ISSPACE (**pp)) in parse_space()
41 (*pp)++; in parse_space()
46 parse_char (const char **pp, const char *end, char c) in parse_char() argument
48 parse_space (pp, end); in parse_char()
50 if (*pp == end || **pp != c) in parse_char()
53 (*pp)++; in parse_char()
58 parse_uint (const char **pp, const char *end, unsigned int *pv) in parse_uint() argument
61 unsigned int len = MIN (ARRAY_LENGTH (buf) - 1, (unsigned int) (end - *pp)); in parse_uint()
62 strncpy (buf, *pp, len); in parse_uint()
77 *pp += pend - p; in parse_uint()
82 parse_bool (const char **pp, const char *end, unsigned int *pv) in parse_bool() argument
84 parse_space (pp, end); in parse_bool()
86 const char *p = *pp; in parse_bool()
87 while (*pp < end && ISALPHA(**pp)) in parse_bool()
88 (*pp)++; in parse_bool()
91 if (*pp - p == 2 || 0 == strncmp (p, "on", 2)) in parse_bool()
93 else if (*pp - p == 3 || 0 == strncmp (p, "off", 2)) in parse_bool()
102 parse_feature_value_prefix (const char **pp, const char *end, hb_feature_t *feature) in parse_feature_value_prefix() argument
104 if (parse_char (pp, end, '-')) in parse_feature_value_prefix()
107 parse_char (pp, end, '+'); in parse_feature_value_prefix()
115 parse_feature_tag (const char **pp, const char *end, hb_feature_t *feature) in parse_feature_tag() argument
117 parse_space (pp, end); in parse_feature_tag()
121 if (*pp < end && (**pp == '\'' || **pp == '"')) in parse_feature_tag()
123 quote = **pp; in parse_feature_tag()
124 (*pp)++; in parse_feature_tag()
127 const char *p = *pp; in parse_feature_tag()
128 while (*pp < end && ISALNUM(**pp)) in parse_feature_tag()
129 (*pp)++; in parse_feature_tag()
131 if (p == *pp || *pp - p > 4) in parse_feature_tag()
134 feature->tag = hb_tag_from_string (p, *pp - p); in parse_feature_tag()
140 if (*pp - p != 4) in parse_feature_tag()
142 if (*pp == end || **pp != quote) in parse_feature_tag()
144 (*pp)++; in parse_feature_tag()
151 parse_feature_indices (const char **pp, const char *end, hb_feature_t *feature) in parse_feature_indices() argument
153 parse_space (pp, end); in parse_feature_indices()
160 if (!parse_char (pp, end, '[')) in parse_feature_indices()
163 has_start = parse_uint (pp, end, &feature->start); in parse_feature_indices()
165 if (parse_char (pp, end, ':')) { in parse_feature_indices()
166 parse_uint (pp, end, &feature->end); in parse_feature_indices()
172 return parse_char (pp, end, ']'); in parse_feature_indices()
176 parse_feature_value_postfix (const char **pp, const char *end, hb_feature_t *feature) in parse_feature_value_postfix() argument
178 bool had_equal = parse_char (pp, end, '='); in parse_feature_value_postfix()
179 bool had_value = parse_uint (pp, end, &feature->value) || in parse_feature_value_postfix()
180 parse_bool (pp, end, &feature->value); in parse_feature_value_postfix()
189 parse_one_feature (const char **pp, const char *end, hb_feature_t *feature) in parse_one_feature() argument
191 return parse_feature_value_prefix (pp, end, feature) && in parse_one_feature()
192 parse_feature_tag (pp, end, feature) && in parse_one_feature()
193 parse_feature_indices (pp, end, feature) && in parse_one_feature()
194 parse_feature_value_postfix (pp, end, feature) && in parse_one_feature()
195 parse_space (pp, end) && in parse_one_feature()
196 *pp == end; in parse_one_feature()