diff options
| author | Shagun Agrawal <agrawalshagun07@gmail.com> | 2024-07-26 00:03:57 +0530 |
|---|---|---|
| committer | Shagun Agrawal <agrawalshagun07@gmail.com> | 2024-07-26 00:03:57 +0530 |
| commit | b6de8db464151fa1300c5a47e508e9e792d034d0 (patch) | |
| tree | fcff2e637d27de228d869f884f9aa33d8cbabbb4 /src/cljcc/parser.clj | |
| parent | 264c71e3a7666bc234a5dd62b1bcc36c89d1949d (diff) | |
Add cli options for pasing and codegen
Add cli options specific for only parsing and codegen
add logger for help in debugging
Diffstat (limited to 'src/cljcc/parser.clj')
| -rw-r--r-- | src/cljcc/parser.clj | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/cljcc/parser.clj b/src/cljcc/parser.clj index 860fcd5..a4d7492 100644 --- a/src/cljcc/parser.clj +++ b/src/cljcc/parser.clj @@ -11,7 +11,8 @@ "<program> = function+ function = #'int\\b' identifier <'('> #'void\\b' <')'> <'{'> statement <'}'> statement = #'return\\b' exp <';'> - exp = constant + exp = constant | unop exp | <'('> exp <')'> + unop = #'-\\b' | #'~\\b' identifier = #'[a-zA-Z_]\\w*\\b' constant = #'[0-9]+\\b' keyword = #'int\\b' | #'return\\b' | #'void\\b'" |
