Commit 6db0a66d by Aaron Leung

Some cleanup.

parent de3aadc3
......@@ -722,23 +722,6 @@ namespace Sass {
bind_arguments("function " + f.name, f.parameters, args, prefix, bindings, f_env, new_Node, ctx);
return f.primitive(f.parameter_names, bindings, new_Node);
}
// else if (f.primitive) {
// map<Token, Node> bindings;
// // bind arguments
// for (size_t i = 0, j = 0, S = args.size(); i < S; ++i) {
// if (args[i].type() == Node::assignment) {
// Node arg(args[i]);
// Token name(arg[0].token());
// bindings[name] = eval(arg[1], prefix, env, f_env, new_Node, ctx);
// }
// else {
// // TO DO: ensure (j < f.parameters.size())
// bindings[f.parameters[j].token()] = eval(args[i], prefix, env, f_env, new_Node, ctx);
// ++j;
// }
// }
// return f(bindings, new_Node);
// }
else {
Node params(f.definition[1]);
Node body(new_Node(f.definition[2]));
......
......@@ -13,20 +13,16 @@ namespace Sass {
using std::map;
// typedef Node (*Primitive)(const Node, map<Token, Node>&, Node_Factory& new_Node);
typedef Node (*Primitive)(const Node, Environment&, Node_Factory&);
typedef const char* str;
typedef const char Signature[];
struct Function {
string name;
// vector<Token> parameters;
Node parameters;
Node parameter_names;
Node definition;
Primitive primitive;
// Primitive_2 primitive_2;
bool overloaded;
Function()
......@@ -52,22 +48,6 @@ namespace Sass {
Function(char* signature, Primitive ip, Context& ctx);
// Function(Function_Descriptor d, Primitive ip, Node_Factory& new_Node)
// : name(d[0]),
// parameters(new_Node(Node::parameters, "[PRIMITIVE FUNCTIONS]", 0, 0)),
// definition(Node()),
// primitive(ip),
// overloaded(false)
// {
// size_t len = 0;
// while (d[len+1]) ++len;
// for (size_t i = 0; i < len; ++i) {
// const char* p = d[i+1];
// parameters.push_back(new_Node(Node::variable, "[PRIMITIVE FUNCTIONS]", 0, Token::make(p, p + std::strlen(p))));
// }
// }
Node operator()(Environment& bindings, Node_Factory& new_Node) const
{
if (primitive) return primitive(parameters, bindings, new_Node);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment