diff options
author | Drew DeVault <sir@cmpwn.com> | 2015-10-23 10:34:38 -0400 |
---|---|---|
committer | Drew DeVault <sir@cmpwn.com> | 2015-10-23 10:34:38 -0400 |
commit | 988a0bd67e02755308b478d369a3825c712a842e (patch) | |
tree | c29db67ec97907448084a36909c1e51d74cd8eaf /include/commands.h | |
parent | 8a57c48dffda7c49e59d1c56739f857c6f28b07d (diff) | |
parent | 362413bd5031aa709ab5d7a39c0d5912554e545b (diff) |
Merge pull request #201 from sce/cmd_results
Replace cmd_status with cmd_results struct
Diffstat (limited to 'include/commands.h')
-rw-r--r-- | include/commands.h | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/include/commands.h b/include/commands.h index 1b4cd9ca..8e53c74d 100644 --- a/include/commands.h +++ b/include/commands.h @@ -1,22 +1,33 @@ #ifndef _SWAY_COMMANDS_H #define _SWAY_COMMANDS_H #include <stdbool.h> +#include <json-c/json.h> #include "config.h" enum cmd_status { CMD_SUCCESS, - CMD_FAILURE, - CMD_INVALID, + CMD_FAILURE, // was or at least could be executed + CMD_INVALID, // unknown or parse error CMD_DEFER, // Config Blocks CMD_BLOCK_END, CMD_BLOCK_MODE, }; -enum cmd_status handle_command(char *command); +struct cmd_results { + enum cmd_status status; + char *input; + char *error; +}; + +struct cmd_results *handle_command(char *command); // Handles commands during config -enum cmd_status config_command(char *command); +struct cmd_results *config_command(char *command); + +struct cmd_results *cmd_results_new(enum cmd_status status, const char* input, const char *error, ...); +void free_cmd_results(struct cmd_results *results); +const char *cmd_results_to_json(struct cmd_results *results); void remove_view_from_scratchpad(); |