class_docstr: Map between a `dict`s of variables to an array space.
  
  Said array space consists of all the vars raveled and then concatenated.
class_docstr_tok: ["Map","between","a","`","dict","`","s","of","variables","to","an","array","space",".","Said","array","space","consists","of","all","the","vars","raveled","and","then","concatenated","."]
docstr: Create a callable that first maps back to ``dict`` inputs and then applies a function.
  
  function f: DictSpace -> T to ArraySpace -> T
  
  Parameters
  ----------
  f: dict -> T
  
  Returns
  -------
  f: array -> T
docstr_tok: ["Create","a","callable","that","first","maps","back","to","``","dict","``","inputs","and","then","applies","a","function",".","function","f",":","DictSpace","-",">","T","to","ArraySpace","-",">","T","Parameters","--","--","--","--","--","f",":","dict","-",">","T","Returns","--","--","--","-","f",":","array","-",">","T"]
code: def mapf(
      cls,
      f: Callable[[PointType], T],
      start_point: PointType | None = None,
  ) -> Callable[[RaveledVars], T]:
      """Create a callable that first maps back to ``dict`` inputs and then applies a function.
  
      function f: DictSpace -> T to ArraySpace -> T
  
      Parameters
      ----------
      f: dict -> T
  
      Returns
      -------
      f: array -> T
      """
      return Compose(f, partial(cls.rmap, start_point=start_point))
  
file_path: pymc/pymc/blocking.py
imports: from __future__ import annotations
  from functools import partial
  from typing import Any, Callable, Dict, Generic, List, NamedTuple, Optional, Sequence, TypeVar, Union
  import numpy
  from typing_extensions import TypeAlias
label_desc: Use image node_id 3 for calling the DictToArrayBijection obj's underlying member method code with example usage: obj.mapf(cls, f, start_point) and returns: Compose