# {py:mod}`arelle.FunctionCustom` ```{py:module} arelle.FunctionCustom ``` ```{autodoc2-docstring} arelle.FunctionCustom :allowtitles: ``` ## Module Contents ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`call ` - ```{autodoc2-docstring} arelle.FunctionCustom.call :summary: ``` * - {py:obj}`callCfi ` - ```{autodoc2-docstring} arelle.FunctionCustom.callCfi :summary: ``` * - {py:obj}`my_fn_PDxEV ` - ```{autodoc2-docstring} arelle.FunctionCustom.my_fn_PDxEV :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`customFunctions ` - ```{autodoc2-docstring} arelle.FunctionCustom.customFunctions :summary: ``` ```` ### API `````{py:exception} fnFunctionNotAvailable() :canonical: arelle.FunctionCustom.fnFunctionNotAvailable Bases: {py:obj}`Exception` ````{py:method} add_note() :canonical: arelle.FunctionCustom.fnFunctionNotAvailable.add_note ```` ```{py:class} args :canonical: arelle.FunctionCustom.fnFunctionNotAvailable.args ``` ````{py:method} with_traceback() :canonical: arelle.FunctionCustom.fnFunctionNotAvailable.with_traceback ```` ````` ````{py:function} call(xc: arelle.formula.XPathContext.XPathContext, p: arelle.formula.XPathParser.OperationDef, qname: arelle.ModelValue.QName, contextItem: arelle.formula.XPathContext.ContextItem, args: arelle.formula.XPathContext.ResultStack) -> arelle.formula.XPathContext.RecursiveContextItem :canonical: arelle.FunctionCustom.call ```{autodoc2-docstring} arelle.FunctionCustom.call ``` ```` ````{py:function} callCfi(xc: arelle.formula.XPathContext.XPathContext, p: arelle.formula.XPathParser.OperationDef, qname: arelle.ModelValue.QName, cfSig: typing.Any, contextItem: arelle.formula.XPathContext.ContextItem, args: arelle.formula.XPathContext.ResultStack) -> typing.Any :canonical: arelle.FunctionCustom.callCfi ```{autodoc2-docstring} arelle.FunctionCustom.callCfi ``` ```` ````{py:function} my_fn_PDxEV(xc: arelle.formula.XPathContext.XPathContext, p: arelle.formula.XPathParser.OperationDef, contextItem: arelle.formula.XPathContext.ContextItem, args: arelle.formula.XPathContext.ResultStack) -> list[float] :canonical: arelle.FunctionCustom.my_fn_PDxEV ```{autodoc2-docstring} arelle.FunctionCustom.my_fn_PDxEV ``` ```` ````{py:data} customFunctions :canonical: arelle.FunctionCustom.customFunctions :type: dict[arelle.ModelValue.QName, typing.Callable] :value: > None ```{autodoc2-docstring} arelle.FunctionCustom.customFunctions ``` ````