front_end 0.1.0-alpha.4

  • README.md
  • Installing
  • Versions
  • 80

Front end for Dart

This package provides a low-level API for use by compiler back ends that wish to implement the Dart language. It is intended for eventual use by dev_compiler, dart2js, and the Dart VM. In addition, it will share implementation details with the analyzer package--this will be accomplished by having the analyzer package import (and re-export) parts of this package's private implementation.

End-users should use the [dartanalyzer][analyzercli] command-line tool to analyze their Dart code.

Integrators that want to write tools that analyze Dart code should use the [analyzer] package.

Note: The APIs in this package are in an early state; developers should be careful about depending on this package.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  front_end: "^0.1.0-alpha.4"

2. Install it

You can install packages from the command line:

with pub:


$ pub get

with Flutter:


$ flutter packages get

Alternatively, your editor might support pub get or flutter packages get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


      import 'package:front_end/compilation_error.dart';

      import 'package:front_end/compiler_options.dart';

      import 'package:front_end/dependency_grapher.dart';

      import 'package:front_end/file_system.dart';

      import 'package:front_end/incremental_kernel_generator.dart';

      import 'package:front_end/incremental_resolved_ast_generator.dart';

      import 'package:front_end/kernel_generator.dart';

      import 'package:front_end/memory_file_system.dart';

      import 'package:front_end/physical_file_system.dart';

      import 'package:front_end/resolved_ast_generator.dart';

      import 'package:front_end/summary_generator.dart';
  
Version Uploaded Documentation Archive
0.1.0 May 14, 2018 Go to the documentation of front_end 0.1.0 Download front_end 0.1.0 archive
0.0.1 Oct 17, 2016 Go to the documentation of front_end 0.0.1 Download front_end 0.0.1 archive
0.1.0-alpha.12 Apr 30, 2018 Go to the documentation of front_end 0.1.0-alpha.12 Download front_end 0.1.0-alpha.12 archive
0.1.0-alpha.11 Mar 22, 2018 Go to the documentation of front_end 0.1.0-alpha.11 Download front_end 0.1.0-alpha.11 archive
0.1.0-alpha.10 Feb 14, 2018 Go to the documentation of front_end 0.1.0-alpha.10 Download front_end 0.1.0-alpha.10 archive
0.1.0-alpha.9 Feb 9, 2018 Go to the documentation of front_end 0.1.0-alpha.9 Download front_end 0.1.0-alpha.9 archive
0.1.0-alpha.8 Feb 2, 2018 Go to the documentation of front_end 0.1.0-alpha.8 Download front_end 0.1.0-alpha.8 archive
0.1.0-alpha.7 Nov 28, 2017 Go to the documentation of front_end 0.1.0-alpha.7 Download front_end 0.1.0-alpha.7 archive
0.1.0-alpha.6 Aug 25, 2017 Go to the documentation of front_end 0.1.0-alpha.6 Download front_end 0.1.0-alpha.6 archive
0.1.0-alpha.5 Jul 26, 2017 Go to the documentation of front_end 0.1.0-alpha.5 Download front_end 0.1.0-alpha.5 archive

All 15 versions...

Analysis

We analyzed this package on May 14, 2018, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.0.0-dev.54.0
  • pana: 0.10.6

Scores

Popularity:
Describes how popular the package is relative to other packages. [more]
78 / 100
Health:
Code health derived from static analysis. [more]
98 / 100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
57 / 100
Overall score:
Weighted score of the above. [more]
80
Learn more about scoring.

Platforms

Detected platforms: Flutter, other

Platform components identified in package: io.

Suggestions

  • Maintain CHANGELOG.md.

    Changelog entries help clients to follow the progress in your code.

  • Fix analysis and formatting issues.

    Analysis or formatting checks reported 36 errors 5 warnings 52 hints.

    Strong-mode analysis of lib/src/fasta/kernel/kernel_ast_factory.dart failed with the following error:

    line: 121 col: 3
    Invalid override. The type of 'KernelAstFactory.mapLiteral' ('(Token, Token, List<MapEntry>, {keyType: DartType, valueType: DartType}) → MapLiteral') isn't a subtype of 'AstFactory<VariableDeclaration>.mapLiteral' ('(Token, Token, List<dynamic>, {keyType: DartType, valueType: DartType}) → MapLiteral').

    Strong-mode analysis of lib/src/fasta/run.dart failed with the following error:

    line: 11 col: 8
    Target of URI doesn't exist: 'package:testing/testing.dart'.

    Similar analysis of the following files failed:

    • lib/src/fasta/testing/kernel_chain.dart (error)
    • lib/src/fasta/testing/scanner_chain.dart (error)
    • lib/src/fasta/util/link.dart (error)
    • lib/src/fasta/util/link_implementation.dart (error)
    • lib/src/fasta/builder/ast_factory.dart (warning)
    • lib/src/fasta/kernel/body_builder.dart (warning)
    • lib/src/fasta/kernel/kernel_enum_builder.dart (warning)
    • lib/src/fasta/kernel/kernel_shadow_ast.dart (warning)
    • lib/kernel_generator.dart (hint)
    • lib/memory_file_system.dart (hint)
    • lib/src/base/errors.dart (hint)
    • lib/src/base/jenkins_smi_hash.dart (hint)
    • lib/src/base/uri_kind.dart (hint)
    • lib/src/fasta/colors.dart (hint)
    • lib/src/fasta/command_line.dart (hint)
    • lib/src/fasta/errors.dart (hint)
    • lib/src/fasta/fasta.dart (hint)
    • lib/src/fasta/loader.dart (hint)
    • lib/src/fasta/parser/parser_main.dart (hint)
    • lib/src/fasta/parser/token_stream_rewriter.dart (hint)
    • lib/src/fasta/scanner.dart (hint)
    • lib/src/fasta/scanner/abstract_scanner.dart (hint)
    • lib/src/fasta/scanner/recover.dart (hint)
    • lib/src/fasta/scanner/token.dart (hint)
    • lib/src/fasta/scanner/utf8_bytes_scanner.dart (hint)
    • lib/src/fasta/testing/validating_instrumentation.dart (hint)
    • lib/src/fasta/type_inference/type_schema.dart (hint)
  • Package is pre-release.

    Pre-release versions should be used with caution, their API may change in breaking ways.

  • The description is too short.

    Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

  • Package is pre-v1 release.

    While there is nothing inherently wrong with versions of 0.*.*, it usually means that the author is still experimenting with the general direction API.

  • Maintain an example.

    Create a short demo in the example/ directory to show how to use this package. Common file name patterns include: main.dart, example.dart or you could also use front_end.dart.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.12.0 <2.0.0
analyzer ^0.30.0 0.30.0+3 0.31.1
kernel 0.3.0-alpha.1 0.3.0-alpha.1 0.3.0-alpha.12
path ^1.3.9 1.5.1
source_span ^1.2.3 1.4.0
Transitive dependencies
args 0.13.7 1.4.3
async 2.0.7
charcode 1.1.1
cli_util 0.1.2+1
collection 1.14.9
convert 2.0.1
crypto 2.0.3
csslib 0.14.4
glob 1.1.5
html 0.13.3
isolate 1.1.0 2.0.0
logging 0.11.3+1
meta 1.1.5
plugin 0.2.0+2
string_scanner 1.0.2
typed_data 1.1.5
utf 0.9.0+4
watcher 0.9.7+7
yaml 2.1.13
Dev dependencies
package_config ^1.0.0 1.0.3
test ^0.12.0
test_reflective_loader ^0.1.0