Revisión | 5ab04ee3f8c3269b946d6cea10fc56980657ac8d (tree) |
---|---|
Tiempo | 2019-04-03 23:22:16 |
Autor | dhrname <dhrname@user...> |
Commiter | dhrname |
Modify the class.h
@@ -28,11 +28,13 @@ | ||
28 | 28 | * また、数世代の遺伝継承によって、多重継承を実現する |
29 | 29 | * |
30 | 30 | * 予約語 |
31 | - * 集合族 継承 選出 自分 自己 自身 我 俺 私 小生 余 拙者 | |
31 | + * 集合族 継承 名前空間 自分 自己 自身 我 俺 私 小生 余 拙者 | |
32 | 32 | * |
33 | 33 | * この予約語、あるいはこの予約語に関数適用されない束縛変数は、すべて添数とみなす |
34 | 34 | * 暗黙の前提として、集合族の名前はグローバル集合族の添数と考える。したがって、 |
35 | 35 | * グローバル集合族の像はひとつのある集合族である |
36 | + * ただし、最後に名前空間が指定されているときは、その名前空間をグローバル集合族の添数とみなし、 | |
37 | + * 集合族の名前は、以前の集合族の名前は、その名前空間の添数と考える | |
36 | 38 | * |
37 | 39 | * また、選出は遺伝継承をたどっていった始祖の添数である |
38 | 40 | * |
@@ -45,8 +47,10 @@ | ||
45 | 47 | * 丙と「集合族の内容」(変数)を継承した子供の集合族 |
46 | 48 | * 丙と子供を継承した孫という集合族 |
47 | 49 | * |
48 | - * 選出された孫 | |
50 | + * 孫 | |
49 | 51 | * 「甲は乙する」(甲) |
52 | + * | |
53 | + * サンプルという名前空間 | |
50 | 54 | * */ |
51 | 55 | |
52 | 56 | #define ST_CHAR_KEYWORDS_MAP_MAX 12 |
@@ -58,6 +62,9 @@ typedef struct ST_UTF8_Keywords { | ||
58 | 62 | size_t length; |
59 | 63 | } ST_UTF8_Keywords; |
60 | 64 | |
65 | +/*グローバル集合族*/ | |
66 | +ST_Node ST_Global_Family_Of_Sets; | |
67 | + | |
61 | 68 | /*ST_parseClass 関数 |
62 | 69 | * 引数のノードからクラスの文法を処理する*/ |
63 | 70 | void ST_parseClass(ST_Node); |
@@ -1428,8 +1428,17 @@ void ST_main(ST_Char* name, ST_Char* s, uint_fast64_t filelength) | ||
1428 | 1428 | * 引数のノードからクラスの文法を解析処理する*/ |
1429 | 1429 | void ST_parseClass(ST_Node node) |
1430 | 1430 | { |
1431 | - ST_Char *keywords = u8"集合族 継承 選出 自分 自己 自身 我 俺 私 小生 余 拙者"; | |
1431 | + ST_Char *keywords = u8"集合族 継承 名前空間 自分 自己 自身 我 俺 私 小生 余 拙者"; | |
1432 | 1432 | |
1433 | 1433 | ST_Token_Mode* tokens = alloca_tokens(strlen(keywords)*10); |
1434 | 1434 | ST_Ordered_Pair *varlist = ST_tokenize(keywords, tokens); |
1435 | + | |
1436 | + ST_First_Type num = ST_first(varlist); | |
1437 | + | |
1438 | + for (ST_Node a = node;ST_isEmptyNode(a);a = ST_getPreviousNode(a)) | |
1439 | + { | |
1440 | + if (ST_getBoundVariable(a) == num) | |
1441 | + { | |
1442 | + } | |
1443 | + } | |
1435 | 1444 | } |