code: function () {
                      var ch, name, index = parserInput.i;
  
                      parserInput.save();
                      if (parserInput.currentChar() === '@' && (name = parserInput.$re(/^@@?[\w-]+/))) {
                          ch = parserInput.currentChar();
                          if (ch === '(' || ch === '[' && !parserInput.prevChar().match(/^\s/)) {
                              // this may be a VariableCall lookup
                              var result = parsers.variableCall(name);
                              if (result) {
                                  parserInput.forget();
                                  return result;
                              }
                          }
                          parserInput.forget();
                          return new(tree.Variable)(name, index, fileInfo);
                      }
                      parserInput.restore();
                  }
docs: A Variable entity, such as `@fink`, in  width: @fink + 2px  We use a different parser for variable definitions, see `parsers.variable`.