summaryrefslogtreecommitdiffstats
path: root/edify/parser.y
diff options
context:
space:
mode:
authorDoug Zongker <dougz@android.com>2014-02-18 18:48:19 +0100
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-02-18 18:48:19 +0100
commitf2ff0a2097cd945a612fb461741b803d2b5aca7a (patch)
tree7bc57a86cbf178d77f4790f76fa2e59d69defa7a /edify/parser.y
parentMerge "Fix a crash when going into recovery mode." (diff)
parentclean up some warnings when building recovery (diff)
downloadandroid_bootable_recovery-f2ff0a2097cd945a612fb461741b803d2b5aca7a.tar
android_bootable_recovery-f2ff0a2097cd945a612fb461741b803d2b5aca7a.tar.gz
android_bootable_recovery-f2ff0a2097cd945a612fb461741b803d2b5aca7a.tar.bz2
android_bootable_recovery-f2ff0a2097cd945a612fb461741b803d2b5aca7a.tar.lz
android_bootable_recovery-f2ff0a2097cd945a612fb461741b803d2b5aca7a.tar.xz
android_bootable_recovery-f2ff0a2097cd945a612fb461741b803d2b5aca7a.tar.zst
android_bootable_recovery-f2ff0a2097cd945a612fb461741b803d2b5aca7a.zip
Diffstat (limited to 'edify/parser.y')
-rw-r--r--edify/parser.y9
1 files changed, 9 insertions, 0 deletions
diff --git a/edify/parser.y b/edify/parser.y
index 3f9ade144..f8fb2d12f 100644
--- a/edify/parser.y
+++ b/edify/parser.y
@@ -29,6 +29,10 @@ extern int gColumn;
void yyerror(Expr** root, int* error_count, const char* s);
int yyparse(Expr** root, int* error_count);
+struct yy_buffer_state;
+void yy_switch_to_buffer(struct yy_buffer_state* new_buffer);
+struct yy_buffer_state* yy_scan_string(const char* yystr);
+
%}
%locations
@@ -128,3 +132,8 @@ void yyerror(Expr** root, int* error_count, const char* s) {
printf("line %d col %d: %s\n", gLine, gColumn, s);
++*error_count;
}
+
+int parse_string(const char* str, Expr** root, int* error_count) {
+ yy_switch_to_buffer(yy_scan_string(str));
+ return yyparse(root, error_count);
+}