dlox 1.0.0 copy "dlox: ^1.0.0" to clipboard
dlox: ^1.0.0 copied to clipboard

A full implementation (scanner, parser, resolver and interpreter) of the Lox language in Dart.

2
likes
130/ 160
pub points
43
downloads

We analyzed this package 16 hours ago, and awarded it 130 pub points (of a possible 160):

OK
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: GPL-3.0.

failed
Provide documentation
10 / 20trigger folding of the section

10/10 points: 20% or more of the public API has dartdoc comments

65 out of 189 API elements (34.4 %) have documentation comments.

Some symbols that are missing documentation: dlox, dlox.AssignExpression, dlox.AssignExpression.AssignExpression, dlox.AssignExpression.accept, dlox.AssignExpression.name.

0/10 points: Package has an example

No example found.

See package layout guidelines on how to add an example.

failed
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 5 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

These platforms are not supported:

Package not compatible with platform Web

Because:

  • package:dlox/dlox.dart that imports:
  • package:dlox/src/routine.dart that imports:
  • package:dlox/src/interpreter.dart that imports:
  • dart:io

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:dlox/dlox.dart that imports:
  • package:dlox/src/routine.dart that imports:
  • package:dlox/src/interpreter.dart that imports:
  • dart:io

This package is not compatible with runtime wasm, and will not be rewarded full points in a future version of the scoring model.

See https://dart.dev/web/wasm for details.

partial
Pass static analysis
40 / 50trigger folding of the section

40/50 points: code has no errors, warnings, lints, or formatting issues

Found 9 issues. Showing the first 2:

INFO: Statements in an if should be enclosed in a block.

lib/src/interpreter.dart:127:80

    ╷
127 │         (expression.operator.type == TokenType.orKeyword && !_isTruthy(left))) return left;
    │                                                                                ^^^^^^^^^^^^
    ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/interpreter.dart

/tmp/pana_WTQDNW/bin/dlox.dart doesn't match the Dart formatter.

To format your files run: dart format .

failed
Support up-to-date dependencies
30 / 40trigger folding of the section

0/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
dart_style ^2.3.6 2.3.8 3.0.1
exitcode ^1.0.1 1.0.1 1.0.1
meta ^1.15.0 1.16.0 1.16.0
quiver ^3.2.1 3.2.2 3.2.2
recase ^4.1.0 4.1.0 4.1.0
Transitive dependencies
Package Constraint Compatible Latest
_fe_analyzer_shared - 76.0.0 79.0.0
_macros - 0.3.3 0.3.3
analyzer - 6.11.0 7.2.0
args - 2.6.0 2.6.0
async - 2.12.0 2.12.0
boolean_selector - 2.1.2 2.1.2
collection - 1.19.1 1.19.1
convert - 3.1.2 3.1.2
crypto - 3.0.6 3.0.6
file - 7.0.1 7.0.1
glob - 2.1.3 2.1.3
macros - 0.1.3-main.0 0.1.3-main.0
matcher - 0.12.17 0.12.17
package_config - 2.1.1 2.1.1
path - 1.9.1 1.9.1
pub_semver - 2.1.5 2.1.5
source_span - 1.10.1 1.10.1
stack_trace - 1.12.1 1.12.1
stream_channel - 2.1.4 2.1.4
string_scanner - 1.4.1 1.4.1
term_glyph - 1.2.2 1.2.2
test_api - 0.7.4 0.7.4
typed_data - 1.4.0 1.4.0
watcher - 1.1.1 1.1.1
yaml - 3.1.3 3.1.3

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

The constraint `^2.3.6` on dart_style does not support the stable version `3.0.0`.

Try running dart pub upgrade --major-versions dart_style to update the constraint.

10/10 points: Package supports latest stable Dart and Flutter SDKs

20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.22.18, Dart 3.6.1.

Check the analysis log for details.

2
likes
130
points
43
downloads

Publisher

verified publishermateusfccp.me

Weekly Downloads

A full implementation (scanner, parser, resolver and interpreter) of the Lox language in Dart.

Repository (GitHub)

Documentation

API reference

License

GPL-3.0 (license)

Dependencies

dart_style, exitcode, meta, quiver, recase

More

Packages that depend on dlox