|
15 | 15 | # limitations under the License.
|
16 | 16 |
|
17 | 17 | import base64
|
18 |
| -import collections |
19 | 18 | import datetime
|
20 | 19 | import json as jsonlib
|
21 | 20 | import math
|
22 | 21 | import random
|
23 | 22 | import re
|
| 23 | +try: |
| 24 | + from collections import OrderedDict |
| 25 | +except ImportError: |
| 26 | + class OrderedDict(object): |
| 27 | + def __init__(self): |
| 28 | + self.pairs = {} |
| 29 | + self.keys = [] |
| 30 | + def __setitem__(self, key, value): |
| 31 | + self.pairs[key] = value |
| 32 | + if key not in self.keys: |
| 33 | + self.keys.append(key) |
| 34 | + def __getitem__(self, key): |
| 35 | + return self.pairs[key] |
| 36 | + def values(self): |
| 37 | + return [self.pairs[k] for k in self.keys] |
| 38 | + def items(self): |
| 39 | + return [(k, self.pairs[k]) for k in self.keys] |
| 40 | + def __iter__(self): |
| 41 | + return iter(self.keys) |
| 42 | + def __len__(self): |
| 43 | + return len(self.keys) |
24 | 44 |
|
25 | 45 | from histogrammar.util import *
|
26 | 46 | from histogrammar.parsing import C99SourceToAst
|
@@ -251,7 +271,7 @@ def fillroot(self, ttree, start=-1, end=-1, debug=False, debugOnError=True, **ex
|
251 | 271 | derivedFieldTypes = {}
|
252 | 272 | derivedFieldExprs = {}
|
253 | 273 |
|
254 |
| - storageStructs = collections.OrderedDict() |
| 274 | + storageStructs = OrderedDict() |
255 | 275 | initCode = []
|
256 | 276 | fillCode = []
|
257 | 277 | weightVars = ["weight_0"]
|
@@ -323,11 +343,11 @@ def cuda(self, namespace=True, namespaceName=None, writeSize=False, commentMain=
|
323 | 343 | parser = C99SourceToAst()
|
324 | 344 | generator = C99AstToSource()
|
325 | 345 |
|
326 |
| - inputFieldNames = collections.OrderedDict() |
| 346 | + inputFieldNames = OrderedDict() |
327 | 347 | inputFieldTypes = {}
|
328 | 348 | derivedFieldTypes = {}
|
329 |
| - derivedFieldExprs = collections.OrderedDict() |
330 |
| - storageStructs = collections.OrderedDict() |
| 349 | + derivedFieldExprs = OrderedDict() |
| 350 | + storageStructs = OrderedDict() |
331 | 351 | initCode = []
|
332 | 352 | fillCode = []
|
333 | 353 | combineCode = []
|
@@ -595,11 +615,11 @@ def fillpycuda(self, **exprs):
|
595 | 615 | parser = C99SourceToAst()
|
596 | 616 | generator = C99AstToSource()
|
597 | 617 |
|
598 |
| - inputFieldNames = collections.OrderedDict() |
| 618 | + inputFieldNames = OrderedDict() |
599 | 619 | inputFieldTypes = {}
|
600 | 620 | derivedFieldTypes = {}
|
601 |
| - derivedFieldExprs = collections.OrderedDict() |
602 |
| - storageStructs = collections.OrderedDict() |
| 621 | + derivedFieldExprs = OrderedDict() |
| 622 | + storageStructs = OrderedDict() |
603 | 623 | initCode = []
|
604 | 624 | fillCode = []
|
605 | 625 | combineCode = []
|
|
0 commit comments