Files
llvm/lldb/docs/dil-expr-lang.ebnf

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

43 lines
907 B
EBNF
Raw Normal View History

(* 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_specifier identifier "::" ;
type_name = class_name
| enum_name
| typedef_name;
class_name = identifier ;
enum_name = identifier ;
typedef_name = identifier ;
namespace_name = identifier ;