The compose method creates a com.tubros.constraints.api.VariableName from the given root and the desired index.
The decompose method attempts to break apart the name based on
the ArrayNamingPolicy defined by this trait
.
The isArrayMember method determines whether or not the candidate
com.tubros.constraints.api.VariableName is an array variable
previously compose
d from root.
The isArrayName determines whether or not the candidate is a
com.tubros.constraints.api.VariableName previously compose
d by
this policy type.
The unlessArrayName method performs the opposite role of
whenArrayName
by only executing the block when the
candidate name is not an array name.
The whenArrayName method allows for higher-ordered functions to be
applied when the candidate name has been compose
d by this
policy.
The ArrayNamingPolicy type serves as a single point of truth for how a com.tubros.constraints.api.VariableName is created when the name references an EDSL scala.Array-style com.tubros.constraints.api.VariableName.