libcss/src/parse/properties/autogenerated_order.c
/**
 * Parse order
 *
 * \param c	  Parsing context
 * \param vector  Vector of tokens to process
 * \param ctx	  Pointer to vector iteration context
 * \param result  resulting style
 * \return CSS_OK on success,
 *	   CSS_NOMEM on memory exhaustion,
 *	   CSS_INVALID if the input is not valid
 *
 * Post condition: \a *ctx is updated with the next token to process
 *		   If the input is invalid, then \a *ctx remains unchanged.
 */


Post condition: \a *ctx is updated with the next token to process
If the input is invalid, then \a *ctx remains unchanged.
Post condition : \ a * ctx is updated with the next token to process If the input is invalid then \ a * ctx remains unchanged .
css_error css__parse_order(css_language *c,
		const parserutils_vector *vector, int *ctx,
		css_style *result)
{
	int orig_ctx = *ctx;
	css_error error;
	const css_token *token;
	bool match;
	token = parserutils_vector_iterate(vector, ctx);
	if ((token == NULL) || ((token->type != CSS_TOKEN_IDENT) && (token->type != CSS_TOKEN_NUMBER))) {
		*ctx = orig_ctx;
		return CSS_INVALID;
	}
	if ((token->type == CSS_TOKEN_IDENT) && (lwc_string_caseless_isequal(token->idata, c->strings[INHERIT], &match) == lwc_error_ok && match)) {
			error = css_stylesheet_style_inherit(result, CSS_PROP_ORDER);
	} else if (token->type == CSS_TOKEN_NUMBER) {
		css_fixed num = 0;
		size_t consumed = 0;
		num = css__number_from_lwc_string(token->idata, true, &consumed);
		if (consumed != lwc_string_length(token->idata)) {
			*ctx = orig_ctx;
			return CSS_INVALID;
		}
		error = css__stylesheet_style_appendOPV(result, CSS_PROP_ORDER, 0, ORDER_SET);
		if (error != CSS_OK) {
			*ctx = orig_ctx;
			return error;
		}
		error = css__stylesheet_style_append(result, num);
	} else {
		error = CSS_INVALID;
	}
	if (error != CSS_OK)
		*ctx = orig_ctx;
	return error;
}
css_error css__parse_order ( css_language * c , const parserutils_vector * vector , int * ctx , css_style * result ) { int orig_ctx = * ctx ; css_error error ; const css_token * token ; bool match ; token = parserutils_vector_iterate ( vector , ctx ) ; if ( ( token == NULL ) || ( ( token -> type != CSS_TOKEN_IDENT ) && ( token -> type != CSS_TOKEN_NUMBER ) ) ) { * ctx = orig_ctx ; return CSS_INVALID ; } if ( ( token -> type == CSS_TOKEN_IDENT ) && ( lwc_string_caseless_isequal ( token -> idata , c -> strings [ INHERIT ] , & match ) == lwc_error_ok && match ) ) { error = css_stylesheet_style_inherit ( result , CSS_PROP_ORDER ) ; } else if ( token -> type == CSS_TOKEN_NUMBER ) { css_fixed num = 0 ; size_t consumed = 0 ; num = css__number_from_lwc_string ( token -> idata , true , & consumed ) ; if ( consumed != lwc_string_length ( token -> idata ) ) { * ctx = orig_ctx ; return CSS_INVALID ; } error = css__stylesheet_style_appendOPV ( result , CSS_PROP_ORDER , 0 , ORDER_SET ) ; if ( error != CSS_OK ) { * ctx = orig_ctx ; return error ; } error = css__stylesheet_style_append ( result , num ) ; } else { error = CSS_INVALID ; } if ( error != CSS_OK ) * ctx = orig_ctx ; return error ; }
Parse order
 \param c       Parsing context
 \param vector  Vector of tokens to process
 \param ctx     Pointer to vector iteration context
 \param result  resulting style
 \return CSS_OK on success,
         CSS_NOMEM on memory exhaustion,
         CSS_INVALID if the input is not valid
Parse order \ param c Parsing context \ param vector Vector of tokens to process \ param ctx Pointer to vector iteration context \ param result resulting style \ return CSS_OK on success CSS_NOMEM on memory exhaustion CSS_INVALID if the input is not valid
/* Invalid if there are trailing characters */