original_docstring: 
      This filter basically works like the normal subscript expression but
      it doesn't fall back to attribute lookup. If an item does not exist for
      an object undefined is returned.
  
      .. sourcecode:: jinja
  
          {{ foo.bar }} -> {{ foo|getitem('bar') }}
  
      *New in Jinja 1.2*
      
docstring: This filter basically works like the normal subscript expression but
  it doesn't fall back to attribute lookup. If an item does not exist for
  an object undefined is returned.
  
  : jinja
  
  
  
  
docstring_tokens: This filter basically works like the normal subscript expression but it doesn ' t fall back to attribute lookup . If an item does not exist for an object undefined is returned . : jinja
code: def do_getitem(key):
      """
      This filter basically works like the normal subscript expression but
      it doesn't fall back to attribute lookup. If an item does not exist for
      an object undefined is returned.
  
      .. sourcecode:: jinja
  
          {{ foo.bar }} -> {{ foo|getitem('bar') }}
  
      *New in Jinja 1.2*
      """
      def wrapped(env, context, value):
          try:
              return value[key]
          except (TypeError, KeyError, IndexError, AttributeError):
              return env.undefined_singleton
      return wrapped
code_tokens: def do_getitem ( key ) : def wrapped ( env , context , value ) : try : return value [ key ] except ( TypeError , KeyError , IndexError , AttributeError ) : return env . undefined_singleton return wrapped
short_docstring: This filter basically works like the normal subscript expression but
  it doesn't fall back to attribute lookup.
short_docstring_tokens: This filter basically works like the normal subscript expression but it doesn ' t fall back to attribute lookup .
comment: """
      This filter basically works like the normal subscript expression but
      it doesn't fall back to attribute lookup. If an item does not exist for
      an object undefined is returned.
  
      .. sourcecode:: jinja
  
          {{ foo.bar }} -> {{ foo|getitem('bar') }}
  
      *New in Jinja 1.2*
      """