Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(165)

Issue 1408043002: Move native and js interop properties from the element model to the JS backend (Closed)

Created:
5 years, 2 months ago by Johnni Winther
Modified:
5 years, 2 months ago
Reviewers:
sra1, Jacob, sigurdm
CC:
reviews_dartlang.org
Base URL:
https://github.com/dart-lang/sdk.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Move native and js interop properties from the element model to the JS backend Main changes: Moved native/jsinterop members from elements/elements.dart, (interface) elements/modelx.dart, (implementation) native/native.dart (implementation) to common/backend_api.dart (interface) js_backend/backend.dart (implementation) Removed LibraryElement.canUseNative and added BackendApi.canUseNative to common/backend_api.dart to encapsulate the maybeEnableNative function in native/native.dart Added ScannerOptions to parser/element_listener.dart as a required argument of ElementListener and added Parsing.getScannerOptionsFor to common/resolution.dart (interface) compiler.dart (implementation) to allow the `native` pseudo keyword in native/scanner.dart The remaining changes are side-effects of the changes above. R=jacobr@google.com, sigurdm@google.com Committed: https://github.com/dart-lang/sdk/commit/e38285c424fd04d8f408e534eee6ce2cea27da7f

Patch Set 1 #

Patch Set 2 : Cleanup #

Total comments: 10

Patch Set 3 : Updated cf. comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+391 lines, -274 lines) Patch
M pkg/compiler/lib/src/common/backend_api.dart View 4 chunks +19 lines, -3 lines 0 comments Download
M pkg/compiler/lib/src/common/codegen.dart View 1 chunk +0 lines, -6 lines 0 comments Download
M pkg/compiler/lib/src/common/resolution.dart View 3 chunks +3 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/compiler.dart View 2 chunks +7 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart View 1 chunk +1 line, -1 line 0 comments Download
M pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart View 4 chunks +6 lines, -4 lines 0 comments Download
M pkg/compiler/lib/src/cps_ir/type_propagation.dart View 1 chunk +3 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/elements/elements.dart View 7 chunks +1 line, -21 lines 0 comments Download
M pkg/compiler/lib/src/elements/modelx.dart View 5 chunks +0 lines, -83 lines 0 comments Download
M pkg/compiler/lib/src/enqueue.dart View 3 chunks +3 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/inferrer/simple_types_inferrer.dart View 2 chunks +3 lines, -3 lines 0 comments Download
M pkg/compiler/lib/src/js_backend/backend.dart View 1 2 11 chunks +177 lines, -12 lines 0 comments Download
M pkg/compiler/lib/src/js_backend/custom_elements_analysis.dart View 3 chunks +5 lines, -5 lines 0 comments Download
M pkg/compiler/lib/src/js_backend/field_naming_mixin.dart View 1 chunk +2 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/js_backend/js_backend.dart View 1 chunk +0 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/js_backend/js_interop_analysis.dart View 3 chunks +5 lines, -4 lines 0 comments Download
M pkg/compiler/lib/src/js_backend/namer.dart View 5 chunks +10 lines, -9 lines 0 comments Download
M pkg/compiler/lib/src/js_backend/patch_resolver.dart View 1 chunk +1 line, -1 line 0 comments Download
M pkg/compiler/lib/src/js_emitter/full_emitter/emitter.dart View 1 chunk +4 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/js_emitter/interceptor_stub_generator.dart View 1 chunk +1 line, -1 line 0 comments Download
M pkg/compiler/lib/src/js_emitter/native_emitter.dart View 5 chunks +8 lines, -7 lines 0 comments Download
M pkg/compiler/lib/src/js_emitter/parameter_stub_generator.dart View 1 chunk +1 line, -1 line 0 comments Download
M pkg/compiler/lib/src/js_emitter/program_builder/collector.dart View 1 chunk +1 line, -1 line 0 comments Download
M pkg/compiler/lib/src/js_emitter/program_builder/field_visitor.dart View 2 chunks +2 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart View 5 chunks +7 lines, -7 lines 0 comments Download
M pkg/compiler/lib/src/js_emitter/runtime_type_generator.dart View 1 2 1 chunk +1 line, -1 line 0 comments Download
M pkg/compiler/lib/src/library_loader.dart View 2 chunks +0 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/native/enqueue.dart View 10 chunks +18 lines, -17 lines 0 comments Download
M pkg/compiler/lib/src/native/native.dart View 2 chunks +4 lines, -18 lines 0 comments Download
M pkg/compiler/lib/src/native/scanner.dart View 1 1 chunk +1 line, -2 lines 0 comments Download
M pkg/compiler/lib/src/native/ssa.dart View 1 chunk +2 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/parser/diet_parser_task.dart View 2 chunks +7 lines, -3 lines 0 comments Download
M pkg/compiler/lib/src/parser/element_listener.dart View 1 2 3 chunks +12 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/parser/member_listener.dart View 1 chunk +7 lines, -4 lines 0 comments Download
M pkg/compiler/lib/src/parser/node_listener.dart View 1 chunk +4 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/parser/parser_task.dart View 2 chunks +4 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/parser/partial_elements.dart View 2 chunks +4 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/patch_parser.dart View 4 chunks +9 lines, -5 lines 0 comments Download
M pkg/compiler/lib/src/resolution/resolution.dart View 1 chunk +1 line, -1 line 0 comments Download
M pkg/compiler/lib/src/ssa/builder.dart View 13 chunks +15 lines, -15 lines 0 comments Download
M pkg/compiler/lib/src/ssa/codegen.dart View 1 chunk +2 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/ssa/interceptor_simplifier.dart View 1 chunk +1 line, -1 line 0 comments Download
M pkg/compiler/lib/src/ssa/optimize.dart View 5 chunks +10 lines, -4 lines 0 comments Download
M pkg/compiler/lib/src/types/types.dart View 2 chunks +2 lines, -2 lines 0 comments Download
M pkg/compiler/lib/src/universe/universe.dart View 2 chunks +2 lines, -1 line 0 comments Download
M pkg/compiler/lib/src/world.dart View 1 chunk +1 line, -1 line 0 comments Download
M tests/compiler/dart2js/parser_helper.dart View 2 chunks +6 lines, -4 lines 0 comments Download
M tests/compiler/dart2js/type_checker_test.dart View 3 chunks +5 lines, -2 lines 0 comments Download
M tests/compiler/dart2js/unparser2_test.dart View 2 chunks +3 lines, -1 line 0 comments Download

Messages

Total messages: 8 (2 generated)
Johnni Winther
5 years, 2 months ago (2015-10-16 10:15:58 UTC) #2
Jacob
thanks for doing this refactor. lgtm on the isJsInterop portion. Fyi: the tests for the ...
5 years, 2 months ago (2015-10-16 17:02:19 UTC) #3
Johnni Winther
@sigurdm: Can you take a look at the LibraryElement.canUseNative and ScannerOptions part?
5 years, 2 months ago (2015-10-21 07:56:11 UTC) #5
sigurdm
LGTM https://codereview.chromium.org/1408043002/diff/20001/pkg/compiler/lib/src/js_backend/backend.dart File pkg/compiler/lib/src/js_backend/backend.dart (right): https://codereview.chromium.org/1408043002/diff/20001/pkg/compiler/lib/src/js_backend/backend.dart#newcode808 pkg/compiler/lib/src/js_backend/backend.dart:808: /// Tag infor for native JavaScript classes names. ...
5 years, 2 months ago (2015-10-21 10:28:28 UTC) #6
Johnni Winther
https://codereview.chromium.org/1408043002/diff/20001/pkg/compiler/lib/src/js_backend/backend.dart File pkg/compiler/lib/src/js_backend/backend.dart (right): https://codereview.chromium.org/1408043002/diff/20001/pkg/compiler/lib/src/js_backend/backend.dart#newcode808 pkg/compiler/lib/src/js_backend/backend.dart:808: /// Tag infor for native JavaScript classes names. See ...
5 years, 2 months ago (2015-10-22 09:06:03 UTC) #7
Johnni Winther
5 years, 2 months ago (2015-10-22 09:42:16 UTC) #8
Message was sent while issue was closed.
Committed patchset #3 (id:40001) manually as
e38285c424fd04d8f408e534eee6ce2cea27da7f (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698