whole_func_string: function () {
                  var entities = this.entities, negate;
  
                  if (parserInput.peek(/^-[@\$\(]/)) {
                      negate = parserInput.$char('-');
                  }
  
                  var o = this.sub() || entities.dimension() ||
                          entities.color() || entities.variable() ||
                          entities.property() || entities.call() ||
                          entities.quoted(true) || entities.colorKeyword() ||
                          entities.mixinLookup();
  
                  if (negate) {
                      o.parensInOp = true;
                      o = new(tree.Negative)(o);
                  }
  
                  return o;
              }
func_code_string: function () {
                  var entities = this.entities, negate;
  
                  if (parserInput.peek(/^-[@\$\(]/)) {
                      negate = parserInput.$char('-');
                  }
  
                  var o = this.sub() || entities.dimension() ||
                          entities.color() || entities.variable() ||
                          entities.property() || entities.call() ||
                          entities.quoted(true) || entities.colorKeyword() ||
                          entities.mixinLookup();
  
                  if (negate) {
                      o.parensInOp = true;
                      o = new(tree.Negative)(o);
                  }
  
                  return o;
              }
func_documentation_string: An operand is anything that can be part of an operation, such as a Color, or a Variable