On this page:
top
up

3.25Performance Hints: begin-encourage-inline πŸ”— i

The bindings documented in this section are provided by the racket/performance-hint library, not racket/base or racket.

syntax

( begin-encourage-inline form...)

Attaches a 'compiler-hint:cross-module-inline syntax property to each form, which is useful when a form is a function definition. See define-values .

The begin-encourage-inline form is also provided by the (submod racket/performance-hintbegin-encourage-inline ) module, which has fewer dependencies than racket/performance-hint.

Changed in version 6.2 of package base: Added the (submod racket/performance-hintbegin-encourage-inline ) submodule.

syntax

( define-inline idexpr)

(define-inline (headargs)body...+)
head = id
| (headargs)
args = arg...
| arg....rest-id
arg = arg-id
| [arg-iddefault-expr]
| keywordarg-id
| keyword[arg-iddefault-expr]
Like define , but ensures that the definition will be inlined at its call sites. Recursive calls are not inlined, to avoid infinite inlining. Higher-order uses are supported, but also not inlined. Misapplication (by supplying the wrong number of arguments or incorrect keyword arguments) is also not inlined and left as a run-time error.

The define-inline form may interfere with the Racket compiler’s own inlining heuristics, and should only be used when other inlining attempts (such as begin-encourage-inline ) fail.

Changed in version 8.1.0.5 of package base: Changed to treat misapplication as a run-time error.

top
up

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /