File: CPPExpressionParser.g

package info (click to toggle)
eclipse-cdt 9.9.0-5
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 145,456 kB
  • sloc: java: 1,114,843; xml: 64,727; javascript: 18,756; cpp: 5,269; ansic: 3,171; makefile: 1,508; asm: 814; sh: 295; f90: 22; python: 5
file content (39 lines) | stat: -rw-r--r-- 1,025 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
-----------------------------------------------------------------------------------
-- Copyright (c) 2006, 2008 IBM Corporation and others.
-- This program and the accompanying materials
-- are made available under the terms of the Eclipse Public License 2.0
-- which accompanies this distribution, and is available at
-- https://www.eclipse.org/legal/epl-2.0/
--
-- SPDX-License-Identifier: EPL-2.0
--
-- Contributors:
--     IBM Corporation - initial API and implementation
-----------------------------------------------------------------------------------

%options la=2
%options package=org.eclipse.cdt.internal.core.dom.lrparser.cpp
%options template=LRSecondaryParserTemplate.g

-- All we need to do is import the main parser and redefine the start symbol.

$Import
	CPPGrammar.g
$End

$Define
    $ast_class /. IASTExpression ./
$End

$Start
    expression_parser_start
$End

$Rules

	expression_parser_start
	    ::= expression
	      | ERROR_TOKEN
	          /. $Build  consumeEmpty();  $EndBuild ./
          
$End