فهرست منبع

Modelled first 10 rules

Yentl Van Tendeloo 7 سال پیش
والد
کامیت
89ad03db9e
1فایلهای تغییر یافته به همراه193 افزوده شده و 0 حذف شده
  1. 193 0
      bootstrap/MvK_rules.mvc

+ 193 - 0
bootstrap/MvK_rules.mvc

@@ -498,6 +498,199 @@ Rule Call_Call_Params_N8 {
 }
 
 Rule Call_Params_First_Multi_N9 {
+    Root N9_0 {}
+    Match N9_1 {
+        match = True
+    }
+    Match N9_2 {
+        match = True
+    ]
+    Create N9_3 {}
+    Create N9_4 {
+        value = "'init'"
+    }
+    Create N9_5 {}
+    Create N9_6 {}
+    Create N9_7 {}
+    Match N9_8 {}
+    Match N9_9 {}
+    Match N9_10 {}
+    Create N9_11 {
+        value = "'init'"
+    }
+    Create N9_12 {}
+    Match N9_13 {}
+    Match N9_14 {
+        value = "!call"
+        match = True
+    }
+    Match N9_15 {}
+    Match N9_16 {}
+    Match N9_17 {}
+
+    MatchEdge (N9_0, N9_1) {
+        value = "username"
+    }
+    MatchEdge (N9_1, N9_2) {
+        value = "'frame'"
+    }
+    DeleteEdge (N9_2, N9_13) {
+        value = "'evalstack'"
+    }
+    DeleteEdge (N9_2, N9_14) {
+        value = "'IP'"
+    }
+    CreateEdge (N9_2, N9_11) {
+        value = "'init'"
+    }
+    DeleteEdge (N9_2, N9_15) {
+        value = "'phase'"
+    }
+    MatchEdge (N9_2, N9_10) {
+        value = "'returnvalue'"
+    }
+    CreateEdge (N9_2, N9_17) {
+        value = "'IP'"
+    }
+    CreateEdge (N9_3, N9_14) {
+        value = "'caller'"
+    }
+    CreateEdge (N9_3, N9_2) {
+        value = "'prev'"
+    }
+    CreateEdge (N9_3, N9_4) {
+        value = "'phase'"
+    }
+    CreateEdge (N9_3, N9_5) {
+        value = "'evalstack'"
+    }
+    CreateEdge (N9_3, N9_6) {
+        value = "'symbols'"
+    }
+    CreateEdge (N9_3, N9_7) {
+        value = "'returnvalue'"
+    }
+    CreateEdge (N9_3, N9_8) {
+        value = "'IP'"
+    }
+    MatchEdge (N9_10, N9_9) {
+        value = "'params'"
+    }
+    MatchEdge (N9_10, N9_8) {
+        value = "'body'"
+    }
+    CreateEdge (N9_12, N9_13) {
+        value = "'prev'"
+    }
+    CreateEdge (N9_13, N9_14) {
+        value = "'inst'"
+    }
+    MatchEdge (N9_14, N9_15) {
+        value = "'params'"
+    }
+    MatchEdge (N9_15, N9_16) {
+        value = "'next_param'"
+    }
+    MatchEdge (N9_15, N9_17) {
+        value = "'value'"
+    }
+}
+
+Rule Call_Params_First_Single_N10 {
+    Root N10_0 {}
+    Match N10_1 {
+        match = True
+    }
+    Match N10_2 {
+        match = True
+    }
+    Create N10_3 {}
+    Create N10_4 {
+        value = "'init'"
+    }
+    Create N10_5 {}
+    Create N10_6 {}
+    Create N10_7 {}
+    Match N10_8 {}
+    Create N10_9 {
+        value = "'init'"
+    }
+    Match N10_10 {}
+    Match N10_11 {}
+    Match N10_12 {}
+    Create N10_13 {
+        value = "'call'"
+    }
+    Match N10_14 {
+        value = "!call"
+    }
+    Match N10_15 {}
+    Match N10_16 {}
+    Create N10_17 {}
+
+    MatchEdge (N10_0, N10_1) {
+        value = "username"
+    }
+    MatchEdge (N10_1, N10_2) {
+        value = "'frame'"
+    }
+    CreateEdge (N10_2, N10_16) {
+        value = "'IP'"
+    }
+    CreateEdge (N10_2, N10_9) {
+        value = "'phase'"
+    }
+    MatchEdge (N10_2, N10_10) {
+        value = "'returnvalue'"
+    }
+    DeleteEdge (N10_2, N10_12) {
+        value = "'evalstack'"
+    }
+    CreateEdge (N10_2, N10_17) {
+        value = "'evalstack'"
+    }
+    DeleteEdge (N10_2, N10_14) {
+        value = "'IP'"
+    }
+    DeleteEdge (N10_2, N10_15) {
+        value = "'phase'"
+    }
+    CreateEdge (N10_3, N10_4) {
+        value = "'phase'"
+    }
+    CreateEdge (N10_3, N10_5) {
+        value = "'evalstack'"
+    }
+    CreateEdge (N10_3, N10_6) {
+        value = "'symbols'"
+    }
+    CreateEdge (N10_3, N10_7) {
+        value = "'returnvalue'"
+    }
+    MatchEdge (N10_10, N10_8) {
+        value = "'body'"
+    }
+    MatchEdge (N10_10, N10_11) {
+        value = "'params'"
+    }
+    CreateEdge (N10_12, N10_13) {
+        value = "'phase'"
+    }
+    CreateEdge (N10_12, N10_14) {
+        value = "'inst'"
+    }
+    MatchEdge (N10_14, N10_15) {
+        value = "'params'"
+    }
+    MatchEdge (N10_14, N10_15) {
+        value = "'last_param'"
+    }
+    MatchEdge (N10_15, N10_16) {
+        value = "'value'"
+    }
+    CreateEdge (N10_17, N10_12) {
+        value = "'prev'"
+    }
 }
 
 Rule If_False_N21 {