Class DeclaredProperties

java.lang.Object
org.ek9lang.compiler.support.DeclaredProperties
All Implemented Interfaces:
Function<IAggregateSymbol, List<ISymbol>>

public final class DeclaredProperties extends Object implements Function<IAggregateSymbol, List<ISymbol>>
THE properties a type DECLARES itself, the property half of the fields an object of it carries (the other half, for a dynamic class, is CapturedVariables). Inherited properties are not here.

An enumeration has none (Steve, 2026-10-28, DFN-12 follow-up): its values (Red, Green) are constants of its own type held in its scope, not properties an object carries. Read as fields they made every enumeration a PropertyCycleMarker root with a meaningless self-cycle.

The two orders the halves are put together in are GeneratedOperatorFields (properties, then captures: the order a generated operator walks) and ConstructorProperties (captures, then properties: what a constructor is responsible for). Extracted 2026-10-29 (no-statics lane S3) from those two and a hand count in phase3/IsSetOperatorRequiredOrError.