ModuleInfo class

Module descriptor.

  • isCpp — at least one platform uses direct C++ (broad; used for System.loadLibrary, Swift-bridge skipping, stub file creation).
  • isNativeCpp — android or linux uses direct C++ (narrow; used for src/CMakeLists.txt HybridXxx.cpp inclusion).
  • iosIsCpp / macosIsCpp — per-Apple-platform C++ flags (used for per-platform forwarder decisions and auto-register platform guards).

Constructors

ModuleInfo({required String lib, required String module, required bool isCpp, bool isNativeCpp = false, bool isAndroidCpp = false, bool iosIsCpp = false, bool macosIsCpp = false, bool windowsIsCpp = false, bool linuxIsCpp = false, bool windowsRequestsSeparateImpl = false, bool linuxRequestsSeparateImpl = false, bool webIsWasm = false})
const

Properties

hashCode → int
The hash code for this object.
no setterinherited
iosIsCpp → bool
final
isAndroidCpp → bool
True only when android: NativeImpl.cpp — distinct from isNativeCpp which is true for android OR linux. Used to generate the correct auto-register platform guard: Linux-only C++ must exclude ANDROID.
final
isCpp → bool
final
isNativeCpp → bool
final
lib → String
final
linuxIsCpp → bool
True when linux: NativeImpl.cpp — distinct from isNativeCpp (android OR linux).
final
linuxRequestsSeparateImpl → bool
Same as windowsRequestsSeparateImpl, for linux: LinuxNativeImpl.cpp.
final
macosIsCpp → bool
final
module → String
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
webIsWasm → bool
True when web: NativeImpl.wasm — the module ships an Emscripten build (web/build_web.sh → assets/web/ artifacts).
final
windowsIsCpp → bool
True when windows: NativeImpl.cpp — the shared src/ stub is compiled on Windows too (windows/CMakeLists.txt delegates to ../src), so the auto-register guard must include _WIN32.
final
windowsRequestsSeparateImpl → bool
True when the annotation used windows: WindowsNativeImpl.cpp (the specific marker) rather than windows: NativeImpl.cpp (the generic shorthand) — see PlatformTargetAnalyzer.requestsSeparateWindowsImpl. An explicit, immediate request for Windows to get its own impl file.
final

Methods

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

Operators

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