#  Copyright (c) PARRRATE T&V 2021. All rights reserved.

from bu4.evaluation.constructs.elinked import ELinked
from bu4.evaluation.av.envtype import envtype
from bu4.linking.prepare import prepare
from bu4.parsing.constructs.linked import Parsed

__all__ = ('evaluable_from_parsed',)


def evaluable_from_parsed(env: envtype, parsed: Parsed):
    linked = parsed.link(set(env))
    prepare(linked)
    return ELinked(env, linked)