Main Content

Input Specification

Specify properties of MATLAB® function input variables to enable code generation

Specification of input types and properties is required for code generation. The code generator uses the input information to determine what types, sizes, and other properties are produced for subsequent variable definition. Perform input specification from the app, at the command line, or by using the Coder Type Editor, and from outside or inside of your function code, using functions such as coder.typeof, coder.varsize, and assert. For certain input types such as cells, classes, and globals, input specification can involve additional considerations.


coder.getArgTypesDetermine types of function input arguments by executing test file
coder.newtypeCreate coder.Type object to represent type of an entry-point function input
coder.resizeResize coder.Type object
coder.typeofCreate coder.Type object to represent the type of an entry-point function input
coder.varsizeDeclare variable-size data
coderTypeEditorLaunch the Coder Type Editor dialog


coder.ArrayTypeRepresent set of MATLAB arrays
coder.CellTypeRepresent set of MATLAB cell arrays
coder.ClassTypeRepresent set of MATLAB classes
coder.ConstantSpecification of constant value for code generation
coder.EnumTypeRepresent set of MATLAB enumerations
coder.FiTypeRepresent set of MATLAB fixed-point arrays
coder.PrimitiveTypeRepresent set of logical, numeric, or char arrays
coder.StructTypeRepresent set of MATLAB structure arrays
coder.TypeRepresent set of MATLAB values


coder.OutputTypeOutput type from an entry-point function to specify as an input type


Input Specification Basics

Specify Properties of Entry-Point Function Inputs

Specify input properties so that the code generator can determine the properties of all variables.

Automatically Define Input Types by Using the App

Provide a test that calls the entry-point functions with representative data.

Specify Number of Entry-Point Function Input or Output Arguments to Generate

Control the number of arguments in generated entry-point functions.

Define Input Properties Programmatically in the MATLAB File

Define the properties of entry-point function inputs with the assert function.

Create and Edit Input Types by Using the Coder Type Editor

Define and edit coder.Type objects interactively.

Pass an Entry-Point Function Output as an Input

Simplify input type specification for multiple entry-point functions.

Edit and Represent Coder Type Objects and Properties

Command line representation of coder type objects.

MATLAB Coder App

Define Input Parameter by Example by Using the App

Specify properties of an input parameter by providing an example value.

Define or Edit Input Parameter Type by Using the App

Specify the class, size, and complexity of an input parameter.

Make Dimensions Variable-Size When They Meet Size Threshold

Specify and apply rules for making dimensions variable-size.

Undo and Redo Changes to Type Definitions in the App

Revert and restore changes to input or global variable definitions.

Cell Arrays

Define Cell Array Inputs

Choose how you want to specify cell array inputs.

Specify Cell Array Inputs at the Command Line

Provide an example cell array, define a cell array type, or specify a cell array constant input.

Specify Global Cell Arrays at the Command Line

Specify global cell array inputs with the -globals option.

Value Classes

Specify Objects as Inputs at the Command Line

Specify that an entry-point input is an object of a value class by using the codegen -args option.

Specify Objects as Inputs in the MATLAB Coder App

Define the type of a value class input from a test file or an example input.

Global Data

Generate Code for Global Data

Generate C/C++ code from MATLAB code that uses global data

Add Global Variables by Using the App

Define global variables.

Specify Global Variable Type and Initial Value Using the App

Specify type and initial value of global variables that your MATLAB code uses.

Constant Data

Constant Input Checking in MEX Functions

Control whether a MEX function checks the value of a constant input argument.

Define Constant Input Parameters Using the App

Specify that an input parameter is a constant.

String Scalars

Define String Scalar Inputs

Choose how you want to specify string scalar inputs.