# codaeval

This documentation describes the functionality of the codaeval tool which is part of CODA.

## General description

CODA contains an expression language that can be used to perform calculations on parameters inside a data product. The codaeval tool can be used to evaluate such an expression, either with on one or more product files or without (in case it is a constant expression). Alternatively, using the -c option, the tool will just verify if the expression is syntactically and grammatically correct.

    Usage:
        codaeval [-D definitionpath] [<options>] expression [<files|directories>]
            Evaluate a CODA expression on a series of files and/or recursively on
            all contents of directories
            If no files or directories are provided then codaeval should be a
            'constant' expression (i.e. it may not contain node expressions or
            functions that rely on product content)

            Options:
                -c, --check
                        only check the syntax of the expression, without evaluating
                        it; any remaining options (including files) will be ignored
                -d, --disable_conversions
                        do not perform unit/value conversions
                -p '<path>'
                        a path (in the form of a CODA node expression) to the
                        location in the product where the expression should be
                        evaluated
                        if no path is provided the expression will be evaluated
                        at the root of the product

        A description of the syntax of CODA expression language can be found in the
        CODA documentation

        codaeval h, --help
            Show help (this text)

        codaeval -v, --version
            Print the version number of CODA and exit

        CODA will look for .codadef files using a definition path, which is a ':'
        separated (';' on Windows) list of paths to .codadef files and/or to
        directories containing .codadef files.
        By default the definition path is set to a single directory relative to
        the tool location. A different definition path can be set via the
        CODA_DEFINITION environment variable or via the -D option.
        (the -D option overrides the environment variable setting).