LibraryClass class

Wrapper class for library-scoped bridged classes.

Step #17 (import-optimization): the wrapped BridgedClass is built lazily via a deferred thunk and memoized on first access to bridgedClass. name / nativeType are stored up front so registration, lookup filtering and warm-parent seeding never force the heavy build. Mirror of tom_d4rt's LibraryClass.

Constructors

LibraryClass(BridgedClass bridgedClass, {String? sourceUri})
Eager wrapper: bridgedClass is already built.
LibraryClass.lazy(String name, Type nativeType, BridgedClass _thunk(), {String? sourceUri})
Lazy wrapper: thunk builds the bridge on first access to bridgedClass.

Properties

bridgedClass BridgedClass
The bridged class, built (and memoized) on first access.
no setter
hashCode int
The hash code for this object.
no setterinherited
name String
The class name — always available without building the bridge.
final
nativeType Type
The native Dart type the bridge wraps — available without building.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
sourceUri String?
final
thunk BridgedClass Function()
A deferred thunk resolving (and memoizing) bridgedClass on call.
no setter

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited