TaminoQPIInline

Use default inlining strategy for user-defined functions.


Syntax

TaminoQPIInline

graphics/TaminoQPIInline.png

Description

A TaminoQPIInline is a query pragma that has the form of a QPI (query processing instruction), i.e., it is enclosed by "{?" and "?}". It is a hint to the query processor to use the default inlining strategy for processing the immediately following user-defined function. This means that a function call is replaced by the code of the called function.

If inlining is not possible, the inline pragma is ignored.

See also the Performance Guide for more information about optimizing processing of user-defined functions.

Example

  • This recursive function should be processed using the default inlining strategy:

    module namespace math = "http://example.org/math-functions"
    {?inline?}
    declare function math:power($b as xs:integer, $e as xs:integer) as xs:integer
    {
      if ($e <= 0)
      then 1
      else math:power($b, $e - 1) * $b
    }

Related Syntax Construct

The following construct(s) refer to this construct:

This construct is also related to the following construct(s):

TaminoQPIOptimization