All files / PARSE/4-Resolve/types IForeignValue.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                                   
/**
 * A value a C or C++ header declares, as 1.4 needs it for a constant
 * expression (#1175): a variable's element type and dimensions, which a
 * length property measures; or a function. Neither is a constant expression
 * in C -- not even an `extern const` object -- so neither is a dimension.
 */
type IForeignValue =
  | {
      readonly kind: "variable";
      /** The element's C type, which C-Next does not measure */
      readonly type: string;
      /** Empty for a scalar */
      readonly dimensions: ReadonlyArray<number | string>;
    }
  | { readonly kind: "function" };
 
export default IForeignValue;