ruby/prism/util
Kevin Newton 89efb94fec [ruby/prism] Reconfigure rationals
This eliminates the subnode on RationalNode and replaces it with two
integer fields, which represent the ratio for the rational. It also
reduces those two integers if they both fit into 32 bits.

Importantly, this PR does not implement bignum reduction. That's something
I'd like to consider for the future, but it's simple enough for now to
leave them unreduced, which makes it more useful than it used to be.

https://github.com/ruby/prism/commit/86e06c7068
2024-05-21 14:27:46 -04:00
..
pm_buffer.c [ruby/prism] Remove ssize_t usage 2024-03-13 16:06:13 +00:00
pm_buffer.h [PRISM] Remove ssize_t definition from prism 2024-03-13 12:06:48 -04:00
pm_char.c [ruby/prism] Fix incorrect paring when using invalid regexp options 2024-03-25 12:16:32 +00:00
pm_char.h [ruby/prism] Last remaining missing C comments 2023-11-01 13:10:29 -04:00
pm_constant_pool.c [ruby/prism] Make the locals set switch from list to hash dynamically 2024-04-05 19:23:57 +00:00
pm_constant_pool.h [ruby/prism] Switch locals to use a hash 2024-04-05 19:23:57 +00:00
pm_integer.c [ruby/prism] Reconfigure rationals 2024-05-21 14:27:46 -04:00
pm_integer.h [ruby/prism] Reconfigure rationals 2024-05-21 14:27:46 -04:00
pm_list.c [ruby/prism] Make alloc interface replaceable 2024-03-04 16:40:23 +00:00
pm_list.h [ruby/prism] Make alloc interface replaceable 2024-03-04 16:40:23 +00:00
pm_memchr.c [ruby/prism] Correctly pass around const pm_encoding_t * 2023-11-30 21:37:56 -05:00
pm_memchr.h [ruby/prism] Correctly pass around const pm_encoding_t * 2023-11-30 21:37:56 -05:00
pm_newline_list.c [ruby/prism] CLI -x flag 2024-03-28 12:04:35 -04:00
pm_newline_list.h [ruby/prism] Various cleanup with new -x option 2024-03-28 12:04:35 -04:00
pm_string.c [ruby/prism] Style and allocation functions 2024-03-07 18:02:33 -05:00
pm_string.h [ruby/prism] Parse files from Ruby API using fread, not mmap 2024-03-06 17:45:56 +00:00
pm_string_list.c [ruby/prism] Make alloc interface replaceable 2024-03-04 16:40:23 +00:00
pm_string_list.h [ruby/prism] Last remaining missing C comments 2023-11-01 13:10:29 -04:00
pm_strncasecmp.c [ruby/prism] Documentation for pm_strncasecmp 2023-11-01 13:10:29 -04:00
pm_strncasecmp.h [ruby/prism] Fix up lint 2023-11-01 13:10:29 -04:00
pm_strpbrk.c [ruby/prism] More mixed encoding errors 2024-05-16 17:22:14 +00:00
pm_strpbrk.h [ruby/prism] Validate multibyte characters in strings 2024-02-14 01:01:37 +00:00