devrc 0.6.0

devrc is an easy to use task runner tool on steroids for developers
Documentation
use crate::{errors::DevrcResult, scope::Scope, template::render_string};

pub trait Evaluatable {
    // TODO: create default implementation for Variables and Environment variables
    // Evaluate variable body or environment variable
    fn evaluate(&self, name: &str, parent_scope: &Scope) -> DevrcResult<String>;
}

impl Evaluatable for String {
    fn evaluate(&self, name: &str, scope: &Scope) -> DevrcResult<String> {
        render_string(name, self, scope)
    }
}

impl Evaluatable for &String {
    fn evaluate(&self, name: &str, scope: &Scope) -> DevrcResult<String> {
        render_string(name, self, scope)
    }
}