#[non_exhaustive]pub struct Module {Show 29 fields
pub name: Option<String>,
pub kind: Option<String>,
pub package_name: Option<String>,
pub src_entry: Option<String>,
pub main_element: Option<String>,
pub description: Option<String>,
pub process: Option<String>,
pub device_types: Vec<String>,
pub virtual_machine: Option<String>,
pub compile_mode: Option<String>,
pub installation_free: Option<bool>,
pub delivery_with_install: Option<bool>,
pub compress_native_libs: Option<bool>,
pub isolation_mode: Option<String>,
pub pages: Option<String>,
pub router_map: Option<String>,
pub app_startup: Option<String>,
pub target_module_name: Option<String>,
pub target_priority: Option<i64>,
pub metadata: Vec<Metadata>,
pub dependencies: Vec<Dependency>,
pub proxy_data: Vec<ProxyData>,
pub query_schemes: Vec<String>,
pub abilities: Vec<Ability>,
pub extension_abilities: Vec<Ability>,
pub request_permissions: Vec<RequestPermission>,
pub define_permissions: Vec<DefinePermission>,
pub test_runner: Option<TestRunner>,
pub atomic_service: Option<AtomicService>,
}Expand description
The module object.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: Option<String>name: the module name, unique within the bundle.
kind: Option<String>entry, feature, har or shared.
package_name: Option<String>The module’s package name: its key in pkgContextInfo.json.
src_entry: Option<String>Source of the module’s AbilityStage.
main_element: Option<String>mainElement: the ability or extension that starts first.
description: Option<String>description: usually a $string: resource reference.
process: Option<String>process: the process name the module runs in.
device_types: Vec<String>deviceTypes: phone, tablet, 2in1, wearable…
virtual_machine: Option<String>virtualMachine: the runtime the code targets, e.g. ark12.0.2.0.
compile_mode: Option<String>compileMode: esmodule or jsbundle.
installation_free: Option<bool>installationFree: whether the module runs without installation (atomic service).
delivery_with_install: Option<bool>deliveryWithInstall: whether the module is installed with the app.
compress_native_libs: Option<bool>compressNativeLibs: whether the .so files are stored compressed.
isolation_mode: Option<String>isolationMode: whether the module runs in an isolated process.
pages: Option<String>$profile: reference to the page list.
router_map: Option<String>$profile: reference to the navigation route table.
app_startup: Option<String>$profile: reference to the startup task configuration.
target_module_name: Option<String>targetModuleName: the module an overlay module applies to.
target_priority: Option<i64>targetPriority: the overlay’s priority over its target.
metadata: Vec<Metadata>metadata: custom key/value entries of the module.
dependencies: Vec<Dependency>dependencies: shared packages the module links against.
proxy_data: Vec<ProxyData>proxyData: data the module shares through the data-share proxy.
query_schemes: Vec<String>URL schemes the module may probe with canOpenLink.
abilities: Vec<Ability>abilities: the module’s UIAbilities.
extension_abilities: Vec<Ability>extensionAbilities: the module’s extension abilities.
request_permissions: Vec<RequestPermission>requestPermissions: permissions the module asks for.
define_permissions: Vec<DefinePermission>definePermissions: permissions the module declares for others.
test_runner: Option<TestRunner>testRunner: the test runner of a test module.
atomic_service: Option<AtomicService>atomicService: settings of an atomic-service module.