LibCST/libcst/codegen
Jennifer Taylor 17fa6add8a Redo matcher codegen to be much faster and smaller output.
This does a few things, since it was easier to combine than separate:
 - Uses type aliases instead of fully-unrolled types, making it far easier for a human to read.
 - Makes codegen approximately 3x faster, which has the side effect of halving our test run times.
 - Consolidate the way we use type aliases by dropping the MetadataPredicate type for now, increasing consistency.
 - Widen types for AllOf/OneOf matchers to allow for MatchIfTrue since this is supported under the hood.

This results in a generated matchers file that is 1/3 the size it was, more readable by a human, and most importantly, faster to codegen, parse, format and typecheck.
2019-10-31 12:54:26 -07:00
..
tests Codegen valid return types mapping for each CSTNode class. 2019-10-16 12:48:20 -07:00
__init__.py Add unit test to verify that codegen is clean. 2019-08-28 13:28:29 -07:00
gather.py Rename ExtSlice to SubscriptElement in anticipation of further fitxes. 2019-10-16 16:00:27 -07:00
gen_matcher_classes.py Redo matcher codegen to be much faster and smaller output. 2019-10-31 12:54:26 -07:00
gen_type_mapping.py Codegen valid return types mapping for each CSTNode class. 2019-10-16 12:48:20 -07:00
gen_visitor_functions.py Rename ExtSlice to SubscriptElement in anticipation of further fitxes. 2019-10-16 16:00:27 -07:00
generate.py Codegen valid return types mapping for each CSTNode class. 2019-10-16 12:48:20 -07:00
transforms.py Fix string sanitization to not change things such as '"'. 2019-10-31 12:54:26 -07:00