All files / PARSE/4-Resolve/types ISettledConstants.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                                               
import type TEnumMemberValue from "../../../types/TEnumMemberValue";
import type TSettledConst from "../../../types/TSettledConst";
 
/**
 * The program's compile-time values, settled once by 1.4 Resolve (#1175,
 * #1669): every file-scope and scope const that has a value, and every C-Next
 * enum's member values, by C name.
 */
interface ISettledConstants {
  /** Each const that has settled, by C name: its value, or why it has none */
  readonly consts: ReadonlyMap<string, TSettledConst>;
  readonly enums: ReadonlyMap<string, ReadonlyArray<TEnumMemberValue>>;
  /**
   * While 1.4 settles: an enum some of whose members are still waiting, with
   * the values it has so far. A member that has one is final; a member that
   * does not is not yet known, so a reader waits on the enum (#1863 review:
   * settling a whole enum at a time made declaration order decide). Empty once
   * settling ends.
   */
  readonly partialEnums?: ReadonlyMap<string, ReadonlyArray<TEnumMemberValue>>;
}
 
export default ISettledConstants;