summaryrefslogtreecommitdiffstats
path: root/glcpp
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2010-06-16 12:01:17 -0700
committerKenneth Graunke <[email protected]>2010-06-21 11:25:50 -0700
commit1b1f43e6089bf1f78e8ff19b43a649b931fe4e31 (patch)
treead99d3f2b447043eaa827c6030f15ecec0bdb2bf /glcpp
parent4c8a1af8117ac8e69883c6ef88d3f3b073dc6e0a (diff)
glcpp: Add support for lexing from a string.
The standalone binary still reads from stdin, however.
Diffstat (limited to 'glcpp')
-rw-r--r--glcpp/glcpp-lex.l6
-rw-r--r--glcpp/glcpp.h3
2 files changed, 9 insertions, 0 deletions
diff --git a/glcpp/glcpp-lex.l b/glcpp/glcpp-lex.l
index cc5f28f8f86..f736ac4d59d 100644
--- a/glcpp/glcpp-lex.l
+++ b/glcpp/glcpp-lex.l
@@ -201,3 +201,9 @@ NON_STARS_THEN_STARS [^*]*[*]+
}
%%
+
+void
+glcpp_lex_set_source_string(glcpp_parser_t *parser, const char *shader)
+{
+ yy_scan_string(shader, parser->scanner);
+}
diff --git a/glcpp/glcpp.h b/glcpp/glcpp.h
index ac103b7fb83..0d43f0b69e1 100644
--- a/glcpp/glcpp.h
+++ b/glcpp/glcpp.h
@@ -159,6 +159,9 @@ glcpp_parser_destroy (glcpp_parser_t *parser);
int
glcpp_lex_init_extra (glcpp_parser_t *parser, yyscan_t* scanner);
+void
+glcpp_lex_set_source_string(glcpp_parser_t *parser, const char *shader);
+
int
glcpp_lex (yyscan_t scanner);