kal/
lib.rs

1//! # kal
2//!
3//! Command Abstraction Layer for bot libraries
4
5// Deny missing_docs only on release mode.
6// The lint must not interfere our development.
7// But in release mode, we should take care of.
8#![cfg_attr(not(debug_assertions), deny(missing_docs))]
9#![cfg_attr(debug_assertions, warn(missing_docs))]
10
11pub use command::Command;
12pub use command_fragment::{
13    CommaSeparated, CommandArgument, CommandArgumentValue, CommandArgumentValueType,
14    CommandFragment, SpaceSeparated, TryFromArgumentValue, TryFromArgumentValueError,
15};
16pub use command_spec::{CommandOption, CommandOptionValueKind, CommandOptionValueTy, CommandSpec};
17pub use error::CommandParseError;
18pub use kal_derive::Command;
19
20mod command;
21mod command_fragment;
22mod command_group;
23mod command_spec;
24mod error;
25
26pub mod lex;