aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/parser.cxx
AgeCommit message (Collapse)AuthorFilesLines
2019-09-30Cleanup inappropriate use of parse_variable_value()Boris Kolpackov1-40/+42
2019-09-30Handle attributes in switch value and pattern expressionsBoris Kolpackov1-2/+28
2019-09-30Diagnose `case` and `default` outside `switch`Boris Kolpackov1-1/+2
2019-09-30Reserve `:` in `case` pattern expression for future match extraction supportBoris Kolpackov1-1/+11
2019-09-30Add support for custom match/extract functions in switch expressionBoris Kolpackov1-46/+82
2019-09-30Add support for `case` pattern alternativesBoris Kolpackov1-8/+38
case <pattern>[ | <pattern>...]
2019-09-30Allow multiple `case` for single line/blockBoris Kolpackov1-34/+82
2019-09-30Pattern matching support (switch): multiple values implementationBoris Kolpackov1-23/+52
2019-09-30Pattern matching support (switch): single value implementationBoris Kolpackov1-45/+220
2019-09-27Adapt to bracket expressions in wildcard patternsKaren Arutyunov1-34/+48
2019-08-26Improve diagnosticsBoris Kolpackov1-1/+1
2019-08-26Fix typoKaren Arutyunov1-1/+2
2019-08-26Factor target name processing code from parser to scopeBoris Kolpackov1-50/+4
2019-08-26Make target types project-wideBoris Kolpackov1-1/+1
2019-08-25Split import into search and load stepsBoris Kolpackov1-4/+0
This allows us to load things in a separate context.
2019-08-23Introduce notion of build contextBoris Kolpackov1-35/+35
All non-const global state is now in class context and we can now have multiple independent builds going on at the same time.
2019-08-21Cleanup context.hxx and its usageBoris Kolpackov1-1/+0
2019-08-16Minor cleanupsBoris Kolpackov1-3/+3
2019-07-25Implement pre-parse mode for parse_names_trailer()Karen Arutyunov1-2/+22
2019-07-25Fix parse_names_trailer() for 'cross with empty LHS' case ({$empty}{x y})Karen Arutyunov1-0/+1
2019-07-01Split build system into library and driverBoris Kolpackov1-0/+5526