diff options
author | Michal Krol <mjkrol@gmail.org> | 2004-10-20 15:19:58 +0000 |
---|---|---|
committer | Michal Krol <mjkrol@gmail.org> | 2004-10-20 15:19:58 +0000 |
commit | cbef98c2eae6f4ec3874a226af65f25c5b8526e2 (patch) | |
tree | deeb4aa406409611d31280d2d9416b944b94b9d7 | |
parent | 904ef741de76b41825d9f18153e3535a89390d5b (diff) |
add new grammar_check_fast entry for faster parsing
-rw-r--r-- | src/mesa/shader/grammar.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/mesa/shader/grammar.h b/src/mesa/shader/grammar.h index 41a484e69c..622cdb2398 100644 --- a/src/mesa/shader/grammar.h +++ b/src/mesa/shader/grammar.h @@ -1,6 +1,6 @@ /* * Mesa 3-D graphics library - * Version: 6.1 + * Version: 6.2 * * Copyright (C) 1999-2004 Brian Paul All Rights Reserved. * @@ -61,6 +61,8 @@ grammar grammar_load_from_text (const byte *text); int grammar_set_reg8 (grammar id, const byte *name, byte value); /* + this function is obsolete, use only for debugging purposes + checks if a null-terminated <text> matches given grammar <id> returns 0 on error (call grammar_get_last_error to retrieve the error text) returns 1 on success, the <prod> points to newly allocated buffer with production and <size> @@ -70,6 +72,15 @@ int grammar_set_reg8 (grammar id, const byte *name, byte value); int grammar_check (grammar id, const byte *text, byte **prod, unsigned int *size); /* + does the same what grammar_check does but much more (approx. 4 times) faster + use this function instead of grammar_check + <estimate_prod_size> is a hint - the initial production buffer size will be of this size, + but if more room is needed it will be safely resized; set it to 0x1000 or so +*/ +int grammar_fast_check (grammar id, const byte *text, byte **prod, unsigned int *size, + unsigned int estimate_prod_size); + +/* destroys grammar object identified by <id> returns 0 on error (call grammar_get_last_error to retrieve the error text) returns 1 on success |