mirror of https://github.com/Wilfred/difftastic/
208 lines
3.9 KiB
Plaintext
208 lines
3.9 KiB
Plaintext
=====================================
|
|
Using directives
|
|
=====================================
|
|
|
|
using A;
|
|
using B.C;
|
|
using global::E.F;
|
|
using G = H.I;
|
|
using static J.K;
|
|
|
|
---
|
|
|
|
(compilation_unit
|
|
(using_directive
|
|
(identifier))
|
|
(using_directive
|
|
(qualified_name (identifier) (identifier)))
|
|
(using_directive
|
|
(qualified_name
|
|
(alias_qualified_name (identifier) (identifier))
|
|
(identifier)))
|
|
(using_directive
|
|
(name_equals (identifier))
|
|
(qualified_name (identifier) (identifier)))
|
|
(using_directive
|
|
(qualified_name (identifier) (identifier))))
|
|
|
|
=====================================
|
|
Nested using directives
|
|
=====================================
|
|
|
|
namespace Foo {
|
|
using A;
|
|
}
|
|
|
|
---
|
|
|
|
(compilation_unit
|
|
(namespace_declaration
|
|
(identifier)
|
|
(declaration_list
|
|
(using_directive
|
|
(identifier)))))
|
|
|
|
=====================================
|
|
Global using directives
|
|
=====================================
|
|
|
|
global using A;
|
|
global using static A.B;
|
|
|
|
---
|
|
|
|
(compilation_unit
|
|
(using_directive
|
|
(identifier))
|
|
(using_directive
|
|
(qualified_name
|
|
(identifier)
|
|
(identifier))))
|
|
|
|
=====================================
|
|
Comments
|
|
=====================================
|
|
|
|
// I'm a single-line comment
|
|
|
|
/*
|
|
* I'm a block comment: a * b / c
|
|
*/
|
|
|
|
---
|
|
|
|
(compilation_unit (comment) (comment))
|
|
|
|
=====================================
|
|
Comment with double asterisk
|
|
=====================================
|
|
|
|
/** test **/
|
|
|
|
---
|
|
|
|
(compilation_unit (comment))
|
|
|
|
=====================================
|
|
Namespaces
|
|
=====================================
|
|
|
|
namespace A {
|
|
namespace B.C.D {
|
|
}
|
|
|
|
namespace E.F {
|
|
}
|
|
}
|
|
|
|
---
|
|
|
|
(compilation_unit
|
|
(namespace_declaration
|
|
(identifier)
|
|
(declaration_list
|
|
(namespace_declaration
|
|
(qualified_name
|
|
(qualified_name (identifier) (identifier))
|
|
(identifier))
|
|
(declaration_list))
|
|
(namespace_declaration
|
|
(qualified_name (identifier) (identifier))
|
|
(declaration_list)))))
|
|
|
|
=====================================
|
|
File scoped namespaces
|
|
=====================================
|
|
|
|
namespace A;
|
|
|
|
class B {
|
|
}
|
|
|
|
---
|
|
|
|
(compilation_unit
|
|
(file_scoped_namespace_declaration
|
|
(identifier)
|
|
(class_declaration
|
|
(identifier)
|
|
(declaration_list))))
|
|
|
|
=====================================
|
|
Interfaces
|
|
=====================================
|
|
|
|
public interface IFoo {
|
|
}
|
|
|
|
---
|
|
|
|
(compilation_unit
|
|
(interface_declaration
|
|
(modifier)
|
|
(identifier)
|
|
(declaration_list)))
|
|
|
|
=====================================
|
|
Externs
|
|
=====================================
|
|
|
|
extern alias A;
|
|
|
|
---
|
|
|
|
(compilation_unit
|
|
(extern_alias_directive
|
|
(identifier)))
|
|
|
|
|
|
=====================================
|
|
Delegates
|
|
=====================================
|
|
|
|
public delegate int Global(ref char a = '\n');
|
|
|
|
delegate void A<T>() where T:class;
|
|
|
|
delegate void A(params int [] test);
|
|
|
|
class Z {
|
|
delegate void Zed();
|
|
}
|
|
|
|
---
|
|
|
|
(compilation_unit
|
|
(delegate_declaration
|
|
(modifier)
|
|
(predefined_type)
|
|
(identifier)
|
|
(parameter_list
|
|
(parameter
|
|
(parameter_modifier)
|
|
(predefined_type)
|
|
(identifier)
|
|
(equals_value_clause (character_literal (escape_sequence))))))
|
|
(delegate_declaration (void_keyword) (identifier)
|
|
(type_parameter_list (type_parameter (identifier)))
|
|
(parameter_list)
|
|
(type_parameter_constraints_clause (identifier) (type_parameter_constraint)))
|
|
(delegate_declaration (void_keyword) (identifier)
|
|
(parameter_list (array_type (predefined_type) (array_rank_specifier)) (identifier)))
|
|
(class_declaration (identifier) (declaration_list
|
|
(delegate_declaration (void_keyword) (identifier) (parameter_list)))))
|
|
|
|
=====================================
|
|
Var declared equal to integer literal
|
|
=====================================
|
|
|
|
var a = 1;
|
|
|
|
---
|
|
(compilation_unit
|
|
(global_statement
|
|
(local_declaration_statement
|
|
(variable_declaration (implicit_type)
|
|
(variable_declarator (identifier)
|
|
(equals_value_clause (integer_literal)))))))
|