Main Content

addRequired

Add required, positional argument into input parser scheme

Description

addRequired(p,argName) adds a required, positional input argument argName into the input parser scheme p.

example

addRequired(p,argName,validationFcn) specifies a validation function for the input argument.

example

Examples

collapse all

Create an inputParser object and add a required input named myinput to the input scheme.

p = inputParser;
argName = 'myinput';
addRequired(p,argName)

Call the parse function with the input value 7, and display the results.

parse(p,7)
p.Results
ans = struct with fields:
    myinput: 7

Create an input parser scheme that checks that a required input is a nonnegative, numeric scalar. The syntax @(x) creates a handle to an anonymous function with one input.

p = inputParser;
argName = 'num';
validationFcn = @(x) (x > 0) && isnumeric(x) && isscalar(x);
addRequired(p,argName,validationFcn)

Parse an invalid input, such as -1:

parse(p,-1)
The value of 'num' is invalid. It must satisfy the function: @(x)(x>0)&&isnumeric(x)&&isscalar(x).

Create an inputParser object and define a validation function using validateattributes. The validation function tests that a required input is numeric, positive, and even.

p = inputParser;
argName = 'evenPosNum';
validationFcn = @(x) validateattributes(x,{'numeric'},...
    {'even','positive'}); 
addRequired(p,argName,validationFcn)

Parse an input character vector. Parse fails because the input is invalid.

parse(p,'hello')
The value of 'evenPosNum' is invalid. Expected input to be one of these types:

double, single, uint8, uint16, uint32, uint64, int8, int16, int32, int64

Instead its type was char.

Parse an odd number. Parse fails because the input is invalid.

 parse(p,13)
The value of 'evenPosNum' is invalid. Expected input to be even.

Parse an even, positive number. Parse passes.

parse(p,42)

Input Arguments

collapse all

Input parser scheme, specified as an inputParser object.

Name of the input argument, specified as a character vector or string scalar.

Example: 'firstName'

Example: 'address'

Data Types: char | string

Function to validate an argument, specified as a function handle.

The function handle must be associated with a function that returns true or false, or passes a test, or throws an error. Both types of functions must accept a single input argument.

Example: @(s)isstring(s)

Example: @(x)isnumeric(x)&&isscalar(x)

Example: @(n)validateattributes(n,{'numeric'},{'nonnegative'})

Data Types: function_handle

Version History

Introduced in R2007a