code: function(newContext, scopedCallback) {
      if ("production" !== process.env.NODE_ENV) {
        ("production" !== process.env.NODE_ENV ? warning(
          didWarn,
          'withContext is deprecated and will be removed in a future version. ' +
          'Use a wrapper component with getChildContext instead.'
        ) : null);
  
        didWarn = true;
      }
  
      var result;
      var previousContext = ReactContext.current;
      ReactContext.current = assign({}, previousContext, newContext);
      try {
        result = scopedCallback();
      } finally {
        ReactContext.current = previousContext;
      }
      return result;
    }
docs: Temporarily extends the current context while executing scopedCallback.
  
  A typical use case might look like
  
  render: function() {
  var children = ReactContext.withContext({foo: 'foo'}, () => (
  
  ));
  return <div>{children}</div>;
  }
  
  @param {object} newContext New context to merge into the existing context
  @param {function} scopedCallback Callback to run with the new context
  @return {ReactComponent|array<ReactComponent>}