Ensure families and primitives have stable order, so that the code is generated in the same order each time.

This commit is contained in:
Ilya Gorbunov
2015-04-16 16:10:59 +03:00
parent 9759be5493
commit f402ae8540
@@ -1,11 +1,9 @@
package templates package templates
import templates.Family.* import templates.Family.*
import templates.Family.Collections
import java.io.StringReader import java.io.StringReader
import java.util.ArrayList import java.util.*
import java.util.HashMap
import java.util.HashSet
import java.util.StringTokenizer
import kotlin.properties.Delegates import kotlin.properties.Delegates
enum class Family { enum class Family {
@@ -49,8 +47,8 @@ class GenericFunction(val signature: String, val keyword: String = "fun") : Comp
var receiverAsterisk = false var receiverAsterisk = false
val inlineFamilies = HashMap<Family, Boolean>() val inlineFamilies = HashMap<Family, Boolean>()
val buildFamilies = HashSet(defaultFamilies.toList()) val buildFamilies = LinkedHashSet(defaultFamilies.toList())
private val buildPrimitives = HashSet(defaultPrimitives.toList()) private val buildPrimitives = LinkedHashSet(defaultPrimitives.toList())
var deprecate: String = "" var deprecate: String = ""
val deprecates = hashMapOf<Family, String>() val deprecates = hashMapOf<Family, String>()