def METHOD_NAME(self, obj, index, val) -> ir.SetItem:
    """Makes a setitem call
    Parameters
    ----------
    obj : ir.Var
        the object being indexed
    index : ir.Var
        the index
    val : ir.Var
        the value to be stored
    Returns
    -------
    res : ir.SetItem
    """
    loc = self._loc
    tm = self._typemap
    METHOD_NAME = ir.SetItem(obj, index, val, loc=loc)
    self._lowerer.fndesc.calltypes[METHOD_NAME] = signature(
        types.none, tm[obj.name], tm[index.name], tm[val.name]
    )
    self._lowerer.lower_inst(METHOD_NAME)
    return METHOD_NAME