X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=generate-command-parser.pl;h=9b5ef562941779da30ff5e6386f178bd36c9650d;hb=679a5de8cfb9211afb1a1dd882e53bd672084754;hp=66e44b6cd83a020924d7e7ae327d6f6eaa7e9831;hpb=dece12bf1857ac2384e2da8917f65f2dfe3f2b37;p=i3%2Fi3 diff --git a/generate-command-parser.pl b/generate-command-parser.pl index 66e44b6c..9b5ef562 100755 --- a/generate-command-parser.pl +++ b/generate-command-parser.pl @@ -84,14 +84,14 @@ for my $line (@lines) { # Cleanup the identifier (if any). $identifier =~ s/^\s*(\S+)\s*=\s*$/$1/g; - # Cleanup the tokens (remove whitespace). - $tokens =~ s/\s*//g; - # The default action is to stay in the current state. $action = $current_state if length($action) == 0; #say "identifier = *$identifier*, token = *$tokens*, action = *$action*"; for my $token (split(',', $tokens)) { + # Cleanup trailing/leading whitespace. + $token =~ s/^\s*//g; + $token =~ s/\s*$//g; my $store_token = { token => $token, identifier => $identifier, @@ -131,7 +131,7 @@ close($enumfh); # Third step: Generate the call function. open(my $callfh, '>', "GENERATED_${prefix}_call.h"); -my $resultname = uc(substr($prefix, 0, 1)) . substr($prefix, 1) . 'Result'; +my $resultname = uc(substr($prefix, 0, 1)) . substr($prefix, 1) . 'ResultIR'; say $callfh "static void GENERATED_call(const int call_identifier, struct $resultname *result) {"; say $callfh ' switch (call_identifier) {'; my $call_id = 0; @@ -193,7 +193,6 @@ say $callfh ' default:'; say $callfh ' printf("BUG in the parser. state = %d\n", call_identifier);'; say $callfh ' assert(false);'; say $callfh ' }'; -say $callfh ' state = result->next_state;'; say $callfh '}'; close($callfh);