pygritia.item module

Provides ItemMixin mixin class It provides item accessor support to the Lazy class

class pygritia.item.Item(target: Any, index: Any)[source]

Bases: pygritia.core.LazyAction

Item accessor

evaluate(namespace: Mapping[Union[str, LazyMixin], Any]) → Any[source]

Evaluate expression

To substitute actual value for specific symbol, give value with keyword argument.

index
target
update(val: Any, namespace: Mapping[Union[str, LazyMixin], Any]) → None[source]

Update value of expression

If the expression is readonly, it raises AttributeError

class pygritia.item.ItemMixin(action: pygritia.core.LazyAction, origin: Optional[LazyMixin] = None)[source]

Bases: pygritia.core.LazyMixin

Attribute access support

Substitution to lazy expression is not supported

NOTICE: Dunder magic methods are not lazily evaluated and applied to expression object.