# {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} __repr__() :canonical: arelle.FunctionCustom.fnFunctionNotAvailable.__repr__ ```` ````` ````{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, p, qname, cfSig, contextItem, args) :canonical: arelle.FunctionCustom.callCfi ```{autodoc2-docstring} arelle.FunctionCustom.callCfi ``` ```` ````{py:function} my_fn_PDxEV(xc, p, contextItem, args) :canonical: arelle.FunctionCustom.my_fn_PDxEV ```{autodoc2-docstring} arelle.FunctionCustom.my_fn_PDxEV ``` ```` ````{py:data} customFunctions :canonical: arelle.FunctionCustom.customFunctions :value: > None ```{autodoc2-docstring} arelle.FunctionCustom.customFunctions ``` ````