The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

ndproc - nested data processor, extendable by modules

SYNOPSIS

    ndproc [OPTIONS] <arguments>

DESCRIPTION

Process nested data structures according provided rules

OPTIONS

--builtin-format <""|JSON>

Format for builtin things (--builtin-rules, --embed-rules). Raw structure will be used if omitted or empty.

--builtin-rules <path>

Use builtin (in processed object) rules.

--disable-module <modname>

Skip (don't process) rules for specified module. May be used several times.

--dump-blame <file>

Dump blame to file.

--dump-rules <file>

Dump rules to file.

--embed-blame <path>

Embed blame into processed structure, using provided path.

--embed-rules <path>

Embed used rules into processed structure, using provided path.

--help|-h

Print a help message and exit.

--ifmt <JSON|YAML>

Force specified input format usage. Will be selected automatically (using file name extension) if omitted. YAML::XS should be installed for YAML support.

--list-modules|-l

List available modules.

--module|-m <name>

Process structure using specified module.

--ofmt <JSON|YAML>

Force specified output format usage. JSON is used by default; YAML::XS should be installed for YAML support, see "LIMITATIONS" in App::NDTools for more info.

--rules <file>

Load rules from specified file. May be used several times.

--verbose|-v [int]

Increase verbosity, max level is 4.

--version|-V

Print version and exit.

EXAMPLES

Simply merge three files using module 'Merge':

    ndproc --module Merge a.json --source b.json --source c.json

Print usage for 'Merge' module:

    ndproc --module Merge --help

EXIT STATUS

 0   No errors occured.
 1   Generic error code.
 2   I/O Error.
 4   Path related errors.

BUGS

Report bugs to https://github.com/mr-mixas/NDTools/issues

SEE ALSO

nddiff, ndpatch, ndquery

App::NDTools::NDProc

LICENSE AND COPYRIGHT

Copyright 2016-2018 Michael Samoglyadov <mixas at cpan.org>.

This program is free software; you can redistribute it and/or modify it under the terms of GNU General Public License 3 or later versions.