UNPKG

@tsonic/dotnet

Version:

TypeScript type definitions for .NET 10 BCL (Base Class Library)

250 lines (190 loc) 8.9 kB
// Generated by tsbindgen - Architecture // Namespace: System.Diagnostics.SymbolStore // Assembly: System.Diagnostics.StackTrace, System.Private.CoreLib // Branded primitive types are sourced from @tsonic/types import type { sbyte, byte, short, ushort, int, uint, long, ulong, int128, uint128, half, float, double, decimal, nint, nuint, char } from '@tsonic/types'; // Import types from other namespaces import type { FieldAttributes, ParameterAttributes } from "../../System.Reflection/internal/index.js"; import * as System_Internal from "../../System/internal/index.js"; import type { Boolean as ClrBoolean, Byte, Enum, Guid, IComparable, IConvertible, IEquatable_1, IFormatProvider, IFormattable, Int32, IntPtr, ISpanFormattable, Object as ClrObject, String as ClrString, Type, TypeCode, ValueType, Void } from "../../System/internal/index.js"; // CLROf<T> - Maps ergonomic primitives to their CLR types for generic constraints // This utility is used ONLY in generic type arguments to satisfy CLR interface constraints // Value positions (parameters, return types) use lowercase primitives for ergonomics export type CLROf<T> = T extends sbyte ? System_Internal.SByte : T extends short ? System_Internal.Int16 : T extends int ? System_Internal.Int32 : T extends long ? System_Internal.Int64 : T extends int128 ? System_Internal.Int128 : T extends nint ? System_Internal.IntPtr : T extends byte ? System_Internal.Byte : T extends ushort ? System_Internal.UInt16 : T extends uint ? System_Internal.UInt32 : T extends ulong ? System_Internal.UInt64 : T extends uint128 ? System_Internal.UInt128 : T extends nuint ? System_Internal.UIntPtr : T extends half ? System_Internal.Half : T extends float ? System_Internal.Single : T extends double ? System_Internal.Double : T extends decimal ? System_Internal.Decimal : T extends char ? System_Internal.Char : T extends boolean ? System_Internal.Boolean : T extends string ? System_Internal.String : T; // Identity fallback for non-primitive types export enum SymAddressKind { ilOffset = 1, nativeRVA = 2, nativeRegister = 3, nativeRegisterRelative = 4, nativeOffset = 5, nativeRegisterRegister = 6, nativeRegisterStack = 7, nativeStackRegister = 8, bitField = 9, nativeSectionOffset = 10 } export interface ISymbolBinder$instance { getReader(importer: int, filename: string, searchPath: string): ISymbolReader; } export type ISymbolBinder = ISymbolBinder$instance; export interface ISymbolBinder1$instance { getReader(importer: nint, filename: string, searchPath: string): ISymbolReader; } export type ISymbolBinder1 = ISymbolBinder1$instance; export interface ISymbolDocument$instance { readonly URL: string; readonly documentType: Guid; readonly language: Guid; readonly languageVendor: Guid; readonly checkSumAlgorithmId: Guid; readonly hasEmbeddedSource: boolean; readonly sourceLength: int; findClosestLine(line: int): int; getCheckSum(): byte[]; getSourceRange(startLine: int, startColumn: int, endLine: int, endColumn: int): byte[]; } export type ISymbolDocument = ISymbolDocument$instance; export interface ISymbolDocumentWriter$instance { setCheckSum(algorithmId: Guid, checkSum: byte[]): void; setSource(source: byte[]): void; } export type ISymbolDocumentWriter = ISymbolDocumentWriter$instance; export interface ISymbolMethod$instance { readonly token: SymbolToken; readonly sequencePointCount: int; readonly rootScope: ISymbolScope; getNamespace(): ISymbolNamespace; getOffset(document: ISymbolDocument, line: int, column: int): int; getParameters(): ISymbolVariable[]; getRanges(document: ISymbolDocument, line: int, column: int): int[]; getScope(offset: int): ISymbolScope; getSequencePoints(offsets: int[], documents: ISymbolDocument[], lines: int[], columns: int[], endLines: int[], endColumns: int[]): void; getSourceStartEnd(docs: ISymbolDocument[], lines: int[], columns: int[]): boolean; } export type ISymbolMethod = ISymbolMethod$instance; export interface ISymbolNamespace$instance { readonly name: string; getNamespaces(): ISymbolNamespace[]; getVariables(): ISymbolVariable[]; } export type ISymbolNamespace = ISymbolNamespace$instance; export interface ISymbolReader$instance { readonly userEntryPoint: SymbolToken; getDocument(url: string, language: Guid, languageVendor: Guid, documentType: Guid): ISymbolDocument; getDocuments(): ISymbolDocument[]; getGlobalVariables(): ISymbolVariable[]; getMethod(method: SymbolToken, version: int): ISymbolMethod; getMethod(method: SymbolToken): ISymbolMethod; getMethodFromDocumentPosition(document: ISymbolDocument, line: int, column: int): ISymbolMethod; getNamespaces(): ISymbolNamespace[]; getSymAttribute(parent: SymbolToken, name: string): byte[]; getVariables(parent: SymbolToken): ISymbolVariable[]; } export type ISymbolReader = ISymbolReader$instance; export interface ISymbolScope$instance { readonly method: ISymbolMethod; readonly parent: ISymbolScope; readonly startOffset: int; readonly endOffset: int; getChildren(): ISymbolScope[]; getLocals(): ISymbolVariable[]; getNamespaces(): ISymbolNamespace[]; } export type ISymbolScope = ISymbolScope$instance; export interface ISymbolVariable$instance { readonly name: string; readonly attributes: unknown; readonly addressKind: SymAddressKind; readonly addressField1: int; readonly addressField2: int; readonly addressField3: int; readonly startOffset: int; readonly endOffset: int; getSignature(): byte[]; } export type ISymbolVariable = ISymbolVariable$instance; export interface ISymbolWriter$instance { closeMethod(): void; closeScope(endOffset: int): void; defineDocument(url: string, language: Guid, languageVendor: Guid, documentType: Guid): ISymbolDocumentWriter; defineField(parent: SymbolToken, name: string, attributes: FieldAttributes, signature: byte[], addrKind: SymAddressKind, addr1: int, addr2: int, addr3: int): void; defineGlobalVariable(name: string, attributes: FieldAttributes, signature: byte[], addrKind: SymAddressKind, addr1: int, addr2: int, addr3: int): void; defineLocalVariable(name: string, attributes: FieldAttributes, signature: byte[], addrKind: SymAddressKind, addr1: int, addr2: int, addr3: int, startOffset: int, endOffset: int): void; defineParameter(name: string, attributes: ParameterAttributes, sequence: int, addrKind: SymAddressKind, addr1: int, addr2: int, addr3: int): void; defineSequencePoints(document: ISymbolDocumentWriter, offsets: int[], lines: int[], columns: int[], endLines: int[], endColumns: int[]): void; initialize(emitter: nint, filename: string, fFullBuild: boolean): void; openNamespace(name: string): void; openScope(startOffset: int): int; setMethodSourceRange(startDoc: ISymbolDocumentWriter, startLine: int, startColumn: int, endDoc: ISymbolDocumentWriter, endLine: int, endColumn: int): void; setScopeRange(scopeID: int, startOffset: int, endOffset: int): void; setSymAttribute(parent: SymbolToken, name: string, data: byte[]): void; setUnderlyingWriter(underlyingWriter: nint): void; setUserEntryPoint(entryMethod: SymbolToken): void; } export type ISymbolWriter = ISymbolWriter$instance; export interface SymbolToken$instance { equals(obj: unknown): boolean; equals(obj: SymbolToken): boolean; getHashCode(): int; getToken(): int; } export const SymbolToken: { new(val: int): SymbolToken$instance; }; export interface __SymbolToken$views { As_IEquatable_1(): System_Internal.IEquatable_1$instance<SymbolToken>; // Structural method bridges for numeric interface constraints Equals(other: SymbolToken): boolean; } export type SymbolToken = SymbolToken$instance & __SymbolToken$views; export interface SymDocumentType$instance { } export const SymDocumentType: { new(): SymDocumentType$instance; readonly text: Guid; }; export type SymDocumentType = SymDocumentType$instance; export interface SymLanguageType$instance { } export const SymLanguageType: { new(): SymLanguageType$instance; readonly C: Guid; readonly cPlusPlus: Guid; readonly cSharp: Guid; readonly basic: Guid; readonly java: Guid; readonly cobol: Guid; readonly pascal: Guid; readonly ilAssembly: Guid; readonly jScript: Guid; readonly SMC: Guid; readonly mcPlusPlus: Guid; }; export type SymLanguageType = SymLanguageType$instance; export interface SymLanguageVendor$instance { } export const SymLanguageVendor: { new(): SymLanguageVendor$instance; readonly microsoft: Guid; }; export type SymLanguageVendor = SymLanguageVendor$instance;