code: function getPointedValue(target, pointer) {
    // If not object, an exception will be thrown.
    if (!_.isPlainObject(target)) {
      throw new ReferenceError(ErrorMessage.INVALID_DOCUMENT_TYPE);
    }
  
    // target is already parsed, create an evaluator for it.
    var evaluator = createPointerEvaluator(target);
  
    // If no pointer was provided, return evaluator function.
    if (_.isUndefined(pointer)) {
      return evaluator;
    } else {
      return evaluator(pointer);
    }
  }
docs: Returns target object's value pointed by pointer, returns undefined
  if |pointer| points to non-existing value.
  If pointer is not provided, validates first argument and returns
  evaluator function that takes pointer as argument.
  
  @param {Object} target
  @param {string} [pointer]
  @returns {*} pointer JSON Pointer string