public AstVarBinding Update(AstVarExpression var, AstExpression value)
        {
            if (var == _var && value == _value)
            {
                return(this);
            }

            return(new AstVarBinding(_var, value));
        }
 public AstVarBinding(AstVarExpression var, AstExpression value)
 {
     _var   = Ensure.IsNotNull(var, nameof(var));
     _value = Ensure.IsNotNull(value, nameof(value));
 }