run.h 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. #ifndef VIRTUALMATH_RUN_H
  2. #define VIRTUALMATH_RUN_H
  3. #include "__macro.h"
  4. typedef struct Result Result;
  5. typedef enum ResultType ResultType;
  6. typedef struct LinkValue LinkValue;
  7. typedef struct Value Value;
  8. typedef struct Statement Statement;
  9. typedef struct StatementList StatementList;
  10. typedef struct Inter Inter;
  11. typedef struct VarList VarList;
  12. typedef struct Parameter Parameter;
  13. typedef struct Argument Argument;
  14. typedef struct DecorationStatement DecorationStatement;
  15. typedef ResultType (*VarInfo)(wchar_t **name, int *times, FUNC);
  16. ResultType globalIterStatement(Result *result, Inter *inter, Statement *st, bool p_clock);
  17. bool operationSafeInterStatement(FUNC);
  18. bool optSafeInterStatement(FUNC);
  19. bool ifBranchSafeInterStatement(FUNC);
  20. bool functionSafeInterStatement(FUNC);
  21. bool includeSafeInterStatement(FUNC);
  22. bool blockSafeInterStatement(FUNC);
  23. bool cycleBranchSafeInterStatement(FUNC);
  24. bool withBranchSafeInterStatement(FUNC);
  25. bool tryBranchSafeInterStatement(FUNC);
  26. Statement *checkLabel(Statement *base, wchar_t *label);
  27. ResultType operationStatement(FUNC);
  28. ResultType setClass(FUNC);
  29. ResultType setFunction(FUNC);
  30. ResultType setLambda(FUNC);
  31. ResultType callBack(FUNC);
  32. ResultType elementSlice(FUNC);
  33. ResultType callBackCore(LinkValue *function_value, Argument *arg, fline line, char *file, int pt_sep, FUNC_NT);
  34. ResultType callBackCorePt(LinkValue *function_value, Parameter *pt, long line, char *file, FUNC_NT);
  35. ResultType setDecoration(DecorationStatement *ds, LinkValue *value, FUNC_NT);
  36. ResultType getVar(FUNC, VarInfo var_info);
  37. ResultType getBaseValue(FUNC);
  38. ResultType getList(FUNC);
  39. ResultType getDict(FUNC);
  40. ResultType setDefault(FUNC);
  41. ResultType ifBranch(FUNC);
  42. ResultType whileBranch(FUNC);
  43. ResultType forBranch(FUNC);
  44. ResultType withBranch(FUNC);
  45. ResultType tryBranch(FUNC);
  46. ResultType breakCycle(FUNC);
  47. ResultType continueCycle(FUNC);
  48. ResultType regoIf(FUNC);
  49. ResultType restartCode(FUNC);
  50. ResultType returnCode(FUNC);
  51. ResultType yieldCode(FUNC);
  52. ResultType raiseCode(FUNC);
  53. ResultType assertCode(FUNC);
  54. ResultType gotoLabel(FUNC);
  55. ResultType runLabel(FUNC);
  56. ResultType includeFile(FUNC);
  57. ResultType importFile(FUNC);
  58. ResultType fromImportFile(FUNC);
  59. ResultType pointAss(Statement *name, LinkValue *value, FUNC_NT);
  60. ResultType listAss(Statement *name, LinkValue *value, FUNC_NT);
  61. ResultType assCore(Statement *name, LinkValue *value, bool check_aut, bool setting, FUNC_NT);
  62. ResultType downAss(Statement *name, LinkValue *value, FUNC_NT);
  63. ResultType varAss(Statement *name, LinkValue *value, bool check_aut, bool setting, FUNC_NT);
  64. ResultType delOperation(FUNC);
  65. ResultType delCore(Statement *name, bool check_aut, FUNC_NT);
  66. ResultType listDel(Statement *name, FUNC_NT);
  67. ResultType varDel(Statement *name, bool check_aut, FUNC_NT);
  68. ResultType pointDel(Statement *name, FUNC_NT);
  69. ResultType downDel(Statement *name, FUNC_NT);
  70. bool is_quitExc(LinkValue *value, Inter *inter);
  71. #endif //VIRTUALMATH_RUN_H