coder.ignoreSize
Prevent code generator from creating function specializations for constant-size expressions
Since R2019b
Description
coder.ignoreSize(
declares that the
code generator must not use the constant size of an expression to create function
specializations.expression
)
Examples
Duplicate Functions Generated for Multiple Input Sizes
If your MATLAB® code calls a function multiple times and passes inputs of different sizes, the
code generator can create function specializations for each size. To avoid this issue, use
coder.ignoreSize
on the function input. For example, this code uses
coder.ignoreSize
to avoid creating multiple copies of the function
indexOf
:
function [out1, out2] = test1(in) a = 1:10; b = 2:40; % Without coder.ignoreSize duplicate functions are generated out1 = indexOf(coder.ignoreSize(a), in); out2 = indexOf(coder.ignoreSize(b), in); end function index = indexOf(array, value) coder.inline('never'); for i = 1:numel(array) if array(i) == value index = i; return end end index = -1; return end
To generate code, enter:
codegen test1 -config:lib -report -args {1}
Input Arguments
More About
Tips
If you assign an expression to a variable and declare the variable as variable-size by using
coder.varsize
, this declaration has the same effect as usingcoder.ignoreSize
on the expression.
Extended Capabilities
Version History
Introduced in R2019b