builtup4/bu4/linking/constructs/lnull.py

27 lines
786 B
Python

# Copyright (c) PARRRATE T&V 2021. All rights reserved.
from bu4.evaluation.av.envtype import envtype
from bu4.evaluation.constructs.enull import ENull
from bu4.evaluation.constructs.evaluable import Evaluable
from bu4.indexing.constructs.inull import INull
from bu4.indexing.states.indexingfinished import IndexingFinished
from bu4.indexing.states.indexingstate import IndexingState
from bu4.linking.constructs.linked import Linked
__all__ = ('LNull',)
class LNull(Linked):
def __init__(self):
self.future = set()
self.multifuture = set()
def evaluable(self, env: envtype) -> Evaluable:
return ENull()
def index(self, promise: list[bytes]) -> IndexingState:
return IndexingFinished(INull())
def __str__(self):
return '?'