Describe the bug
Not actually a bug, but the behaviour of the API is a bit surprising...
To Reproduce
typesystem = TypeSystem()
ExampleType = typesystem.create_type(name='example.Type')
typesystem.add_feature(type_=ExampleType, name='self', rangeTypeName='String')
typesystem.add_feature(type_=ExampleType, name='type', rangeTypeName='String')
annotation = ExampleType(self_="Test string1", type_="Test string2")
# Prints "Type" instead of whatever a Python class should print as
print(type(ExampleType).__name__)
# Prints "example_Type" instead of "ExampleType" (plus module)
print(type(annotation).__name__)
# Crashes because ExampleType is not actually a class
print(isinstance(annotation, ExampleType))
Describe the bug Not actually a bug, but the behaviour of the API is a bit surprising...
To Reproduce
Expected behavior