|
|
4 ani în urmă | |
|---|---|---|
| .. | ||
| BUILD | 2017eb4da0 Initial implementation of block string literals following lexical_conventions/string_literals.md. (#1028) | 4 ani în urmă |
| README.md | 6c3e1f6d7c Revise README and add subdir READMEs (#1023) | 4 ani în urmă |
| bison_wrap.h | 057b9fe253 Clean up remaining executable_semantics clang-tidy warnings (#906) | 4 ani în urmă |
| format_grammar.py | 2017eb4da0 Initial implementation of block string literals following lexical_conventions/string_literals.md. (#1028) | 4 ani în urmă |
| format_grammar_test.py | ffc2be92d6 Add carbon to a couple python imports for correctness (#1033) | 4 ani în urmă |
| lexer.lpp | 4479c55305 Pointers (#1060) | 4 ani în urmă |
| parse.cpp | ec2f8e64e2 Support parsing Carbon files from strings. (#954) | 4 ani în urmă |
| parse.h | ec2f8e64e2 Support parsing Carbon files from strings. (#954) | 4 ani în urmă |
| parse_and_lex_context.cpp | 70797e8bf8 Mass rename SourceLoc and Tag (#860) | 4 ani în urmă |
| parse_and_lex_context.h | 2017eb4da0 Initial implementation of block string literals following lexical_conventions/string_literals.md. (#1028) | 4 ani în urmă |
| parse_test.cpp | eda43faa5a Note namespace and static recommendations in C++ style guide (#1041) | 4 ani în urmă |
| parse_test_matchers.h | dc5e62fc7a Support parsing and testing unimplemented expressions (#957) | 4 ani în urmă |
| parse_test_matchers_internal.h | 92903afbd5 clang-tidy pass on executable_semantics (#963) | 4 ani în urmă |
| parser.ypp | ac0b810bf3 Adds basic support for class functions and methods. (#1057) | 4 ani în urmă |
| unimplemented_example_test.cpp | eda43faa5a Note namespace and static recommendations in C++ style guide (#1041) | 4 ani în urmă |
The code in this directory is responsible for translating Carbon source code to
the AST defined in ast. It consists primarily of a Flex lexer
defined in lexer.lpp and a Bison grammar defined in
parser.ypp.
It is possible to define and test a new expression syntax without defining its
semantics by using the UnimplementedExpression AST node type and the same
techniques can be applied to other kinds of AST nodes as needed. See the
handling of the UNIMPL_EXAMPLE token for an example of how this is done, and
see unimplemented_example_test.cpp for an
example of how to test it.