i3
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <stdbool.h>
#include <stdint.h>
#include "all.h"
#include "GENERATED_command_enums.h"
#include "GENERATED_command_tokens.h"
#include "GENERATED_command_call.h"
Go to the source code of this file.
Data Structures | |
struct | token |
struct | tokenptr |
struct | stack_entry |
Macros | |
#define | I3__FILE__ "commands_parser.c" |
#define | y(x,...) yajl_gen_ ## x (command_output.json_gen, ##__VA_ARGS__) |
#define | ystr(str) yajl_gen_string(command_output.json_gen, (unsigned char*)str, strlen(str)) |
Typedefs | |
typedef struct token | cmdp_token |
typedef struct tokenptr | cmdp_token_ptr |
Functions | |
static void | push_string (const char *identifier, char *str) |
static char * | get_string (const char *identifier) |
static void | clear_stack (void) |
static void | next_state (const cmdp_token *token) |
struct CommandResult * | parse_command (const char *input) |
Variables | |
static struct stack_entry | stack [10] |
static cmdp_state | state |
static Match | current_match |
static struct CommandResult | subcommand_output |
static struct CommandResult | command_output |
#define I3__FILE__ "commands_parser.c" |
Definition at line 2 of file commands_parser.c.
Definition at line 38 of file commands_parser.c.
#define ystr | ( | str | ) | yajl_gen_string(command_output.json_gen, (unsigned char*)str, strlen(str)) |
Definition at line 39 of file commands_parser.c.
Referenced by parse_command().
typedef struct token cmdp_token |
typedef struct tokenptr cmdp_token_ptr |
|
static |
Definition at line 118 of file commands_parser.c.
References stack_entry::identifier, stack, and stack_entry::str.
Referenced by next_state(), and parse_command().
|
static |
Definition at line 108 of file commands_parser.c.
References stack, and stack_entry::str.
Referenced by GENERATED_call().
|
static |
Definition at line 188 of file commands_parser.c.
References __CALL, token::call_identifier, clear_stack(), command_output, token::extra, GENERATED_call(), INITIAL, CommandResult::json_gen, CommandResult::needs_tree_render, CommandResult::next_state, token::next_state, state, and subcommand_output.
Referenced by parse_command().
struct CommandResult* parse_command | ( | const char * | input | ) |
Definition at line 208 of file commands_parser.c.
References tokenptr::array, clear_stack(), cmd_criteria_init(), command_output, current_match, DLOG, ELOG, token::identifier, INITIAL, CommandResult::json_gen, tokenptr::n, token::name, CommandResult::needs_tree_render, next_state(), push_string(), sasprintf(), scalloc(), smalloc(), sstrdup(), state, subcommand_output, tokens, y, and ystr.
Referenced by handle_key_press(), IPC_HANDLER(), and run_assignments().
|
static |
Definition at line 87 of file commands_parser.c.
References stack_entry::identifier, stack, and stack_entry::str.
Referenced by parse_command().
|
static |
Definition at line 183 of file commands_parser.c.
Referenced by handle_key_press(), IPC_HANDLER(), next_state(), parse_command(), and run_assignments().
|
static |
Definition at line 180 of file commands_parser.c.
Referenced by CFGFUN(), cmd_criteria_add(), cmd_criteria_match_windows(), cmd_focus(), cmd_kill(), cmd_layout(), cmd_layout_toggle(), cmd_move_con_to_workspace(), cmd_move_con_to_workspace_name(), cmd_move_con_to_workspace_number(), cmd_resize(), cmd_scratchpad_show(), cmd_split(), GENERATED_call(), parse_command(), and TAILQ_HEAD().
|
static |
Definition at line 80 of file commands_parser.c.
Referenced by clear_stack(), get_string(), and push_string().
|
static |
Definition at line 178 of file commands_parser.c.
Referenced by CIRCLEQ_HEAD(), display_running_version(), handle_key_press(), next_state(), parse_command(), sig_handle_key_press(), x_con_init(), x_con_kill(), x_deco_recurse(), x_mask_event_mask(), x_push_changes(), x_push_node(), x_push_node_unmaps(), x_raise_con(), x_reinit(), x_reparent_child(), and x_set_name().
|
static |
Definition at line 182 of file commands_parser.c.
Referenced by next_state(), and parse_command().