NativeSourceMap
Namespace: Dotsider.Core.Analysis.Models
Assembly: Dotsider.Core.dll
An address-sorted map from virtual address to source file and line, aggregated from a native
binary’s debug sidecar. Int32%40) resolves an instruction address to its source
location the way NativeSymbol%40) resolves an address to a symbol,
letting the disassembler annotate the listing with // file:line where the sidecar has data.
public sealed record NativeSourceMap : IEquatable<NativeSourceMap>Inheritance
Section titled “Inheritance”Object → NativeSourceMap
Implements
Section titled “Implements”Constructors
Section titled “Constructors”NativeSourceMap(IReadOnlyList<NativeSourceLine>)
Section titled “NativeSourceMap(IReadOnlyList<NativeSourceLine>)”An address-sorted map from virtual address to source file and line, aggregated from a native
binary’s debug sidecar. Int32%40) resolves an instruction address to its source
location the way NativeSymbol%40) resolves an address to a symbol,
letting the disassembler annotate the listing with // file:line where the sidecar has data.
Parameters:
Lines(IReadOnlyList<NativeSourceLine>): The source rows, sorted ascending by Address.
public NativeSourceMap(IReadOnlyList<NativeSourceLine> Lines)Properties
Section titled “Properties”The source rows, sorted ascending by Address.
Returns: IReadOnlyList<NativeSourceLine>
public IReadOnlyList<NativeSourceLine> Lines { get; init; }Methods
Section titled “Methods”Deconstruct(out IReadOnlyList<NativeSourceLine>)
Section titled “Deconstruct(out IReadOnlyList<NativeSourceLine>)”Parameters:
Lines(IReadOnlyList<NativeSourceLine>)
public void Deconstruct(out IReadOnlyList<NativeSourceLine> Lines)Equals(NativeSourceMap?)
Section titled “Equals(NativeSourceMap?)”Parameters:
other(NativeSourceMap)
Returns: Boolean
public bool Equals(NativeSourceMap? other)Equals(object?)
Section titled “Equals(object?)”Parameters:
obj(Object)
Returns: Boolean
public override bool Equals(object? obj)GetHashCode()
Section titled “GetHashCode()”Returns: Int32
public override int GetHashCode()ToString()
Section titled “ToString()”Returns: String
public override string ToString()TryGetLine(ulong, out string, out int)
Section titled “TryGetLine(ulong, out string, out int)”Resolves a virtual address to its source file and 1-based line, if mapped.
Parameters:
virtualAddress(UInt64): The instruction virtual address.file(String): The source file when found.line(Int32): The 1-based source line when found.
Returns: Boolean
True when the address falls within a mapped row; otherwise false.
public bool TryGetLine(ulong virtualAddress, out string file, out int line)Members
Section titled “Members”operator !=(NativeSourceMap?, NativeSourceMap?)
Section titled “operator !=(NativeSourceMap?, NativeSourceMap?)”Parameters:
left(NativeSourceMap)right(NativeSourceMap)
Returns: Boolean
public static bool operator !=(NativeSourceMap? left, NativeSourceMap? right)operator ==(NativeSourceMap?, NativeSourceMap?)
Section titled “operator ==(NativeSourceMap?, NativeSourceMap?)”Parameters:
left(NativeSourceMap)right(NativeSourceMap)
Returns: Boolean
public static bool operator ==(NativeSourceMap? left, NativeSourceMap? right)