docs: function callContext(
  		/*object*/ self,
  		/*object*/ data,
  		/*int*/ index,
  		/*int*/ count,
  		/*object*/ args,
  		/*function*/ method,
  		/*Array*/ methodArgs) {
  
  		try {
  			// setup context for code block
  			self.data = ('undefined' !== typeof data) ? data : null;
  			self.index = isFinite(index) ? Number(index) : NaN;
  			self.count = isFinite(count) ? Number(count) : NaN;
  			self.args = ('undefined' !== typeof args) ? args : null;
  
  			// execute node in the context of self as 'this', passing in any parameters
  			return method.apply(self, methodArgs || []);
  
  		} finally {
  			// cleanup contextual members
  			delete self.count;
  			delete self.index;
  			delete self.data;
  			delete self.args;
  		}
  	}