src/engine/walkGlobal.js
function walkGlobal (taskName) {
  // Skip dot operator and tasks that start with a dot.
  if (taskName.indexOf('.') === 0) return

  // Skip stuff that may include dots:
  // * comments
  // * strings
  // * numbers
  // * references
  if (regexComment.test(taskName)) return
  if (parseFloat(taskName)) return
  if (regexQuoted.test(taskName)) return
  if (regexReference.test(taskName)) return

  function toNextProp (next, prop) {
    return next[prop]
  }

  return taskName.split('.')
    .reduce(toNextProp, globalContext)
}
function walkGlobal (taskName) {
  // Skip dot operator and tasks that start with a dot.
  if (taskName.indexOf('.') === 0) return

  // Skip stuff that may include dots:
  // * comments
  // * strings
  // * numbers
  // * references
  if (regexComment.test(taskName)) return
  if (parseFloat(taskName)) return
  if (regexQuoted.test(taskName)) return
  if (regexReference.test(taskName)) return

  function toNextProp (next, prop) {
    return next[prop]
  }

  return taskName.split('.')
    .reduce(toNextProp, globalContext)
}
function walkGlobal ( taskName ) { // Skip dot operator and tasks that start with a dot. if ( taskName . indexOf ( '.' ) === 0 ) return // Skip stuff that may include dots: // * comments // * strings // * numbers // * references if ( regexComment . test ( taskName ) ) return if ( parseFloat ( taskName ) ) return if ( regexQuoted . test ( taskName ) ) return if ( regexReference . test ( taskName ) ) return function toNextProp ( next , prop ) { return next [ prop ] } return taskName . split ( '.' ) . reduce ( toNextProp , globalContext ) }
Walk through global context.

process.version will return global[process][version]

@param {String} taskName
@returns {*} leaf
Walk through global context .