You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Tapper does not consider custom type mappers for types.
This makes it impossible to map types that cannot be marked as [TranspilationSource], for example types that have been defined in an external package (also related to #133).
Tapper should fetch custom ITypeTranslators from the transpiled project file.
For this, we probably need another attribute to mark type mappers as mappers for specific types.
Proposal: [TypeTranslator(params Type[] sourceTypes)]
This should work with normal types, and generic types (e.g. Optional<T>) as well as concrete generic types (e.g. Optional<string>).
#164 already adds the foundation for generic type transliation, but support for concrete generic type translation is still missing here.
After this has been implemented, it should be fairly easy to define the TypeTranslator attribute.
The text was updated successfully, but these errors were encountered:
After thinking about this and experimenting a bit, I think it's best we support two scenarios:
Support custom type converters (similar to a type translator, but only for the actual type definition without the export type MyType = ). These should be used to transpile the type definitions inside the default ITypeTranslator. Imo, these should work for all types, not just the ones marked with [TranspilationSource] to support custom type converters for external types.
Support custom type mappers like the ones for collection and dictionary types.
However, I think 2 isn't really necessary if we support generic type translation and support custom type converters.
Tapper does not consider custom type mappers for types.
This makes it impossible to map types that cannot be marked as
[TranspilationSource]
, for example types that have been defined in an external package (also related to #133).Tapper should fetch custom
ITypeTranslator
s from the transpiled project file.For this, we probably need another attribute to mark type mappers as mappers for specific types.
Proposal:
[TypeTranslator(params Type[] sourceTypes)]
This should work with normal types, and generic types (e.g.
Optional<T>
) as well as concrete generic types (e.g.Optional<string>
).#164 already adds the foundation for generic type transliation, but support for concrete generic type translation is still missing here.
After this has been implemented, it should be fairly easy to define the
TypeTranslator
attribute.The text was updated successfully, but these errors were encountered: