inputParser — Parse MATLAB-style optional name-value arguments.

inputParser creates a handle object for parsing common MATLAB name-value argument patterns. RunMat supports the minimal workflow used by imported helper functions: create a parser, register parameters with defaults, parse varargin{:}, and read values from p.Results.

Syntax

function y = f(varargin)

How inputParser works

  • p = inputParser returns a handle object with an initially empty Results struct.
  • addParameter(p, name, default) registers a case-sensitive name and default value, mutating p in place.
  • parse(p, name, value, ...) starts from the registered defaults and applies exact name matches.
  • p.Results.<name> reads the parsed value for a registered parameter.
  • Duplicate parameter names, odd name-value argument counts, non-text names, and unknown parsed names raise stable RunMat errors.
  • This compatibility slice does not yet implement addRequired, addOptional, validators, CaseSensitive, PartialMatching, KeepUnmatched, or StructExpand.

Examples

Parse an optional scale parameter

function y = f(varargin)
  p = inputParser;
  addParameter(p, 'scale', 2);
  parse(p, varargin{:});
  y = p.Results.scale;
end

f('scale', 4)

Expected output:

ans =
     4

Use a registered default when the name is omitted

p = inputParser;
addParameter(p, 'scale', 2);
parse(p);
p.Results.scale

Expected output:

ans =
     2

Using inputParser with coding agents

Open a RunMat example with live inputs, then ask the agent to explain how inputParser changes the result.

Run a small inputParser example, explain the result, then change one input and compare the output.

FAQ

Are parameter names case-sensitive?

Yes. This initial RunMat implementation uses exact case-sensitive name matching.

Does RunMat support validators or positional arguments?

Not yet. The current support is intentionally limited to optional name-value parameters registered with addParameter.

About RunMat

RunMat is an open-source runtime that executes MATLAB-syntax code blazing on any GPU. It is licensed under the Apache 2.0 license.

  • RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed. Simulations that took hours now take minutes.
  • Start running code in seconds. RunMat runs in the browser, on the desktop, or from the CLI. No license server, no IT ticket.

Getting started · Benchmarks · Pricing

Download RunMat

Download RunMat for full performance, or use RunMat in your browser for zero setup.