Skip to content

WasmModuleInfo

Namespace: Dotsider.Core.Analysis.Models

Assembly: Dotsider.Core.dll

Parsed facts for a WebAssembly module, including its functions and optional .NET symbol map.

public sealed record WasmModuleInfo : IEquatable<WasmModuleInfo>

ObjectWasmModuleInfo

WasmModuleInfo(int, IReadOnlyList<WasmSectionInfo>, IReadOnlyList<WasmTypeInfo>, IReadOnlyList<WasmImportInfo>, IReadOnlyList<WasmExportInfo>, IReadOnlyList<WasmFunctionInfo>, IReadOnlyList<WasmTableInfo>, IReadOnlyList<WasmMemoryInfo>, IReadOnlyList<WasmGlobalInfo>, IReadOnlyList<WasmElementSegmentInfo>, IReadOnlyList<WasmDataSegmentInfo>, IReadOnlyList<WasmTagInfo>, int?, int?, IReadOnlyList<string>, IReadOnlyList<string>, string?, WasmSymbolMapStatus, int, string?)

Section titled “WasmModuleInfo(int, IReadOnlyList<WasmSectionInfo>, IReadOnlyList<WasmTypeInfo>, IReadOnlyList<WasmImportInfo>, IReadOnlyList<WasmExportInfo>, IReadOnlyList<WasmFunctionInfo>, IReadOnlyList<WasmTableInfo>, IReadOnlyList<WasmMemoryInfo>, IReadOnlyList<WasmGlobalInfo>, IReadOnlyList<WasmElementSegmentInfo>, IReadOnlyList<WasmDataSegmentInfo>, IReadOnlyList<WasmTagInfo>, int?, int?, IReadOnlyList<string>, IReadOnlyList<string>, string?, WasmSymbolMapStatus, int, string?)”

Parsed facts for a WebAssembly module, including its functions and optional .NET symbol map.

Parameters:

public WasmModuleInfo(int Version, IReadOnlyList<WasmSectionInfo> Sections, IReadOnlyList<WasmTypeInfo> Types, IReadOnlyList<WasmImportInfo> Imports, IReadOnlyList<WasmExportInfo> Exports, IReadOnlyList<WasmFunctionInfo> Functions, IReadOnlyList<WasmTableInfo> Tables, IReadOnlyList<WasmMemoryInfo> Memories, IReadOnlyList<WasmGlobalInfo> Globals, IReadOnlyList<WasmElementSegmentInfo> Elements, IReadOnlyList<WasmDataSegmentInfo> DataSegments, IReadOnlyList<WasmTagInfo> Tags, int? StartFunctionIndex, int? DataCount, IReadOnlyList<string> TargetFeatures, IReadOnlyList<string> ProducerFields, string? SymbolMapPath, WasmSymbolMapStatus SymbolMapStatus, int SymbolMapEntryCount, string? Diagnostic)

The total byte count of all defined function instruction streams.

Returns: Int64

public long CodeSize { get; }

The data-count section value, when present.

Returns: Nullable<Int32>

public int? DataCount { get; init; }

The parsed data segments.

Returns: IReadOnlyList<WasmDataSegmentInfo>

public IReadOnlyList<WasmDataSegmentInfo> DataSegments { get; init; }

The total byte count of all data segments.

Returns: Int64

public long DataSize { get; }

The number of defined functions with code bodies in the module.

Returns: Int32

public int DefinedFunctionCount { get; }

The reason standard-section parsing stopped after the safely decoded prefix, or null when all standard sections were decoded.

Returns: String

public string? Diagnostic { get; init; }

The parsed element segments.

Returns: IReadOnlyList<WasmElementSegmentInfo>

public IReadOnlyList<WasmElementSegmentInfo> Elements { get; init; }

The parsed export entries.

Returns: IReadOnlyList<WasmExportInfo>

public IReadOnlyList<WasmExportInfo> Exports { get; init; }

Imported and defined functions in function-index order.

Returns: IReadOnlyList<WasmFunctionInfo>

public IReadOnlyList<WasmFunctionInfo> Functions { get; init; }

The parsed global declarations.

Returns: IReadOnlyList<WasmGlobalInfo>

public IReadOnlyList<WasmGlobalInfo> Globals { get; init; }

The number of imported functions in the module.

Returns: Int32

public int ImportedFunctionCount { get; }

The parsed import entries.

Returns: IReadOnlyList<WasmImportInfo>

public IReadOnlyList<WasmImportInfo> Imports { get; init; }

The parsed memory declarations.

Returns: IReadOnlyList<WasmMemoryInfo>

public IReadOnlyList<WasmMemoryInfo> Memories { get; init; }

Producer strings from the producers custom section.

Returns: IReadOnlyList<String>

public IReadOnlyList<string> ProducerFields { get; init; }

The section table in file order.

Returns: IReadOnlyList<WasmSectionInfo>

public IReadOnlyList<WasmSectionInfo> Sections { get; init; }

The start function index, when present.

Returns: Nullable<Int32>

public int? StartFunctionIndex { get; init; }

The number of parsed sidecar entries.

Returns: Int32

public int SymbolMapEntryCount { get; init; }

The symbol-map sidecar path, when loaded.

Returns: String

public string? SymbolMapPath { get; init; }

The symbol-map probe outcome.

Returns: WasmSymbolMapStatus

public WasmSymbolMapStatus SymbolMapStatus { get; init; }

The parsed table declarations.

Returns: IReadOnlyList<WasmTableInfo>

public IReadOnlyList<WasmTableInfo> Tables { get; init; }

The parsed exception tag declarations.

Returns: IReadOnlyList<WasmTagInfo>

public IReadOnlyList<WasmTagInfo> Tags { get; init; }

Feature names from the target_features custom section.

Returns: IReadOnlyList<String>

public IReadOnlyList<string> TargetFeatures { get; init; }

The parsed function type entries.

Returns: IReadOnlyList<WasmTypeInfo>

public IReadOnlyList<WasmTypeInfo> Types { get; init; }

The WebAssembly binary version.

Returns: Int32

public int Version { get; init; }

Deconstruct(out int, out IReadOnlyList<WasmSectionInfo>, out IReadOnlyList<WasmTypeInfo>, out IReadOnlyList<WasmImportInfo>, out IReadOnlyList<WasmExportInfo>, out IReadOnlyList<WasmFunctionInfo>, out IReadOnlyList<WasmTableInfo>, out IReadOnlyList<WasmMemoryInfo>, out IReadOnlyList<WasmGlobalInfo>, out IReadOnlyList<WasmElementSegmentInfo>, out IReadOnlyList<WasmDataSegmentInfo>, out IReadOnlyList<WasmTagInfo>, out int?, out int?, out IReadOnlyList<string>, out IReadOnlyList<string>, out string?, out WasmSymbolMapStatus, out int, out string?)

Section titled “Deconstruct(out int, out IReadOnlyList<WasmSectionInfo>, out IReadOnlyList<WasmTypeInfo>, out IReadOnlyList<WasmImportInfo>, out IReadOnlyList<WasmExportInfo>, out IReadOnlyList<WasmFunctionInfo>, out IReadOnlyList<WasmTableInfo>, out IReadOnlyList<WasmMemoryInfo>, out IReadOnlyList<WasmGlobalInfo>, out IReadOnlyList<WasmElementSegmentInfo>, out IReadOnlyList<WasmDataSegmentInfo>, out IReadOnlyList<WasmTagInfo>, out int?, out int?, out IReadOnlyList<string>, out IReadOnlyList<string>, out string?, out WasmSymbolMapStatus, out int, out string?)”

Parameters:

public void Deconstruct(out int Version, out IReadOnlyList<WasmSectionInfo> Sections, out IReadOnlyList<WasmTypeInfo> Types, out IReadOnlyList<WasmImportInfo> Imports, out IReadOnlyList<WasmExportInfo> Exports, out IReadOnlyList<WasmFunctionInfo> Functions, out IReadOnlyList<WasmTableInfo> Tables, out IReadOnlyList<WasmMemoryInfo> Memories, out IReadOnlyList<WasmGlobalInfo> Globals, out IReadOnlyList<WasmElementSegmentInfo> Elements, out IReadOnlyList<WasmDataSegmentInfo> DataSegments, out IReadOnlyList<WasmTagInfo> Tags, out int? StartFunctionIndex, out int? DataCount, out IReadOnlyList<string> TargetFeatures, out IReadOnlyList<string> ProducerFields, out string? SymbolMapPath, out WasmSymbolMapStatus SymbolMapStatus, out int SymbolMapEntryCount, out string? Diagnostic)

Parameters:

Returns: Boolean

public override bool Equals(object? obj)

Parameters:

Returns: Boolean

public bool Equals(WasmModuleInfo? other)

Returns: Int32

public override int GetHashCode()

Returns: String

public override string ToString()

operator !=(WasmModuleInfo?, WasmModuleInfo?)

Section titled “operator !=(WasmModuleInfo?, WasmModuleInfo?)”

Parameters:

Returns: Boolean

public static bool operator !=(WasmModuleInfo? left, WasmModuleInfo? right)

operator ==(WasmModuleInfo?, WasmModuleInfo?)

Section titled “operator ==(WasmModuleInfo?, WasmModuleInfo?)”

Parameters:

Returns: Boolean

public static bool operator ==(WasmModuleInfo? left, WasmModuleInfo? right)