-
Notifications
You must be signed in to change notification settings - Fork 12
feat: implement support for operator precedence #17
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
Merged
Merged
Changes from 10 commits
Commits
Show all changes
51 commits
Select commit
Hold shift + click to select a range
d7d2cdf
feat: implement support for operator precedence (WIP)
josdejong 2f430f1
chore: add a fixme
josdejong 6396c5b
chore: minor simplification
josdejong caa6836
feat: update docs about operators
josdejong c708318
feat: option `operators` overwrites the default operators instead of …
josdejong 7354377
chore: fix linting issues
josdejong 0ccd2dc
feat: change option `functions` to overwrite the default functions in…
josdejong 8ea251f
docs: update the libary size in the README.md
josdejong a3aa78a
chore: remove a redundant `skipWhitespace()`
josdejong f9f5106
feat: function `stringify` only wraps an operator in parentheses when…
josdejong 60a6693
feat: align the operator precedence with that of JavaScript
josdejong afa6b1b
chore: reverse the order of the operator list so it is from highest t…
josdejong 77f949f
feat: implement API to insert custom operators
josdejong 18903e6
chore: use a more meaningful `customFn` in a unit test
josdejong 5d079ef
chore: move `operators` to the file `operators.ts` and rename `consta…
josdejong fe1c806
feat: rename `above` and `below` into `before` and `after`
josdejong c021d32
docs: describe the new operators API
josdejong b773f2e
docs: some refinements in the README.md
josdejong 0591863
chore: change the `updated` field in the test suite to a semver `vers…
josdejong 4abbcab
chore: write unit tests for operator precedence
josdejong dfb4e81
chore: improve invalid custom operator error message
josdejong e99718e
chore: improve invalid custom operators error message
josdejong b47d381
chore: fix linting issue
josdejong c02beaf
docs: update the year in the LICENSE.md
josdejong 1d74f14
chore: work out more operator precedence tests
josdejong 3fd94de
chore: fix typos in test descriptions
josdejong 970112f
feat: implement vararg operators (WIP)
josdejong 2e9a2d3
docs: describe support for multiple values in operators
josdejong 9268a03
chore: write unit tests for the functions that throw a "Too many argu…
josdejong a337aa1
feat: support chaining for operator mod
josdejong 8ec3c98
docs: create a table describing operator precedence and associativity
josdejong 40ec8d5
feat: implement support for configuration which functions support vararg
josdejong f23f267
feat: implement configuration for operators supporting vararg
josdejong b4d9f2b
fix: custom functions overriding the built-in functions
josdejong 6b76993
fix: some issues in stringifying operators with parenthesis
josdejong 26be480
chore: move the parenthesis logic to `args.map(...)`
josdejong 14a8f4b
fix: some fixes and additional tests for stringifying parenthesis
josdejong 9f31731
chore: refactor determining whether to add parenthesis when stringifying
josdejong 568bc05
feat: make the parenthesis behavior of parse and stringify simpler an…
josdejong 04d646a
feat: create a browser test to experiment with parse/stringify
josdejong 7408cd6
feat: implement left associative operators and a corresponding option
josdejong 0233a2d
docs: update the function reference
josdejong 4a6ad69
fix: pipe operator has wrong precedence
josdejong 8a51048
Merge branch 'develop' into feat/extend-functions-and-or
josdejong 14d1ed5
fix: specify JSON Schema version and test file version in the test suite
josdejong 9369c81
fix: issues in stringify adding parenthesis when needed
josdejong e0588de
fix: move custom operator tests from Test Suite to JS tests
josdejong 50302c1
chore: add a unit test for `and`
josdejong e097e1c
docs: fix a broken link
josdejong 2271a6e
chore: make passing precedenceLevel optional
josdejong 0f40ce0
chore: rename an argument
josdejong 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 hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
This file contains hidden or 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
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.