2014-11-04 14:21:49 -08:00
|
|
|
#ifndef ELM_CODE_COMMON_H_
|
|
|
|
# define ELM_CODE_COMMON_H_
|
|
|
|
|
2014-11-16 15:52:41 -08:00
|
|
|
typedef struct _Elm_Code Elm_Code;
|
2014-12-24 10:06:51 -08:00
|
|
|
typedef struct _Elm_Code_File Elm_Code_File;
|
2014-11-16 15:52:41 -08:00
|
|
|
|
2015-02-23 16:32:40 -08:00
|
|
|
/** Event marking that a single line has loaded or changed */
|
2016-08-10 07:23:04 -07:00
|
|
|
EAPI extern const Efl_Event_Description ELM_CODE_EVENT_LINE_LOAD_DONE;
|
2015-02-14 15:14:06 -08:00
|
|
|
/** Event that marks a file load has been completed */
|
2016-08-10 07:23:04 -07:00
|
|
|
EAPI extern const Efl_Event_Description ELM_CODE_EVENT_FILE_LOAD_DONE;
|
2014-11-06 15:43:56 -08:00
|
|
|
|
2014-11-04 16:01:28 -08:00
|
|
|
typedef enum {
|
|
|
|
ELM_CODE_STATUS_TYPE_DEFAULT = 0,
|
2015-10-10 12:00:43 -07:00
|
|
|
ELM_CODE_STATUS_TYPE_CURRENT,
|
2015-02-21 09:30:17 -08:00
|
|
|
ELM_CODE_STATUS_TYPE_IGNORED,
|
|
|
|
ELM_CODE_STATUS_TYPE_NOTE,
|
|
|
|
ELM_CODE_STATUS_TYPE_WARNING,
|
2014-11-04 16:01:28 -08:00
|
|
|
ELM_CODE_STATUS_TYPE_ERROR,
|
2015-02-21 09:30:17 -08:00
|
|
|
ELM_CODE_STATUS_TYPE_FATAL,
|
2014-11-04 16:01:28 -08:00
|
|
|
|
2014-11-09 06:44:35 -08:00
|
|
|
ELM_CODE_STATUS_TYPE_ADDED,
|
|
|
|
ELM_CODE_STATUS_TYPE_REMOVED,
|
|
|
|
ELM_CODE_STATUS_TYPE_CHANGED,
|
|
|
|
|
2014-11-18 13:11:10 -08:00
|
|
|
ELM_CODE_STATUS_TYPE_PASSED,
|
|
|
|
ELM_CODE_STATUS_TYPE_FAILED,
|
|
|
|
|
2015-04-19 17:21:03 -07:00
|
|
|
ELM_CODE_STATUS_TYPE_TODO,
|
|
|
|
|
2014-11-04 16:01:28 -08:00
|
|
|
ELM_CODE_STATUS_TYPE_COUNT
|
|
|
|
} Elm_Code_Status_Type;
|
|
|
|
|
|
|
|
|
|
|
|
typedef enum {
|
|
|
|
ELM_CODE_TOKEN_TYPE_DEFAULT = ELM_CODE_STATUS_TYPE_COUNT,
|
2014-11-13 13:34:47 -08:00
|
|
|
ELM_CODE_TOKEN_TYPE_COMMENT,
|
2015-02-21 09:30:17 -08:00
|
|
|
ELM_CODE_TOKEN_TYPE_STRING,
|
|
|
|
ELM_CODE_TOKEN_TYPE_NUMBER,
|
|
|
|
ELM_CODE_TOKEN_TYPE_BRACE,
|
|
|
|
ELM_CODE_TOKEN_TYPE_TYPE,
|
|
|
|
ELM_CODE_TOKEN_TYPE_CLASS,
|
|
|
|
ELM_CODE_TOKEN_TYPE_FUNCTION,
|
|
|
|
ELM_CODE_TOKEN_TYPE_PARAM,
|
|
|
|
ELM_CODE_TOKEN_TYPE_KEYWORD,
|
|
|
|
ELM_CODE_TOKEN_TYPE_PREPROCESSOR,
|
2014-11-04 16:01:28 -08:00
|
|
|
|
2014-11-13 13:51:23 -08:00
|
|
|
ELM_CODE_TOKEN_TYPE_ADDED,
|
|
|
|
ELM_CODE_TOKEN_TYPE_REMOVED,
|
|
|
|
ELM_CODE_TOKEN_TYPE_CHANGED,
|
|
|
|
|
2017-06-26 14:17:07 -07:00
|
|
|
ELM_CODE_TOKEN_TYPE_MATCH,
|
|
|
|
|
2014-11-04 16:01:28 -08:00
|
|
|
ELM_CODE_TOKEN_TYPE_COUNT
|
|
|
|
} Elm_Code_Token_Type;
|
|
|
|
|
2014-11-04 14:21:49 -08:00
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
2014-11-06 15:43:56 -08:00
|
|
|
|
|
|
|
|
2014-11-04 14:21:49 -08:00
|
|
|
/**
|
|
|
|
* @file
|
|
|
|
* @brief Common data structures and constants.
|
|
|
|
*/
|
|
|
|
|
2015-08-29 06:46:18 -07:00
|
|
|
struct _Elm_Code_Config
|
|
|
|
{
|
|
|
|
Eina_Bool trim_whitespace;
|
2018-03-24 03:39:32 -07:00
|
|
|
Eina_Bool indent_style_efl;
|
2015-08-29 06:46:18 -07:00
|
|
|
};
|
|
|
|
|
2014-11-16 15:52:41 -08:00
|
|
|
struct _Elm_Code
|
2014-11-04 14:21:49 -08:00
|
|
|
{
|
|
|
|
Elm_Code_File *file;
|
|
|
|
Eina_List *widgets;
|
2014-11-16 15:52:41 -08:00
|
|
|
Eina_List *parsers;
|
2015-08-29 06:46:18 -07:00
|
|
|
|
|
|
|
struct _Elm_Code_Config config;
|
2014-11-16 15:52:41 -08:00
|
|
|
};
|
2014-11-04 14:21:49 -08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* @}
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif /* ELM_CODE_COMMON_H_ */
|