-
Notifications
You must be signed in to change notification settings - Fork 2
/
scribble.patch
50 lines (45 loc) · 1.93 KB
/
scribble.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
From 09d801df645c66e560b077a25aa9f3be69e3a333 Mon Sep 17 00:00:00 2001
From: Fangyi Zhou <[email protected]>
Date: Mon, 4 Jan 2021 15:04:16 +0000
Subject: [PATCH] Attempt to fix the issue of iteration order
---
scribble-ast/src/main/java/org/scribble/job/Job.java | 2 +-
.../src/main/java/org/scribble/core/job/CoreContext.java | 6 ++++--
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/scribble-ast/src/main/java/org/scribble/job/Job.java b/scribble-ast/src/main/java/org/scribble/job/Job.java
index 153b7fbcc..a2d422e39 100644
--- a/scribble-ast/src/main/java/org/scribble/job/Job.java
+++ b/scribble-ast/src/main/java/org/scribble/job/Job.java
@@ -137,7 +137,7 @@ public class Job
if (this.core == null)
{
Map<ModuleName, Module> parsed = this.context.getParsed();
- Set<GProtocol> imeds = new HashSet<>();
+ Set<GProtocol> imeds = new LinkedHashSet<>();
for (ModuleName fullname : parsed.keySet())
{
GTypeTranslator t = this.config.vf.GTypeTranslator(this, fullname,
diff --git a/scribble-core/src/main/java/org/scribble/core/job/CoreContext.java b/scribble-core/src/main/java/org/scribble/core/job/CoreContext.java
index 596b32af4..b23c3aa92 100644
--- a/scribble-core/src/main/java/org/scribble/core/job/CoreContext.java
+++ b/scribble-core/src/main/java/org/scribble/core/job/CoreContext.java
@@ -15,6 +15,7 @@ package org.scribble.core.job;
import java.io.File;
import java.util.HashMap;
+import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
@@ -86,8 +87,9 @@ public class CoreContext
{
this.core = core;
//this.modcs = Collections.unmodifiableMap(modcs);
- this.imeds = imeds.stream()
- .collect(Collectors.toMap(x -> x.fullname, x -> x));
+ Map<ProtoName<Global>, GProtocol> tmp = new LinkedHashMap<>();
+ imeds.stream().forEach(x -> tmp.put(x.fullname, x));
+ this.imeds = tmp;
}
// Used by Core for pass running
--
2.28.0