Or maybe what we want is an AbstractExpression.DeclaredType nested class with three data members and a factory method -- we could save some memory by pre-defining one reusable instance for each of the fixed-length types and only allocate new instances for VARCHAR and VARBINARY -- some of the VoltType methods could be moved (maybe?) to this more specific class? This is just an idea, not a priority.