Hi,
CPrimitive.getType() is used by the constructor of CPrimitiveObject to set the RMTypeName of the CPrimitiveObject.
Looking at the CPrimitives, there seems to be some inconsistencies:
CInteger → Integer
CString → String
CReal → Double
CBoolean → DvBoolean
CDuration → DvDuration
CTime → DvTime
CDate → DvDate
CDateTime → DvDateTime
All the DV* are not actually primitive types.
if I understand this correctly, the primitive types are listed in the Support IM and are - mostly - simple types as you’d know them from your programming language of choice, e.g. Boolean, String, Integer.
Thus, my understanding is that some of the CPrimitive.getType() values are incorrect.
CInteger → Integer (unchanged)
CString → String (unchanged)
CReal → Double (unchanged, although one could argue if Real as an assumed inbuilt type isn’t better suited)
CBoolean → Boolean (changed from DvBoolean)
// not sure what to do about these. The Java impl. uses them like primitive types, so this may be ok.
CDuration → DvDuration
CTime → DvTime
CDate → DvDate
CDateTime → DvDateTime
My suggestion is to change the getType() value for CBoolean to a simple “Boolean”.
Any comments?
Cheers
Sebastian