# {py:mod}`arelle.FunctionUtil` ```{py:module} arelle.FunctionUtil ``` ```{autodoc2-docstring} arelle.FunctionUtil :allowtitles: ``` ## Module Contents ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`anytypeArg ` - ```{autodoc2-docstring} arelle.FunctionUtil.anytypeArg :summary: ``` * - {py:obj}`atomicArg ` - ```{autodoc2-docstring} arelle.FunctionUtil.atomicArg :summary: ``` * - {py:obj}`stringArg ` - ```{autodoc2-docstring} arelle.FunctionUtil.stringArg :summary: ``` * - {py:obj}`numericArg ` - ```{autodoc2-docstring} arelle.FunctionUtil.numericArg :summary: ``` * - {py:obj}`integerArg ` - ```{autodoc2-docstring} arelle.FunctionUtil.integerArg :summary: ``` * - {py:obj}`qnameArg ` - ```{autodoc2-docstring} arelle.FunctionUtil.qnameArg :summary: ``` * - {py:obj}`nodeArg ` - ```{autodoc2-docstring} arelle.FunctionUtil.nodeArg :summary: ``` * - {py:obj}`testTypeCompatibility ` - ```{autodoc2-docstring} arelle.FunctionUtil.testTypeCompatibility :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`emptyFallbackType ` - ```{autodoc2-docstring} arelle.FunctionUtil.emptyFallbackType :summary: ``` ```` ### API ````{py:data} emptyFallbackType :canonical: arelle.FunctionUtil.emptyFallbackType :type: typing.TypeAlias :value: > None ```{autodoc2-docstring} arelle.FunctionUtil.emptyFallbackType ``` ```` ````{py:function} anytypeArg(xc: arelle.formula.XPathContext.XPathContext, args: arelle.formula.XPathContext.ResultStack, i: int, type: str, missingArgFallback: arelle.formula.XPathContext.ContextItem = None) -> typing.Any :canonical: arelle.FunctionUtil.anytypeArg ```{autodoc2-docstring} arelle.FunctionUtil.anytypeArg ``` ```` ````{py:function} atomicArg(xc: arelle.formula.XPathContext.XPathContext, p: arelle.formula.XPathParser.FormulaToken, args: arelle.formula.XPathContext.ResultStack, i: int, type: str, missingArgFallback: arelle.formula.XPathContext.ContextItem = None, emptyFallback: arelle.FunctionUtil.emptyFallbackType = ()) -> typing.Any :canonical: arelle.FunctionUtil.atomicArg ```{autodoc2-docstring} arelle.FunctionUtil.atomicArg ``` ```` ````{py:function} stringArg(xc: arelle.formula.XPathContext.XPathContext, args: arelle.formula.XPathContext.ResultStack, i: int, type: str, missingArgFallback: arelle.formula.XPathContext.ContextItem = None, emptyFallback: arelle.FunctionUtil.emptyFallbackType = '') -> typing.Any :canonical: arelle.FunctionUtil.stringArg ```{autodoc2-docstring} arelle.FunctionUtil.stringArg ``` ```` ````{py:function} numericArg(xc: arelle.formula.XPathContext.XPathContext, p: arelle.formula.XPathParser.FormulaToken, args: arelle.formula.XPathContext.ResultStack, i: int = 0, missingArgFallback: arelle.formula.XPathContext.ContextItem = None, emptyFallback: arelle.FunctionUtil.emptyFallbackType = 0, convertFallback: str | int | float | None = None) -> typing.Any :canonical: arelle.FunctionUtil.numericArg ```{autodoc2-docstring} arelle.FunctionUtil.numericArg ``` ```` ````{py:function} integerArg(xc: arelle.formula.XPathContext.XPathContext, p: arelle.formula.XPathParser.FormulaToken, args: arelle.formula.XPathContext.ResultStack, i: int = 0, missingArgFallback: arelle.formula.XPathContext.ContextItem = None, emptyFallback: arelle.FunctionUtil.emptyFallbackType = 0, convertFallback: int | None = None) -> arelle.FunctionUtil.emptyFallbackType :canonical: arelle.FunctionUtil.integerArg ```{autodoc2-docstring} arelle.FunctionUtil.integerArg ``` ```` ````{py:function} qnameArg(xc: arelle.formula.XPathContext.XPathContext, p: arelle.formula.XPathParser.FormulaToken, args: arelle.formula.XPathContext.ResultStack, i: int, type: str, missingArgFallback: arelle.formula.XPathContext.ContextItem = None, emptyFallback: arelle.FunctionUtil.emptyFallbackType = ()) -> arelle.ModelValue.QName | arelle.FunctionUtil.emptyFallbackType :canonical: arelle.FunctionUtil.qnameArg ```{autodoc2-docstring} arelle.FunctionUtil.qnameArg ``` ```` ````{py:function} nodeArg(xc: arelle.formula.XPathContext.XPathContext, args: arelle.formula.XPathContext.ResultStack, i: int, type: str, missingArgFallback: arelle.formula.XPathContext.ContextItem = None, emptyFallback: arelle.FunctionUtil.emptyFallbackType = None) -> arelle.ModelObject.ModelObject | arelle.ModelObject.ModelAttribute | arelle.FunctionUtil.emptyFallbackType | arelle.ModelValue.QName :canonical: arelle.FunctionUtil.nodeArg ```{autodoc2-docstring} arelle.FunctionUtil.nodeArg ``` ```` ````{py:function} testTypeCompatibility(xc: arelle.formula.XPathContext.XPathContext, p: arelle.formula.XPathParser.FormulaToken, op: str, a1: arelle.formula.XPathContext.ContextItem, a2: arelle.formula.XPathContext.ContextItem) -> None :canonical: arelle.FunctionUtil.testTypeCompatibility ```{autodoc2-docstring} arelle.FunctionUtil.testTypeCompatibility ``` ````