io7m | single-page | multi-page | epub | Cedarbridge User Manual 1.0.0-beta0001
4. Command-Line Interface
Previous
4. Command-Line Interface
Up
4.2. check
Next

# 4.1. Overview

1
The cedarbridge package provides a command-line interface for performing tasks such as type-checking definitions, generating code, generating documentation, etc. The base cedarbridge command is broken into a number of subcommands which are documented over the following sections.

### 4.1.2. Command-Line Overview

    Usage: cedarbridge [options] [command] [command options]

      Options:
        --verbose
          Set the minimum logging verbosity level.
          Default: info
          Possible Values: [trace, debug, info, warn, error]

      Use the "help" command to examine specific commands:

        $ cedarbridge help help.

      Command-line arguments can be placed one per line into a file, and the file
      can be referenced using the @ symbol:

        $ echo help > file.txt
        $ echo help >> file.txt
        $ cedarbridge @file.txt

      Commands:
        check                             Type-check a schema file.
        compile                           Compile a schema file and generate code.
        document                          Compile a schema file and generate documentation.
        help                              Show detailed help messages for commands.
        list-code-generators              List available code generators
        list-documentation-generators     List available documentation generators
        version                           Show the application version.

      Documentation:
        https://www.io7m.com/software/cedarbridge/documentation/

3
All subcommands accept a --verbose parameter that may be set to one of trace, debug, info, warn, or error. This parameter sets the lower bound for the severity of messages that will be logged. For example, at debug verbosity, only messages of severity debug and above will be logged. Setting the verbosity to trace level effectively causes everything to be logged, and will produce large volumes of debugging output.
4
The cedarbridge command-line tool uses jcommander to parse command-line arguments, and therefore supports placing command-line arguments into a file, one argument per line, and then referencing that file with @. For example:

### 4.1.5. @ Syntax

    $ cedarbridge check --file example.cbs

    $ (cat <<EOF
    check
    --file
    example.cbs
    EOF
    ) > args.txt

    $ cedarbridge @args.txt

6
All subcommands, unless otherwise specified, yield an exit code of 0 on success, and a non-zero exit code on failure.
4. Command-Line Interface
Previous
4. Command-Line Interface
Up
4.2. check
Next
io7m | single-page | multi-page | epub | Cedarbridge User Manual 1.0.0-beta0001