class_docstr: :param name: Either a name or a list of option strings, e.g. foo or -f, --foo.
  :param default: The value produced if the argument is absent from the request.
  :param dest: The name of the attribute to be added to the object
      returned by :meth:`~reqparse.RequestParser.parse_args()`.
  :param bool required: Whether or not the argument may be omitted (optionals only).
  :param string action: The basic type of action to be taken when this argument
      is encountered in the request. Valid options are "store" and "append".
  :param bool ignore: Whether to ignore cases where the argument fails type conversion
  :param type: The type to which the request argument should be converted.
      If a type raises an exception, the message in the error will be returned in the response.
      Defaults to :class:`unicode` in python2 and :class:`str` in python3.
  :param location: The attributes of the :class:`flask.Request` object
      to source the arguments from (ex: headers, args, etc.), can be an
      iterator. The last item listed takes precedence in the result set.
  :param choices: A container of the allowable values for the argument.
  :param help: A brief description of the argument, returned in the
      response when the argument is invalid. May optionally contain
      an "{error_msg}" interpolation token, which will be replaced with
      the text of the error raised by the type converter.
  :param bool case_sensitive: Whether argument values in the request are
      case sensitive or not (this will convert all values to lowercase)
  :param bool store_missing: Whether the arguments default value should
      be stored if the argument is missing from the request.
  :param bool trim: If enabled, trims whitespace around the argument.
  :param bool nullable: If enabled, allows null value in argument.
class_docstr_tok: [":","param","name",":","Either","a","name","or","a","list","of","option","strings",",","e.g",".","foo","or","-f",",","--","foo",".",":","param","default",":","The","value","produced","if","the","argument","is","absent","from","the","request",".",":","param","dest",":","The","name","of","the","attribute","to","be","added","to","the","object","returned","by",":","meth",":","`","~reqparse.RequestParser.parse_args","(",")","`",".",":","param","bool","required",":","Whether","or","not","the","argument","may","be","omitted","(","optionals","only",")",".",":","param","string","action",":","The","basic","type","of","action","to","be","taken","when","this","argument","is","encountered","in","the","request",".","Valid","options","are","``","store","''","and","``","append","''",".",":","param","bool","ignore",":","Whether","to","ignore","cases","where","the","argument","fails","type","conversion",":","param","type",":","The","type","to","which","the","request","argument","should","be","converted",".","If","a","type","raises","an","exception",",","the","message","in","the","error","will","be","returned","in","the","response",".","Defaults","to",":","class",":","`","unicode","`","in","python2","and",":","class",":","`","str","`","in","python3",".",":","param","location",":","The","attributes","of","the",":","class",":","`","flask.Request","`","object","to","source","the","arguments","from","(","ex",":","headers",",","args",",","etc",".",")",",","can","be","an","iterator",".","The","last","item","listed","takes","precedence","in","the","result","set",".",":","param","choices",":","A","container","of","the","allowable","values","for","the","argument",".",":","param","help",":","A","brief","description","of","the","argument",",","returned","in","the","response","when","the","argument","is","invalid",".","May","optionally","contain","an","``","{","error_msg","}","''","interpolation","token",",","which","will","be","replaced","with","the","text","of","the","error","raised","by","the","type","converter",".",":","param","bool","case_sensitive",":","Whether","argument","values","in","the","request","are","case","sensitive","or","not","(","this","will","convert","all","values","to","lowercase",")",":","param","bool","store_missing",":","Whether","the","arguments","default","value","should","be","stored","if","the","argument","is","missing","from","the","request",".",":","param","bool","trim",":","If","enabled",",","trims","whitespace","around","the","argument",".",":","param","bool","nullable",":","If","enabled",",","allows","null","value","in","argument","."]
docstr: Pulls values off the request in the provided location
  :param request: The flask request object to parse arguments from
docstr_tok: ["Pulls","values","off","the","request","in","the","provided","location",":","param","request",":","The","flask","request","object","to","parse","arguments","from"]
code: def source(self, request):
      """
      Pulls values off the request in the provided location
      :param request: The flask request object to parse arguments from
      """
      if isinstance(self.location, six.string_types):
          value = getattr(request, self.location, MultiDict())
          if callable(value):
              value = value()
          if value is not None:
              return value
      else:
          values = MultiDict()
          for l in self.location:
              value = getattr(request, l, None)
              if callable(value):
                  value = value()
              if value is not None:
                  values.update(value)
          return values
  
      return MultiDict()
  
imports: from __future__ import unicode_literals
  import decimal
  import six
  from copy import deepcopy
  from flask import current_app, request
  from werkzeug.datastructures import MultiDict, FileStorage
  from werkzeug import exceptions
  from .errors import abort, SpecsError
  from .marshalling import marshal
  from .model import Model
  from ._http import HTTPStatus
label_desc: Use image node_id 2 for calling the Argument obj's underlying member method code with example usage: obj.source(request) and returns: MultiDict, values, value