forked from M-Labs/artiq
Add attributes to TRange.
Also make attributes an OrderedDict, for stable order during LLVM IR generation.
This commit is contained in:
parent
a6950bf11d
commit
b58fa9067d
|
@ -36,6 +36,11 @@ class TRange(types.TMono):
|
||||||
if elt is None:
|
if elt is None:
|
||||||
elt = types.TVar()
|
elt = types.TVar()
|
||||||
super().__init__("range", {"elt": elt})
|
super().__init__("range", {"elt": elt})
|
||||||
|
self.attributes = OrderedDict([
|
||||||
|
("start", elt),
|
||||||
|
("stop", elt),
|
||||||
|
("step", elt),
|
||||||
|
])
|
||||||
|
|
||||||
class TException(types.TMono):
|
class TException(types.TMono):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
|
|
|
@ -4,6 +4,7 @@ in :mod:`asttyped`.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import string
|
import string
|
||||||
|
from collections import OrderedDict
|
||||||
|
|
||||||
def genalnum():
|
def genalnum():
|
||||||
ident = ["a"]
|
ident = ["a"]
|
||||||
|
@ -80,7 +81,7 @@ class TMono(Type):
|
||||||
unlike all other :class:`Type` descendants.
|
unlike all other :class:`Type` descendants.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
attributes = {}
|
attributes = OrderedDict()
|
||||||
|
|
||||||
def __init__(self, name, params={}):
|
def __init__(self, name, params={}):
|
||||||
self.name, self.params = name, params
|
self.name, self.params = name, params
|
||||||
|
@ -124,7 +125,7 @@ class TTuple(Type):
|
||||||
:ivar elts: (list of :class:`Type`) elements
|
:ivar elts: (list of :class:`Type`) elements
|
||||||
"""
|
"""
|
||||||
|
|
||||||
attributes = {}
|
attributes = OrderedDict()
|
||||||
|
|
||||||
def __init__(self, elts=[]):
|
def __init__(self, elts=[]):
|
||||||
self.elts = elts
|
self.elts = elts
|
||||||
|
@ -168,7 +169,7 @@ class TFunction(Type):
|
||||||
return type
|
return type
|
||||||
"""
|
"""
|
||||||
|
|
||||||
attributes = {}
|
attributes = OrderedDict()
|
||||||
|
|
||||||
def __init__(self, args, optargs, ret):
|
def __init__(self, args, optargs, ret):
|
||||||
self.args, self.optargs, self.ret = args, optargs, ret
|
self.args, self.optargs, self.ret = args, optargs, ret
|
||||||
|
@ -220,7 +221,7 @@ class TBuiltin(Type):
|
||||||
|
|
||||||
def __init__(self, name):
|
def __init__(self, name):
|
||||||
self.name = name
|
self.name = name
|
||||||
self.attributes = {}
|
self.attributes = OrderedDict()
|
||||||
|
|
||||||
def find(self):
|
def find(self):
|
||||||
return self
|
return self
|
||||||
|
|
Loading…
Reference in New Issue