tree-sitter-dart
Version:
Dart grammar attempt for tree-sitter
715 lines (609 loc) • 29.3 kB
Plain Text
===================================================
Weird file
===================================================
d
---------------
(program (identifier))
================================
big test
================================
abstract class IOSApp extends ApplicationPackage {
IOSApp({required String projectBundleId}) : super(id: projectBundleId);
@override
String get displayName => id;
String get simulatorBundlePath;
String get deviceBundlePath;
/// Directory used by ios-deploy to store incremental installation metadata for
/// faster second installs.
Directory? get appDeltaDirectory;
}
class BuildableIOSApp extends IOSApp {
BuildableIOSApp(this.project, String projectBundleId, String? hostAppBundleName)
: _hostAppBundleName = hostAppBundleName,
super(projectBundleId: projectBundleId);
static Future<BuildableIOSApp?> fromProject(IosProject project, BuildInfo? buildInfo) async {
final String? hostAppBundleName = await project.hostAppBundleName(buildInfo);
final String? projectBundleId = await project.productBundleIdentifier(buildInfo);
if (projectBundleId != null) {
return BuildableIOSApp(project, projectBundleId, hostAppBundleName);
}
return null;
}
final IosProject project;
final String? _hostAppBundleName;
@override
String? get name => _hostAppBundleName;
@override
String get simulatorBundlePath => _buildAppPath('iphonesimulator');
@override
String get deviceBundlePath => _buildAppPath('iphoneos');
@override
Directory get appDeltaDirectory => globals.fs.directory(globals.fs.path.join(getIosBuildDirectory(), 'app-delta'));
// Xcode uses this path for the final archive bundle location,
// not a top-level output directory.
// Specifying `build/ios/archive/Runner` will result in `build/ios/archive/Runner.xcarchive`.
String get archiveBundlePath => globals.fs.path.join(getIosBuildDirectory(), 'archive',
_hostAppBundleName == null ? 'Runner' : globals.fs.path.withoutExtension(_hostAppBundleName!));
// The output xcarchive bundle path `build/ios/archive/Runner.xcarchive`.
String get archiveBundleOutputPath =>
globals.fs.path.setExtension(archiveBundlePath, '.xcarchive');
String get ipaOutputPath =>
globals.fs.path.join(getIosBuildDirectory(), 'ipa');
String _buildAppPath(String type) {
return globals.fs.path.join(getIosBuildDirectory(), type, _hostAppBundleName);
}
}
(program (class_definition (identifier) (superclass (type_identifier))
(class_body (declaration (constructor_signature (identifier)
(formal_parameter_list (optional_formal_parameters
(formal_parameter (type_identifier) (identifier))))) (initializers
(initializer_list_entry (arguments (named_argument (label (identifier))
(identifier)))))) (marker_annotation (identifier))
(method_signature (getter_signature
(type_identifier) (identifier))) (function_body (identifier)) (declaration
(getter_signature (type_identifier) (identifier))) (declaration
(getter_signature (type_identifier) (identifier))) (documentation_comment)
(documentation_comment) (declaration (getter_signature (type_identifier) (identifier)))))
(class_definition (identifier) (superclass (type_identifier))
(class_body (declaration (constructor_signature (identifier)
(formal_parameter_list (formal_parameter (constructor_param (this) (identifier)))
(formal_parameter (type_identifier) (identifier))
(formal_parameter (type_identifier) (identifier))))
(initializers (initializer_list_entry (field_initializer (identifier) (identifier)))
(initializer_list_entry (arguments (named_argument (label (identifier)) (identifier))))))
(method_signature (function_signature (type_identifier) (type_arguments
(type_identifier)) (identifier) (formal_parameter_list
(formal_parameter (type_identifier) (identifier))
(formal_parameter (type_identifier) (identifier)))))
(function_body
(block
(local_variable_declaration
(initialized_variable_definition (final_builtin) (type_identifier)
(identifier)
(unary_expression (await_expression (identifier)
(selector (unconditional_assignable_selector
(identifier))) (selector (argument_part (arguments (argument (identifier)))))))))
(local_variable_declaration (initialized_variable_definition (final_builtin)
(type_identifier) (identifier) (unary_expression (await_expression (identifier)
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (identifier)))))))))
(if_statement (parenthesized_expression (equality_expression (identifier)
(equality_operator) (null_literal))) (block (return_statement (identifier)
(selector (argument_part (arguments (argument (identifier)) (argument (identifier))
(argument (identifier))))))))
(return_statement (null_literal))))
(declaration (final_builtin) (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier))))
(declaration (final_builtin) (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier))))
(marker_annotation (identifier))
(method_signature (getter_signature (type_identifier)
(identifier))) (function_body (identifier)) (marker_annotation (identifier)) (method_signature
(getter_signature (type_identifier) (identifier))) (function_body (identifier)
(selector (argument_part (arguments (argument (string_literal))))))
(marker_annotation (identifier))
(method_signature (getter_signature (type_identifier) (identifier)))
(function_body (identifier)
(selector (argument_part (arguments (argument (string_literal))))))
(marker_annotation (identifier))
(method_signature (getter_signature (type_identifier) (identifier)))
(function_body (identifier)
(selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (identifier)
(selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (identifier)
(selector (argument_part (arguments)))) (argument (string_literal))))))))))
(comment) (comment) (comment)
(method_signature (getter_signature (type_identifier) (identifier)))
(function_body (identifier) (selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (identifier)
(selector (argument_part (arguments)))) (argument (string_literal))
(argument
(conditional_expression (equality_expression (identifier)
(equality_operator) (null_literal)) (string_literal) (identifier)
(selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (identifier)
(selector)))))))))))
(comment)
(method_signature (getter_signature (type_identifier) (identifier)))
(function_body (identifier) (selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (identifier)) (argument (string_literal))))))
(method_signature (getter_signature (type_identifier) (identifier)))
(function_body (identifier) (selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (identifier)
(selector (argument_part (arguments)))) (argument (string_literal))))))
(method_signature
(function_signature (type_identifier) (identifier)
(formal_parameter_list (formal_parameter (type_identifier) (identifier)))))
(function_body (block (return_statement (identifier)
(selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (identifier)
(selector (argument_part (arguments)))) (argument (identifier)) (argument (identifier)))))))))))
=====================================
more tests
======================================
typedef RpcPeerConnectionFunction = Future<vms.VmService> Function(
Uri uri, {
required Duration timeout,
});
(program
(type_alias
(type_identifier)
(function_type (type_identifier)
(type_arguments (type_identifier) (type_identifier))
(parameter_type_list
(normal_parameter_type
(typed_identifier
(type_identifier) (identifier)
)
)
(optional_parameter_types
(named_parameter_types
(typed_identifier (type_identifier) (identifier))))))))
=======================================
more tests2
=======================================
static bool? _boolAttribute(
String resourceId,
String name,
Map<String, Object?> attributes,
String attributeName,
) {
final Object? value = attributes[attributeName];
if (value == null) {
return null;
}
if (value != 'true' && value != 'false') {
throw L10nException(
'The "$attributeName" value of the "$name" placeholder in message $resourceId '
'must be a boolean value.',
);
}
return value == 'true';
}
(program (function_signature (type_identifier) (ERROR
(identifier)) (identifier)
(formal_parameter_list
(formal_parameter
(type_identifier) (identifier)) (formal_parameter (type_identifier) (identifier))
(formal_parameter
(type_identifier) (type_arguments (type_identifier) (type_identifier))
(identifier))
(formal_parameter (type_identifier) (identifier)))
)
(function_body (block (local_variable_declaration
(initialized_variable_definition (final_builtin) (type_identifier) (identifier)
(identifier) (selector (unconditional_assignable_selector (index_selector (identifier))))))
(if_statement (parenthesized_expression (equality_expression (identifier) (equality_operator)
(null_literal))) (block (return_statement (null_literal))))
(if_statement (parenthesized_expression (logical_and_expression
(equality_expression (identifier) (equality_operator) (string_literal))
(equality_expression (identifier) (equality_operator) (string_literal))))
(block (expression_statement (throw_expression (identifier)
(selector (argument_part (arguments (argument (string_literal
(template_substitution (identifier_dollar_escaped))
(template_substitution (identifier_dollar_escaped))
(template_substitution (identifier_dollar_escaped)))))))))))
(return_statement (equality_expression (identifier) (equality_operator) (string_literal))))))
===========================================
more tests 2
===========================================
/// A doctor validator for both Intellij and Android Studio.
abstract class IntelliJValidator extends DoctorValidator {
IntelliJValidator(super.title, this.installPath, {
required FileSystem fileSystem,
required UserMessages userMessages,
}) : _fileSystem = fileSystem,
_userMessages = userMessages;
final String installPath;
final FileSystem _fileSystem;
final UserMessages _userMessages;
String get version;
String? get pluginsPath;
static const Map<String, String> _idToTitle = <String, String>{
_ultimateEditionId: _ultimateEditionTitle,
_communityEditionId: _communityEditionTitle,
};
}
(program
(documentation_comment)
(class_definition (identifier) (superclass (type_identifier))
(class_body (declaration (constructor_signature (identifier)
(formal_parameter_list
(formal_parameter (super_formal_parameter (super) (identifier)))
(formal_parameter (constructor_param (this) (identifier)))
(optional_formal_parameters (formal_parameter (type_identifier) (identifier))
(formal_parameter (type_identifier) (identifier)))))
(initializers (initializer_list_entry (field_initializer (identifier) (identifier)))
(initializer_list_entry (field_initializer (identifier) (identifier)))))
(declaration (final_builtin) (type_identifier) (initialized_identifier_list
(initialized_identifier (identifier)))) (declaration (final_builtin) (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier))))
(declaration (final_builtin) (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier))))
(declaration (getter_signature (type_identifier) (identifier)))
(declaration (getter_signature (type_identifier) (identifier)))
(declaration (const_builtin) (type_identifier) (type_arguments (type_identifier)
(type_identifier)) (static_final_declaration_list (static_final_declaration (identifier)
(set_or_map_literal (type_arguments (type_identifier) (type_identifier))
(pair (identifier) (identifier)) (pair (identifier) (identifier)))))))))
==============================================
more tests 3
==============================================
class _RecompileRequest extends _CompilationRequest {
_RecompileRequest(
super.completer,
this.mainUri,
this.invalidatedFiles,
this.outputPath,
this.packageConfig,
this.suppressErrors,
{this.additionalSource}
);
Uri mainUri;
List<Uri>? invalidatedFiles;
String outputPath;
PackageConfig packageConfig;
bool suppressErrors;
final String? additionalSource;
@override
Future<CompilerOutput?> _run(DefaultResidentCompiler compiler) async =>
compiler._recompile(this);
}
(program
(class_definition (identifier)
(superclass (type_identifier))
(class_body (declaration
(constructor_signature (identifier)
(formal_parameter_list
(formal_parameter (super_formal_parameter (super) (identifier)))
(formal_parameter (constructor_param (this) (identifier)))
(formal_parameter (constructor_param (this) (identifier)))
(formal_parameter (constructor_param (this) (identifier)))
(formal_parameter (constructor_param (this) (identifier)))
(formal_parameter (constructor_param (this) (identifier)))
(optional_formal_parameters
(formal_parameter (constructor_param (this) (identifier)))))))
(declaration (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier))))
(declaration (type_identifier) (type_arguments (type_identifier))
(initialized_identifier_list (initialized_identifier (identifier))))
(declaration (type_identifier) (initialized_identifier_list
(initialized_identifier (identifier)))) (declaration (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier))))
(declaration (type_identifier) (initialized_identifier_list
(initialized_identifier (identifier))))
(declaration (final_builtin) (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier))))
(marker_annotation (identifier)) (method_signature
(function_signature (type_identifier) (type_arguments (type_identifier))
(identifier) (formal_parameter_list (formal_parameter (type_identifier)
(identifier))))) (function_body (identifier) (selector
(unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (this)))))))))
===============================
more tests 4
===============================
bool debugAssertIsValid() {
assert(
textColor != null
&& style != null
&& margin != null
&& _position != null
&& _position.isFinite
&& _opacity != null
&& _opacity >= 0.0
&& _opacity <= 1.0,
);
return true;
}
(program
(function_signature (type_identifier) (identifier) (formal_parameter_list))
(function_body (block (assert_statement
(assertion
(assertion_arguments (logical_and_expression
(equality_expression (identifier) (equality_operator) (null_literal))
(logical_and_expression
(equality_expression (identifier) (equality_operator) (null_literal))
(logical_and_expression (equality_expression (identifier) (equality_operator) (null_literal))
(logical_and_expression (equality_expression (identifier) (equality_operator) (null_literal))
(logical_and_expression (identifier) (selector (unconditional_assignable_selector (identifier)))
(logical_and_expression (equality_expression (identifier) (equality_operator) (null_literal))
(logical_and_expression
(relational_expression (identifier) (relational_operator)
(decimal_floating_point_literal))
(relational_expression (identifier) (relational_operator) (decimal_floating_point_literal)
)
)
)
)
)
)
)
))
)
) (return_statement (true)))))
===================================
more tests 5
===================================
var TextTheme textTheme = TextTheme(error: '');
(program (inferred_type) (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier) (identifier)
(selector (argument_part (arguments (named_argument (label (identifier)) (string_literal))))))))
===================================
more tests 6
===================================
void _layout(ConstraintType constraints) {
@pragma('vm:notify-debugger-on-exception')
void layoutCallback() {
Widget built;
try {
built = (widget as ConstrainedLayoutBuilder<ConstraintType>).builder(this, constraints);
debugWidgetBuilderValue(widget, built);
} catch (e, stack) {
built = ErrorWidget.builder(
_debugReportException(
informationCollector: () => <DiagnosticsNode>[
if (kDebugMode)
DiagnosticsDebugCreator(DebugCreator(this)),
],
),
);
}
}
owner!.buildScope(this, layoutCallback);
}
(program (function_signature (void_type) (identifier)
(formal_parameter_list (formal_parameter (type_identifier) (identifier))))
(function_body
(block
(local_function_declaration (annotation (identifier)
(arguments (argument (string_literal))))
(lambda_expression
(function_signature (void_type) (identifier) (formal_parameter_list))
(function_body (block (local_variable_declaration
(initialized_variable_definition (type_identifier) (identifier)))
(try_statement
(block
(expression_statement
(assignment_expression (assignable_expression (identifier))
(parenthesized_expression
(type_cast_expression (identifier)
(type_cast (as_operator) (type_identifier) (type_arguments (type_identifier)))))
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (this)) (argument (identifier)))))))
(expression_statement
(identifier) (selector
(argument_part (arguments (argument (identifier)) (argument (identifier)))))))
(catch_clause (catch_parameters (identifier) (identifier)))
(block
(expression_statement (assignment_expression (assignable_expression (identifier)) (identifier)
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (identifier)
(selector (argument_part (arguments (named_argument (label (identifier))
(function_expression (formal_parameter_list) (function_expression_body
(list_literal (type_arguments (type_identifier))
(if_element (parenthesized_expression (identifier)) (identifier)
(selector (argument_part (arguments (argument (identifier)
(selector (argument_part (arguments (argument (this)))))))))))))))))))))))))))))
(expression_statement (identifier) (selector)
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (this)) (argument (identifier)))))))))
===================================
more tests 7
===================================
void _layout(ConstraintType constraints) {
@pragma('vm:notify-debugger-on-exception')
void layoutCallback() {
Widget built;
}
}
(program (function_signature (void_type) (identifier)
(formal_parameter_list (formal_parameter (type_identifier) (identifier))))
(function_body (block (local_function_declaration (annotation (identifier)
(arguments (argument (string_literal))))
(lambda_expression
(function_signature (void_type) (identifier) (formal_parameter_list))
(function_body
(block (local_variable_declaration
(initialized_variable_definition (type_identifier) (identifier))))))))))
===================================
more tests 8
===================================
void _layout(ConstraintType constraints) {
@pragma('vm:notify-debugger-on-exception')
void layoutCallback() {
Widget built;
}
owner!.buildScope(this, layoutCallback);
}
(program (function_signature (void_type) (identifier)
(formal_parameter_list (formal_parameter (type_identifier) (identifier))))
(function_body (block (local_function_declaration (annotation (identifier)
(arguments (argument (string_literal))))
(lambda_expression (function_signature (void_type) (identifier) (formal_parameter_list))
(function_body
(block
(local_variable_declaration
(initialized_variable_definition (type_identifier) (identifier)))))))
(expression_statement (identifier) (selector) (selector
(unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (this)) (argument (identifier)))))))))
====================================
cascade selector
====================================
layer
?..link = link
..showWhenUnlinked = showWhenUnlinked
..linkedOffset = effectiveLinkedOffset
..unlinkedOffset = offset;
(program
(expression_statement
(identifier)
(cascade_section (cascade_selector (identifier)) (identifier))
(cascade_section (cascade_selector (identifier)) (identifier))
(cascade_section (cascade_selector (identifier)) (identifier))
(cascade_section (cascade_selector (identifier)) (identifier))
)
)
====================================
cascade selector 2
====================================
layer
..link = link
..showWhenUnlinked = showWhenUnlinked
..linkedOffset = effectiveLinkedOffset
..unlinkedOffset = offset;
(program
(expression_statement
(identifier)
(cascade_section (cascade_selector (identifier)) (identifier))
(cascade_section (cascade_selector (identifier)) (identifier))
(cascade_section (cascade_selector (identifier)) (identifier))
(cascade_section (cascade_selector (identifier)) (identifier))
)
)
====================================
comment selector 1
====================================
// O
// / \ O=root
// L L L=node with label
// / \ C=node with checked
// C C* *=node removed next pass
//
await tester.pumpWidget(Directionality(
textDirection: TextDirection.ltr,
child: Stack(),
));
(program
(comment)
(comment)
(comment)
(comment)
(comment)
(comment)
(expression_statement
(unary_expression
(await_expression (identifier)
(selector (unconditional_assignable_selector (identifier)))
(selector (argument_part (arguments (argument (identifier)
(selector (argument_part
(arguments
(named_argument (label (identifier)) (identifier)
(selector (unconditional_assignable_selector (identifier))))
(named_argument (label (identifier)) (identifier) (selector (argument_part (arguments))))
)))))))))))
====================================
comment overselected 2
====================================
// }
//
class Placeholder {
Placeholder(this.resourceId, this.name, Map<String, Object?> attributes)
: assert(resourceId != null),
assert(name != null),
example = _stringAttribute(resourceId, name, attributes, 'example'),
type = _stringAttribute(resourceId, name, attributes, 'type') ?? 'Object';
final String resourceId;
}
(program (comment) (comment) (class_definition (identifier)
(class_body (declaration (constructor_signature (identifier) (formal_parameter_list
(formal_parameter (constructor_param (this) (identifier))) (formal_parameter (constructor_param (this) (identifier)))
(formal_parameter (type_identifier) (type_arguments (type_identifier) (type_identifier)) (identifier)))) (initializers
(initializer_list_entry (assertion (assertion_arguments (equality_expression (identifier) (equality_operator) (null_literal)))))
(initializer_list_entry (assertion (assertion_arguments (equality_expression (identifier) (equality_operator) (null_literal)))))
(initializer_list_entry (field_initializer (identifier) (identifier) (selector (argument_part (arguments (argument (identifier))
(argument (identifier)) (argument (identifier)) (argument (string_literal)))))))
(initializer_list_entry (field_initializer (identifier)
(if_null_expression (identifier) (selector
(argument_part
(arguments
(argument (identifier))
(argument (identifier))
(argument (identifier))
(argument (string_literal)))))
(string_literal))))))
(declaration (final_builtin) (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier)))))))
================================================
static late final 1
================================================
class TestRoot extends StatefulWidget {
const TestRoot({ super.key });
static late final TestRootState state;
@override
State<TestRoot> createState() => TestRootState();
}
(program
(class_definition (identifier) (superclass (type_identifier))
(class_body
(declaration
(constant_constructor_signature (const_builtin) (qualified (identifier))
(formal_parameter_list (optional_formal_parameters
(formal_parameter (super_formal_parameter (super) (identifier)))))))
(declaration (final_builtin) (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier))))
(marker_annotation (identifier))
(method_signature
(function_signature (type_identifier)
(type_arguments (type_identifier)) (identifier) (formal_parameter_list)))
(function_body (identifier) (selector (argument_part (arguments)))))))
================================================
static late final 2
================================================
class TestRoot extends StatefulWidget {
static late final TestRootState state;
}
(program (class_definition (identifier) (superclass (type_identifier))
(class_body (declaration (final_builtin) (type_identifier)
(initialized_identifier_list (initialized_identifier (identifier)))))))