Changeset 49:cdd4cf3eda0c in rrlib_rtti_conversion for tCompiledConversionOperation.h
- Timestamp:
- 08.02.2022 07:22:43 (12 months ago)
- Branch:
- 17.03
- Phase:
- public
- Tags:
- tip
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
tCompiledConversionOperation.h
r40 r49 95 95 }; 96 96 97 tCompiledConversionOperation() : tConversionOperationSequence(), conversion_function_first(nullptr), conversion_function_final(nullptr), fixed_offset_first(0), fixed_offset_final(0), flags(0) 97 tCompiledConversionOperation() : tConversionOperationSequence(), conversion_function_first(nullptr), conversion_function_final(nullptr), fixed_offset_first(0), fixed_offset_final(0), flags(0), destination_pointer_type(&typeid(tTypedPointer)) 98 98 { 99 99 memset(custom_operation_data_storage, 0, sizeof(custom_operation_data_storage)); … … 139 139 { 140 140 assert(flags & tFlag::cRESULT_REFERENCES_SOURCE_DIRECTLY); 141 assert(typeid(tTypedPointer) == *destination_pointer_type && "This convert function required default destination_pointer_type"); 141 142 tTypedConstPointer result(static_cast<const char*>(source_object.GetRawDataPointer()) + fixed_offset_first, type_after_first_fixed_offset); 142 143 if (get_destination_reference_function_first != nullptr) … … 155 156 156 157 /*! 158 * return Type of destination_object used when calling Convert 159 */ 160 const std::type_info& DestinationPointerType() const 161 { 162 return *destination_pointer_type; 163 } 164 165 /*! 157 166 * \return Flags for conversion operation 158 167 */ … … 217 226 char* custom_operation_data_storage[2 * tCustomOperationData::cMAX_SIZE]; 218 227 228 /*! Type of destination_object used calling Convert; may be subclass of tTypedPointer; set when compiling */ 229 const std::type_info* destination_pointer_type; 230 219 231 tCustomOperationData CustomOperationData(size_t index) 220 232 {
Note: See TracChangeset
for help on using the changeset viewer.