Strumenta / pylasu

Apache License 2.0
24 stars 4 forks source link

Add case insensitive symbol lookup in Scope and inherit @internal_properties #34

Open thatsOven opened 1 month ago

thatsOven commented 1 month ago

Adds feature described in issue #9.

The feature is implemented in such a way that the necessary mappings for case insensitive lookups are generated on the fly and cached when such a lookup is requested, and then dynamically get updated with each symbol addition. This way, no time or memory is wasted in case a case insensitive lookup is never performed.

Also addresses issue #25.

Internal properties are now added onto existing ones through the @internal_properties decorator. This means that subclasses can inherit __internal_properties__ from relative superclasses without overwriting them.