yapp: a pedestrian Yet Another Parser Parser
YAPP: Yet Another Parser Parser
a highly speed optimized subroutine package
- !!!for programmers only!!!
- implements the old-style unix argument parsing model, which allows to assign
any user-definable number of arguments to an option flag and, therefore, differs
slightly from the now common property/value pair philosophy used in MATLAB
- parses a list of arguments, eg, varargin, for the occurrence of
unix-style options
prefixOPTION
which are defined in a simple option table CELL
and collects a user-definable number of arguments for their value containers
- option tables (minimally) consist of
a header, eg, 'option' '#args' 'defvals'
a body , eg, '+-num' 2 {'a',magic(3)}
they may be expanded by any number of user-definable columns with additional
information for the application, eg, description, function handles for
post-processing, and may, therefore, also serve as convenient vehicles to tune
the behavior of applications/computational engines according to different
initial settings
- option tables are easy to maintain and very versatile, eg, an application
may import a particular option table according to various criteria, eg, user,
task, etc from a specific .ini files
- the output structure returns a multitude of information regarding
options and their values as well as information about the dissected
argument list, which are useful for rapid post-processing, eg, with
MATLAB's inputParser or own models based on, eg, assigned function handles
- the parser's engine itself can be tuned in several ways, eg, bailout by
error or warning
the package contains these M-files
- yapp
the subroutines, which can be added to an application
- fopa
a Fast Option Parser YAPP wrapper stand-alone application, which
can be called from within another application using the simple
YAPP syntax
- fopat
to perform YAPP timing for several user-definable conditions
see also
>> help fopa
and the (partial) screenshot for information about the engine and i/o parameters
>> help fopat
on how to perform YAPP timing on a particular system
note: yapp.m does not contain help information as it is meant to be included as
a subroutine in another application
Cite As
us (2024). yapp: a pedestrian Yet Another Parser Parser (https://www.mathworks.com/matlabcentral/fileexchange/27435-yapp-a-pedestrian-yet-another-parser-parser), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.