parameters: (self, key, creation_function, **kw)
docstring: r"""Retrieve a value from the cache, using the given creation function
          to generate a new value.
  
          This function *must* return a value, either from
          the cache, or via the given creation function.
          If the creation function is called, the newly
          created value should be populated into the cache
          under the given key before being returned.
  
          :param key: the value's key.
          :param creation_function: function that when called generates
           a new value.
          :param \**kw: cache configuration arguments.
docstring_summary: r"""Retrieve a value from the cache, using the given creation function
          to generate a new value.
docstring_tokens: r Retrieve a value from the cache using the given creation function to generate a new value .
function: def get_or_create(self, key, creation_function, **kw):
          r"""Retrieve a value from the cache, using the given creation function
          to generate a new value.
  
          This function *must* return a value, either from
          the cache, or via the given creation function.
          If the creation function is called, the newly
          created value should be populated into the cache
          under the given key before being returned.
  
          :param key: the value's key.
          :param creation_function: function that when called generates
           a new value.
          :param \**kw: cache configuration arguments.
  
          """
          raise NotImplementedError()
function_tokens: def get_or_create ( self , key , creation_function , * * kw ) : raise NotImplementedError ( )