code: def poke(exposes):
      
      def _poke(store, objname, obj, container, visited=None, _stack=None):
          try:
              sub_container = store.newContainer(objname, obj, container)
          except (SystemExit, KeyboardInterrupt):
              raise
          except:
              raise ValueError('generic poke not supported by store')
          #_stack = _add_to_stack(_stack, objname)
          for iobjname in exposes:
              try:
                  iobj = getattr(obj, iobjname)
              except AttributeError:
                  pass
              else:
                  store.poke(iobjname, iobj, sub_container, visited=visited, \
                      _stack=_stack)
      return _poke
docs: Default serializer factory.
  
      Arguments:
  
          exposes (iterable): attributes to serialized.
  
      Returns:
  
          callable: serializer (`poke` routine).