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
Given the following code, one might expect the getter _get_bar to cause a TraitError, since the returned value (a string) is incompatible with the type declared in the Property (Int()). However, no TraitError is issued (or at least, not visibly).
you can define a Property trait by simply passing another trait. For example:
source = Property( Code )
This line defines a trait whose value is validated by the Code trait, and whose getter and setter methods are defined elsewhere on the same class.
I doubt that we could change the behaviour now without breaking lots of code, but we could at least update the documentation to be accurate.
Example code:
fromtraits.apiimportHasStrictTraits, Int, PropertyclassA(HasStrictTraits):
foo=Int()
bar=Property(Int(), observe="foo")
def_get_bar(self):
return"definitely not an integer"a=A(foo=43)
print(a.bar)
The text was updated successfully, but these errors were encountered:
Given the following code, one might expect the getter
_get_bar
to cause aTraitError
, since the returned value (a string) is incompatible with the type declared in theProperty
(Int()
). However, noTraitError
is issued (or at least, not visibly).The docs suggest that the intent is to validate:
I doubt that we could change the behaviour now without breaking lots of code, but we could at least update the documentation to be accurate.
Example code:
The text was updated successfully, but these errors were encountered: