blob: 783432dabd6db811ca51b41c5f105922b356b819 (
plain)
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
(* Data Inspection Language (DIL) definition - LLDB Debug Expressions *)
(* This is currently a subset of the final DIL Language, matching the current
DIL implementation. *)
expression = unary_expression ;
unary_expression = postfix_expression
| unary_operator expression ;
unary_operator = "*" | "&" ;
postfix_expression = primary_expression
| postfix_expression "[" integer_literal "]"
| postfix_expression "." id_expression
| postfix_expression "->" id_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 ? ;
integer_literal = ? Integer constant: hexademical, decimal, octal, binary ? ;
register = "$" ? Register name ? ;
nested_name_specifier = type_name "::"
| namespace_name '::'
| nested_name_specifier identifier "::" ;
type_name = class_name
| enum_name
| typedef_name;
class_name = identifier ;
enum_name = identifier ;
typedef_name = identifier ;
namespace_name = identifier ;
|