forked from llvm/llvm-project
- Notifications
You must be signed in to change notification settings - Fork 339
/
Copy pathdil-expr-lang.ebnf
42 lines (24 loc) · 907 Bytes
/
dil-expr-lang.ebnf
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
(* Data Inspection Language (DIL) definition - LLDB Debug Expressions *)
(* This is currently a subset of the final DIL Language, matching the current
DIL implementation. *)
expression=primary_expression ;
primary_expression=id_expression
|"("expression")";
id_expression=unqualified_id
|qualified_id
|register ;
unqualified_id=identifier ;
qualified_id= ["::"] [nested_name_specifier] unqualified_id
| ["::"] identifier ;
identifier=? C99 Identifier ? ;
register="$"? Register name ? ;
nested_name_specifier=type_name"::"
|namespace_name'::'
|nested_name_specifieridentifier"::" ;
type_name=class_name
|enum_name
|typedef_name;
class_name=identifier ;
enum_name=identifier ;
typedef_name=identifier ;
namespace_name=identifier ;