Enum Class ValueClassId
- All Implemented Interfaces:
Serializable, Comparable<ValueClassId>, Constable
THE shared value-class vocabulary for the input-variation metric — one taxonomy, three consumers
(
docs/implementation/EK9_INPUT_VARIATION_CLASS_TAXONOMY.md):
- the denominator counter (
EquivalenceClassModel) — counts distinct ids per type for the static opportunity space; - the runtime classifier (
INPUT_CLASS_PROBErecorder) — places an actual runtime value into one of these ids for the dynamic numerator (design §5); - the generator (
EdgeValuePool, compiler-services) — holds representative literals per id forek9_generate_edge_case_tests.
Generic ordinal ids (ZERO, MIN, MAX, …) are reused across every
ordered type so the pairwise-combination logic and coverage reports speak one vocabulary;
family-specific ids (LEAP_DATE, CROSS_CURRENCY, …) name genuine domain edges
worth surfacing on their own ("you never tested the leap-day class").
Persisted contract — append-only. Once these ids appear in squirrelled data / directives / recorded numerators they are a stable contract; add new ids at the end of their family, never renumber or remove (design §12.7).
-
Nested Class Summary
Nested classes/interfaces inherited from class Enum
Enum.EnumDesc<E> -
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionWhitespace-only.Money in a different currency — categorical edge.Midnight / 24h rollover."" — set but zero length.Reference origin (acts as MIN for Date/Time).Smallest-magnitude non-zero (± held as literals).Feb 29 — calendrical edge.Long string — buffer / length boundary.Type / domain upper bound.Type / domain lower bound.Just inside max (max-1) — off-by-one boundary.Just inside min (min+1) — off-by-one boundary.Representative negative.NaN / ±infinity — only if EK9 Float exposes them (taxonomy open question).Representative small positive."Value present, no further distinction" — opaque types only.One character.Money 0.01, Dimension 1mm — minimal representable step.Punctuation / non-alphanumeric.Representative interior value (mid-range).Sub-unit rollover (1000ms = 1s, 60s = 1min, …).Tri-state unset — always present for every EK9 type, always counts.Additive identity / origin. -
Method Summary
Modifier and TypeMethodDescriptionstatic ValueClassIdReturns the enum constant of this class with the specified name.static ValueClassId[]values()Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
UNSET
Tri-state unset — always present for every EK9 type, always counts. -
SET
"Value present, no further distinction" — opaque types only. -
ZERO
Additive identity / origin. -
NEGATIVE
Representative negative. -
POSITIVE
Representative small positive. -
TYPICAL
Representative interior value (mid-range). -
MIN
Type / domain lower bound. -
MAX
Type / domain upper bound. -
NEAR_MIN
Just inside min (min+1) — off-by-one boundary. -
NEAR_MAX
Just inside max (max-1) — off-by-one boundary. -
EPSILON
Smallest-magnitude non-zero (± held as literals). -
NON_FINITE
NaN / ±infinity — only if EK9 Float exposes them (taxonomy open question). -
EMPTY
"" — set but zero length. -
BLANK
Whitespace-only. -
SINGLE_CHAR
One character. -
SPECIAL_CHARS
Punctuation / non-alphanumeric. -
LONG
Long string — buffer / length boundary. -
LOWER_ALPHA
-
UPPER_ALPHA
-
DIGIT
-
WHITESPACE_CHAR
-
EPOCH
Reference origin (acts as MIN for Date/Time). -
LEAP_DATE
Feb 29 — calendrical edge. -
DAY_BOUNDARY
Midnight / 24h rollover. -
UNIT_BOUNDARY
Sub-unit rollover (1000ms = 1s, 60s = 1min, …). -
SMALLEST_UNIT
Money 0.01, Dimension 1mm — minimal representable step. -
CROSS_CURRENCY
Money in a different currency — categorical edge. -
ALL_ZEROS
-
ALL_ONES
-
SINGLE_BIT
-
BIT_PATTERN
-
EMPTY_COLLECTION
-
SINGLETON
-
FEW
-
LARGE_COLLECTION
-
HAS_DUPLICATES
-
HAS_UNSET_ELEMENT
-
SORTED
-
UNSORTED
-
TRUE
-
FALSE
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum class has no constant with the specified nameNullPointerException- if the argument is null
-