summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2010-06-16 12:01:17 -0700
committerKenneth Graunke <kenneth@whitecape.org>2010-06-21 11:25:50 -0700
commit1b1f43e6089bf1f78e8ff19b43a649b931fe4e31 (patch)
treead99d3f2b447043eaa827c6030f15ecec0bdb2bf
parent4c8a1af8117ac8e69883c6ef88d3f3b073dc6e0a (diff)
glcpp: Add support for lexing from a string.
The standalone binary still reads from stdin, however.
-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 cc5f28f..f736ac4 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 ac103b7..0d43f0b 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);