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

from bu4.evaluation.constructs.eattachable import EAttachable
from bu4.linkable.constructs.parsed import Parsed
from bu4.linkable.evaluation.elvtype import elvtype
from bu4.transform.transform import transform

__all__ = ('evaluable_from_parsed',)


def evaluable_from_parsed(env: elvtype, parsed: Parsed):
    linked = transform(parsed.link(set(env)))
    return EAttachable(env, linked)