SYMBOL INDEX (25 symbols across 5 files) FILE: example/main.rs function command_one (line 6) | fn command_one(a: i32, b: Option) -> i32 { function command_two (line 12) | fn command_two(name: String) -> String { function command_three (line 18) | fn command_three(a: i32, b: i32) -> String { function command_four (line 24) | fn command_four() -> String { function main (line 36) | fn main() { FILE: src/main.rs function main (line 1) | fn main() { FILE: terse_cli/lib.rs function command (line 5) | pub fn command(_attr: TokenStream, item: TokenStream) -> TokenStream { function subcommands (line 13) | pub fn subcommands(item: TokenStream) -> TokenStream { FILE: terse_cli_lib/lib.rs function extract_docs (line 7) | fn extract_docs(a: &[Attribute]) -> impl Iterator { type CommandMacroError (line 12) | pub enum CommandMacroError { function command (line 18) | pub fn command( type SubcommandsMacroError (line 68) | pub enum SubcommandsMacroError { function subcommands (line 74) | pub fn subcommands( type Subcommand (line 134) | struct Subcommand { type MergeSubcommandsInput (line 139) | struct MergeSubcommandsInput { method parse (line 146) | fn parse(input: ParseStream) -> syn::Result { method parse (line 154) | fn parse(input: ParseStream) -> syn::Result { function get_command_name (line 176) | fn get_command_name(func_name: &Ident) -> Ident { type InvalidIdentifierError (line 185) | pub struct InvalidIdentifierError(&'static str); type InvalidIdentifierListError (line 189) | pub struct InvalidIdentifierListError { type InvalidSubcommandFunctionError (line 196) | pub struct InvalidSubcommandFunctionError { type InvalidCliArgumentError (line 203) | pub struct InvalidCliArgumentError(String); FILE: tests/test_cli_subcommand.rs function test_command_macro (line 6) | pub fn test_command_macro() { function test_command_macro_no_args (line 41) | pub fn test_command_macro_no_args() { function test_subcommands_macro (line 75) | pub fn test_subcommands_macro() {