Граф коммитов

15 Коммитов

Автор SHA1 Сообщение Дата
Kevin Newton 4aa98b2760 [ruby/yarp] Add a value to numbered references
https://github.com/ruby/yarp/commit/5d9b048971
2023-08-30 21:31:36 +00:00
Kevin Newton 7be08f3f58 [ruby/yarp] Switch from handling const char * to const uint8_t *
https://github.com/ruby/yarp/commit/465e7bb0a9
2023-08-30 14:41:23 -04:00
Kevin Newton 9b8602dd90 [ruby/yarp] Introduce parse_lex instead of asking for a block
https://github.com/ruby/yarp/commit/7e70339fe1
2023-08-25 21:10:19 +00:00
Benoit Daloze f603497105 [ruby/yarp] Use templating to avoid duplicating the YARP version in many places
https://github.com/ruby/yarp/commit/9c359fd92e
2023-08-25 19:37:17 +00:00
Kevin Newton 90048241ca [ruby/yarp] A couple small stylistic updates for yp_scope_node
* Ensure the node gets initialized in case of failure with no assertions
* Include lambda and top-level nodes for scopes
* Small indentation fixes

https://github.com/ruby/yarp/commit/be29e07391
2023-08-24 19:27:22 +00:00
Jemma Issroff 82e1434ef6 [ruby/yarp] Pulled scope node out of config.yml, added necessary void returns
https://github.com/ruby/yarp/commit/926e6bdd88
2023-08-24 19:06:00 +00:00
Jemma Issroff d81634d3ef [ruby/yarp] Add a ScopeNode and a way to create scope nodes from existing nodes
This commit creates a scope node, and exposes a method to get
ScopeNodes from other existing nodes. It still has TODOs around
creating ScopeNodes for other types of nodes, which will be
done in future commits.

https://github.com/ruby/yarp/commit/3b9ac5764d
2023-08-24 19:06:00 +00:00
Takashi Kokubun 3873b1eb39 Resync YARP 2023-08-16 17:47:32 -07:00
Thomas E. Enebo 96aebb4265 [ruby/yarp] Address PR comments
- odd whitespace
- a couple of name changes
- properly read uint32_t when not properly aligned

https://github.com/ruby/yarp/commit/3208ee3983
2023-08-16 17:47:32 -07:00
Thomas E. Enebo 1e0749e032 [ruby/yarp] Addressed review comments.
Missing any tests and in fact this is untested so still a WIP.

https://github.com/ruby/yarp/commit/5411abd651
2023-08-16 17:47:32 -07:00
Thomas E. Enebo 76c77b5eca [ruby/yarp] WIP - Introduce contextually parsing programs vs evals
This is more or less the code I used in my POC in JRuby
to parse evals.  Evals depend on parent variable scopes
and will produce a different syntax tree.

Questions:
  1. How does MRI compile evals currently?  I cannot find anything.
  2. This passes in a char * of data.  It does not encode the
     variables we pass in because the system calling this already
     knows.  Is this adequate though?
  3. Can I get guidance on how best to test this?

https://github.com/ruby/yarp/commit/f441b6fd2c
2023-08-16 17:47:32 -07:00
Jemma Issroff d62328251d [ruby/yarp] Remove yp_location_for_node in preference of yp_newline_list_line_column
https://github.com/ruby/yarp/commit/55aa813909
2023-07-11 15:49:42 +00:00
Jemma Issroff 9e3a5cc54f [ruby/yarp] Add a yp_location_for_node function to the C API
yp_location_for_node takes a parser and a node and returns the
location in a way that can be punned into ruby/ruby types

https://github.com/ruby/yarp/commit/75e06016a7
2023-07-07 17:46:47 +00:00
Jemma Issroff bfb933371d Manual YARP resync 2023-07-05 16:58:55 -04:00
Jemma Issroff cc7f765f2c [Feature #19741] Sync all files in yarp
This commit is the initial sync of all files from ruby/yarp
into ruby/ruby. Notably, it does the following:

* Sync all ruby/yarp/lib/ files to ruby/ruby/lib/yarp
* Sync all ruby/yarp/src/ files to ruby/ruby/yarp/
* Sync all ruby/yarp/test/ files to ruby/ruby/test/yarp
2023-06-21 11:25:39 -07:00