Natural Tiny Shell (NT-Shell) library is a tiny shell library for a small embedded system. The interface is really simple. You should only know ntshell_execute in ntshell.h. So you can port it to any embedded system easily. Please enjoy your small embedded system with it. :)

Dependents:   NaturalTinyShell_TestProgram

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers vtparse_table.h Source File

vtparse_table.h

Go to the documentation of this file.
00001 /**
00002  * @file vtparse_table.h
00003  * @brief VTParse
00004  * @details
00005  * An implementation of Paul Williams' DEC compatible state machine parser
00006  * This code is in the public domain.
00007  * @author Joshua Haberman <joshua@reverberate.org>
00008  */
00009 
00010 #ifndef VTPARSE_TABLE_H
00011 #define VTPARSE_TABLE_H
00012 
00013 typedef enum {
00014    VTPARSE_STATE_ANYWHERE = 0,
00015    VTPARSE_STATE_CSI_ENTRY = 1,
00016    VTPARSE_STATE_CSI_IGNORE = 2,
00017    VTPARSE_STATE_CSI_INTERMEDIATE = 3,
00018    VTPARSE_STATE_CSI_PARAM = 4,
00019    VTPARSE_STATE_DCS_ENTRY = 5,
00020    VTPARSE_STATE_DCS_IGNORE = 6,
00021    VTPARSE_STATE_DCS_INTERMEDIATE = 7,
00022    VTPARSE_STATE_DCS_PARAM = 8,
00023    VTPARSE_STATE_DCS_PASSTHROUGH = 9,
00024    VTPARSE_STATE_ESCAPE = 10,
00025    VTPARSE_STATE_ESCAPE_INTERMEDIATE = 11,
00026    VTPARSE_STATE_GROUND = 12,
00027    VTPARSE_STATE_OSC_STRING = 13,
00028    VTPARSE_STATE_SOS_PM_APC_STRING = 14,
00029 } vtparse_state_t;
00030 
00031 typedef enum {
00032    VTPARSE_ACTION_CLEAR = 1,
00033    VTPARSE_ACTION_COLLECT = 2,
00034    VTPARSE_ACTION_CSI_DISPATCH = 3,
00035    VTPARSE_ACTION_ESC_DISPATCH = 4,
00036    VTPARSE_ACTION_EXECUTE = 5,
00037    VTPARSE_ACTION_HOOK = 6,
00038    VTPARSE_ACTION_IGNORE = 7,
00039    VTPARSE_ACTION_OSC_END = 8,
00040    VTPARSE_ACTION_OSC_PUT = 9,
00041    VTPARSE_ACTION_OSC_START = 10,
00042    VTPARSE_ACTION_PARAM = 11,
00043    VTPARSE_ACTION_PRINT = 12,
00044    VTPARSE_ACTION_PUT = 13,
00045    VTPARSE_ACTION_UNHOOK = 14,
00046 } vtparse_action_t;
00047 
00048 typedef unsigned char state_change_t;
00049 
00050 state_change_t GET_STATE_TABLE(const int state, const int ch);
00051 vtparse_action_t GET_ENTRY_ACTIONS(const int state);
00052 vtparse_action_t GET_EXIT_ACTIONS(const int state);
00053 const char *GET_ACTION_NAMES(const int n);
00054 const char *GET_STATE_NAMES(const int n);
00055 
00056 #endif
00057