diff --git a/version0.2/nasal_functional.h b/version0.2/nasal_functional.h deleted file mode 100644 index 4cdbe22..0000000 --- a/version0.2/nasal_functional.h +++ /dev/null @@ -1,101 +0,0 @@ -#ifndef __NASAL_FUNCTIONAL_H__ -#define __NASAL_FUNCTIONAL_H__ - -#include "nasal_var.h" - -//for function -#define FUNC_BEGIN 0 -#define FUNC_OPERATOR 1 -#define FUNC_IDENTIFIER 2 -#define FUNC_NUMBER 3 -#define FUNC_RESERVEWORD 4 -#define FUNC_STRING 5 - -//for token and lexer -#define OPERATOR 1 //界符 or 运算符 -#define IDENTIFIER 2 //自定义标识符 -#define NUMBER 3 //数字 -#define RESERVEWORD 4 //关键字 -#define STRING 5 //字符串类型 - -struct token_unit -{ - int type; - std::string content; - int line; - token_unit *next; -}; - -struct parameter -{ - std::string var_name; - var param_var; - parameter *next; -}; - -class func -{ - private: - token_unit *statement_head; - parameter *parameter_head; - public: - func(); - func(const func&); - ~func(); - func& operator=(const func&); - void append_var(std::string&,var&); - void append_token(const int,const int,std::string &); - void print_info(); -}; - -class token_list -{ - private: - token_unit *head; - int list_range; - public: - token_list(); - ~token_list(); - token_unit* get_head(); - int get_list_range(); - void print_line_token(const int); - void delete_all(); - void append(const int,const int,std::string&); - void print(); -}; - -token_list nasal_lexer; - -struct parse_unit -{ - int type; - std::string content; - int line; -}; - -class parse -{ - private: - parse_unit *content_array; - parse_unit *statement; - int len; - public: - parse(); - ~parse(); - void content_array_set_empty(); - void statement_set_empty(); - void brace_check(); - bool def_function(); - bool def_array(); - bool def_hash(); - bool def_scalar(); - bool asi_function(); - bool asi_array(); - bool asi_hash(); - bool asi_scalar(); - void definition(); - void assignment(); - void total_run(token_list&); -}; - -#endif