code: function (source) {
  			walker.init(source);
  			session.tokens = [];
  
  			// for empty source, return single space token
  			if (!source) {
  				session.tokens.push(this.white());
  			} else {
  				while (walker.ch !== '') {
  					tokenize();
  				}
  			}
  
  			var tokens = session.tokens;
  			session.tokens = null;
  			return tokens;
  		}
docs: Sprits given source into tokens
  @param {String} source
  @returns {Array}