Files
libs/safemap.src
- SafeMap = {}
SafeMap.methods = ["hasIndex", "indexOf", "indexes", "len", "pop", "push", "remove", "shuffle", "sum", "values"]
- SafeMap.methods = ["hasIndex", "indexOf", "indexes", "len", "pop", "push", "remove", "shuffle", "sum", "values", "__isa"]
- SafeMap.escaped = []
- for i in SafeMap.methods.indexes
- SafeMap.escaped.push(char(2000 + i))
- end for
- SafeMap.escape = function(index)
- if self.methods.indexOf(index) != null then
- index = self.escaped[self.methods.indexOf(index)]
- end if
- return index
- end function
- SafeMap.unescape = function(index)
- if self.escaped.indexOf(index) != null then
- index = self.methods[self.escaped.indexOf(index)]
- end if
- return index
- end function
- SafeMap.set = function(dict, index, value)
- index = self.escape(index)
- dict[index] = value
- return dict
- end function
- SafeMap.get = function(dict, index)
- index = self.escape(index)
- return dict[index]
- end function
- SafeMap.hasIndex = function(dict, index)
- index = self.escape(index)
- return dict.hasIndex(index)
- end function
- SafeMap.indexOf = function(dict, value)
- index = dict.indexOf(value)
- index = self.unescape(index)
- return index
- end function
- SafeMap.indexes = function(dict)
- indexes = dict.indexes
- for i in indexes.indexes
- indexes[i] = self.unescape(indexes[i])
- end for
- return indexes
- end function
- SafeMap.len = function(dict)
- return dict.len
- end function
- SafeMap.pop = function(dict)
- return dict.pop
- end function
- SafeMap.push = function(dict, index)
- index = self.escape(index)
- return dict.push(index)
- end function
- SafeMap.remove = function(dict, index)
- index = self.escape(index)
- return dict.remove(index)
- end function
- SafeMap.shuffle = function(dict)
- return dict.shuffle
- end function
- SafeMap.sum = function(dict)
- return dict.sum
- end function
- SafeMap.values = function(dict)
- return dict.values
- end function
-