summaryrefslogtreecommitdiff
path: root/prism/templates/include
AgeCommit message (Collapse)Author
2025-12-02[ruby/prism] Introduce PM_NODE_FLAGS macroKevin Newton
https://github.com/ruby/prism/commit/a20afe1674
2025-12-02[ruby/prism] Introduce PM_NODE_UPCAST macro for readabilityKevin Newton
https://github.com/ruby/prism/commit/7eb169513a
2025-10-01[ruby/prism] Add a "LAST" enum field to all flags enumsAaron Patterson
This allows us to use the "last" of the enums in order to make masks, etc. This particular commit uses the call flag's last enum field as an offset so that we can define "private" flags but not accidentally clobber any newly added call node flags. https://github.com/ruby/prism/commit/e71aa980d8
2025-05-29[ruby/prism] [DOC] No RDoc in include/prism/ast.hNobuyoshi Nakada
https://github.com/ruby/prism/commit/1cae6e3b02
2024-09-25[ruby/prism] Update templates/include/prism/ast.h.erbKevin Newton
https://github.com/ruby/prism/commit/dc7164e21c
2024-09-25[ruby/prism] Fix rendering of type overview docsAlexander Momchilov
https://github.com/ruby/prism/commit/d42bc309cc
2024-09-25[ruby/prism] Type every node field and mark on-error-only types explicitlyBenoit Daloze
* For Loader.java, do not deserialize the AST if there are errors, so then Java nodes only have non-error types for fields. https://github.com/ruby/prism/commit/ae78e3c605
2024-09-13[ruby/prism] Refactor and move common node flags count into a constant to ↵Andrew Konchin
reuse in templates https://github.com/ruby/prism/commit/c20bf05ecc
2024-08-22[ruby/prism] Update templates/include/prism/ast.h.erbKevin Newton
https://github.com/ruby/prism/commit/7f7620b6d5
2024-08-22[ruby/prism] Render node comments into their `ast.h`Alexander Momchilov
https://github.com/ruby/prism/commit/b17c3241d3
2024-07-11[ruby/prism] Add node ids to nodesKevin Newton
https://github.com/ruby/prism/commit/bf16ade7f9
2024-07-11[ruby/prism] Expose flags on every node typeKevin Newton
https://github.com/ruby/prism/commit/9f12a56fd6
2024-03-28[ruby/prism] CLI -x flagKevin Newton
https://github.com/ruby/prism/commit/2068e3c30a
2024-03-06[ruby/prism] Expose types on diagnosticsKevin Newton
https://github.com/ruby/prism/commit/a735c2262f
2024-03-06[ruby/prism] Move template related methods/classes under `Prism::Template` ↵Ufuk Kayserilioglu
namespace https://github.com/ruby/prism/commit/0e4dbcd3e4
2024-02-22[ruby/prism] Parse float valuesKevin Newton
https://github.com/ruby/prism/commit/9137226a52
2024-02-22[ruby/prism] Regenerate snapshots using integer valuesKevin Newton
2024-02-22[ruby/prism] Add an IntegerField for parsing integer valuesKevin Newton
https://github.com/ruby/prism/commit/120d8c0479
2024-02-01[ruby/prism] Add parentheses around macro argumentsJenny Shen
https://github.com/ruby/prism/commit/f81fe9c716 Co-authored-by: Adrianna Chang <adrianna.chang@shopify.com> Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2024-01-03[ruby/prism] Include field comments in Java sourceBenoit Daloze
https://github.com/ruby/prism/commit/4a9389f304
2024-01-02[ruby/prism] Introduce field commentsKevin Newton
In an effort to further improve our documentation, this commit introduces the concept of templating comments onto fields. I hope to get more documentation above the nuances of specific fields this way going forward. With this, we template the comments into C and Ruby. I haven't done JS or Java yet, but we can touch those in the future, especially once their documentation is published. https://github.com/ruby/prism/commit/af300d5fb3
2023-12-12[ruby/prism] Add methods for setting/unsetting and macros for testing a flagsUfuk Kayserilioglu
https://github.com/ruby/prism/commit/e5f37d1407
2023-12-01[ruby/prism] Change numbered parametersKevin Newton
Previously numbered parameters were a field on blocks and lambdas that indicated the maximum number of numbered parameters in either the block or lambda, respectively. However they also had a parameters field that would always be nil in these cases. This changes it so that we introduce a NumberedParametersNode that goes in place of parameters, which has a single uint8_t maximum field on it. That field contains the maximum numbered parameter in either the block or lambda. As a part of the PR, I'm introducing a new UInt8Field type that can be used on nodes, which is just to make it a little more explicit what the maximum values can be (the maximum is actually 9, since it only goes up to _9). Plus we can do a couple of nice things in serialization like just read a single byte. https://github.com/ruby/prism/commit/2d87303903
2023-11-01[ruby/prism] Fix up lintKevin Newton
https://github.com/ruby/prism/commit/77d4056766
2023-11-01[ruby/prism] Last remaining missing C commentsKevin Newton
https://github.com/ruby/prism/commit/e327449db6
2023-11-01[ruby/prism] More documentation for ast.hKevin Newton
https://github.com/ruby/prism/commit/84e22c5581
2023-11-01[ruby/prism] Even more C file documentationKevin Newton
https://github.com/ruby/prism/commit/9c648ce615
2023-11-01[ruby/prism] Start better documenting C APIKevin Newton
https://github.com/ruby/prism/commit/2b6e661bbc
2023-11-01[ruby/prism] Add comments on flagsKevin Newton
https://github.com/ruby/prism/commit/3abd09c803
2023-10-13[ruby/prism] Make PM_NODE_FLAG_COMMON_MASK into a constantKevin Newton
https://github.com/ruby/prism/commit/ec66feb595
2023-10-13[ruby/prism] Move common flags to top bitseileencodes
Moves the common flag bits to the top. This lets us eliminate the `COMMON` constant, and also allows us to group encoding flags on a nibble so we can more easily mask them. https://github.com/ruby/prism/commit/895508659e
2023-10-04[ruby/prism] give flag enums a non-`typedef`'d nameNathan Froyd
https://github.com/ruby/prism/commit/630af5cb0e
2023-09-27Sync to prism rename commitsKevin Newton
2023-09-27Rename YARP filepaths to prism filepathsKevin Newton