All files / transpiler/types ISerializedSymbol.ts

0% Statements 0/0
0% Branches 0/0
0% Functions 0/0
0% Lines 0/0

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41                                                                                 
/**
 * Serialized symbol for JSON storage
 * Uses string values for enums to ensure clean JSON serialization
 */
interface ISerializedSymbol {
  /** Symbol name */
  name: string;
  /** Kind of symbol (function, variable, type, etc.) */
  kind: string;
  /** Type of the symbol */
  type?: string;
  /** Source file where the symbol is defined */
  sourceFile: string;
  /** Line number in the source file */
  sourceLine: number;
  /** Source language (c, cpp, cnext) */
  sourceLanguage: string;
  /** Whether this symbol is exported/public */
  isExported: boolean;
  /** Whether this is a declaration (not definition) */
  isDeclaration?: boolean;
  /** Function signature for overload detection */
  signature?: string;
  /** Parent namespace or class name */
  parent?: string;
  /** Access modifier for register members */
  accessModifier?: string;
  /** For arrays: element count. For integers: bit width */
  size?: number;
  /** Function parameters for header generation */
  parameters?: Array<{
    name: string;
    type: string;
    isConst: boolean;
    isArray: boolean;
    arrayDimensions?: string[];
  }>;
}
 
export default ISerializedSymbol;