Skip to content

RtrSection

Namespace: Dotsider.Core.Analysis.Models

Assembly: Dotsider.Core.dll

One entry in a Native AOT binary’s ReadyToRun section table. Each section describes a runtime data region — frozen objects, GC statics, dehydrated data, or a readonly blob such as the embedded metadata — the way an ECMA-335 table describes a managed assembly.

public sealed record RtrSection : IEquatable<RtrSection>

ObjectRtrSection

RtrSection(int, string, ulong, long, int?)

Section titled “RtrSection(int, string, ulong, long, int?)”

One entry in a Native AOT binary’s ReadyToRun section table. Each section describes a runtime data region — frozen objects, GC statics, dehydrated data, or a readonly blob such as the embedded metadata — the way an ECMA-335 table describes a managed assembly.

Parameters:

  • SectionId (Int32): The ReadyToRunSectionType id (e.g. 206 = FrozenObjectRegion).
  • Name (String): A human-readable name for the section id.
  • VirtualAddress (UInt64): The section’s absolute virtual address.
  • Size (Int64): The section size in bytes, or 0 when the header does not record it.
  • FileOffset (Nullable<Int32>): The file offset the virtual address maps to, or null when the section exists only in memory (for example an ELF NOBITS region that the runtime fills at startup).
public RtrSection(int SectionId, string Name, ulong VirtualAddress, long Size, int? FileOffset)

The file offset the virtual address maps to, or null when the section exists only in memory (for example an ELF NOBITS region that the runtime fills at startup).

Returns: Nullable<Int32>

public int? FileOffset { get; init; }

A human-readable name for the section id.

Returns: String

public string Name { get; init; }

The ReadyToRunSectionType id (e.g. 206 = FrozenObjectRegion).

Returns: Int32

public int SectionId { get; init; }

The section size in bytes, or 0 when the header does not record it.

Returns: Int64

public long Size { get; init; }

The section’s absolute virtual address.

Returns: UInt64

public ulong VirtualAddress { get; init; }