-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add a wasm browser based playground #41
Open
mingodad
wants to merge
40
commits into
cwbaker:main
Choose a base branch
from
mingodad:playground
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 1 commit
Commits
Show all changes
40 commits
Select commit
Hold shift + click to select a range
1633608
Add 'std::' in several places as suggested by clang
mingodad 4007497
Fix to detect identifiers referenced in rules but not defined
mingodad 01e753c
Add preprocessor guards to allow build without threads/threadpool.
mingodad fe8da35
Make possible to accept associativity/precedence syntax like bison/byacc
mingodad 98444cb
Add an error message for empty literal/regex declarations, also fix t…
mingodad 82bfdf5
Check if '%whitespace' directive is present in the grammar and if not…
mingodad 0e05c13
Add code to allow generate an EBNF for railroad diagram generation
mingodad 061bf24
Add method to dump the input from the lexer.
mingodad 7a668bb
Reuse result of already called function.
mingodad 9243595
Add a method to show grammar compilation stats.
mingodad a64710d
Reorder class member for better memory usage/alignment.
mingodad 642de0b
Rename write output function to prevent clash with C lib ::write
mingodad a5387f3
Use a typedef and macros to allow easy experimenting with different t…
mingodad d7cacbc
Simplify GrammaSymbolSet
mingodad 06dfb8e
Only check for '%whitespace' directive if the grammar has no other er…
mingodad deb8e3e
Fix examples/test that were missing '%whitespace' directive.
mingodad 49af659
Check if we are at the end and then stop
mingodad 4e5acce
First working version of an wasm browser based playground
mingodad 41860c1
Add a naive implementation of "%case_insensitive" directive, right no…
mingodad 0aec408
Add column info to error messages in ErrorPolicy
mingodad d9e8e15
Add special regex character escape for the naive case insensitive imp…
mingodad 9b72871
Make trivial methods inline.
mingodad 3aa9a4a
Add column info to GrammarSymbol and error messages
mingodad f59b70c
First implementation for outptut an parse tree. The MissingHeaders te…
mingodad 02178b9
Check if the input is accepted && full before print the parse tree
mingodad eb7ff4c
Now I've got closer to a good parse tree dump
mingodad ccdca1a
Missing fixes for a better parse tree output
mingodad 9f907f6
Show an error message when associativity is assigned to a non-terminal.
mingodad 1d09221
Undo a mistaken removing code for a better parse tree output.
mingodad 8aa81d2
Fix generation of empty productions for genEBNF
mingodad 51ab70e
Add YACC generation from LALR grammars.
mingodad 208eda6
Fix to only match fully words, because before it was matching a subst…
mingodad fc40770
Add a missing case when generating a YACC file
mingodad 08939ba
Add the reducing transition as a parameter to action handlers, this w…
mingodad ee28902
Update examples to use the extra action handler parameter recently in…
mingodad f5c1810
Add 2 new grammar options to easy debug, also fix line counting when …
mingodad 6f73f32
Add code to detect user content changes and alert him/her
mingodad 02946cc
Added grammar examples
mingodad d5231dc
Update code
mingodad 2e1ef74
Create static.yml
mingodad File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this fixing a bug?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, there is some grammars that enter a endless loop because the lexer doesn't advance.
I don't know exactly which ones trigger the bug but you can try it with this script:
Build script:
grammar_test.cpp: