Permalink
Browse files

Replace more global counters with itertools.count().

  • Loading branch information...
Andy Chu
Andy Chu committed Mar 21, 2018
1 parent 9fd710e commit c93d6c945130f0de192bf322cfccbd4d92884fd1
Showing with 8 additions and 15 deletions.
  1. +3 −6 opy/compiler2/pyassem.py
  2. +5 −9 opy/compiler2/symbols.py
View
@@ -2,6 +2,7 @@
from __future__ import print_function
import dis
import itertools
from .consts import CO_OPTIMIZED, CO_NEWLOCALS, CO_VARARGS, CO_VARKEYWORDS
@@ -114,18 +115,14 @@ def PatchJumps(insts, offsets):
insts[i] = (opname, offsets[block_arg])
gBlockCounter = 0
gBlockCounter = itertools.count()
class Block(object):
def __init__(self, label=''):
self.label = label
global gBlockCounter
self.bid = gBlockCounter
gBlockCounter += 1
self.bid = gBlockCounter.next()
self.insts = []
self.outEdges = set()
self.next = []
View
@@ -7,6 +7,7 @@
SC_FREE, SC_CELL, SC_UNKNOWN
from .visitor import ASTVisitor
import itertools
import sys
import types
@@ -203,8 +204,8 @@ class ClassScope(Scope):
gLambdaCounter = 1
gGenExprCounter = 1
gLambdaCounter = itertools.count()
gGenExprCounter = itertools.count()
class SymbolVisitor(ASTVisitor):
@@ -236,10 +237,7 @@ def visitFunction(self, node, parent):
self.handle_free_vars(scope, parent)
def visitGenExpr(self, node, parent):
global gGenExprCounter
obj_name = "generator expression<%d>" % gGenExprCounter
gGenExprCounter += 1
obj_name = "generator expression<%d>" % gGenExprCounter.next()
scope = GenExprScope(obj_name, self.module, self.klass)
if parent.nested or isinstance(parent, (FunctionScope, GenExprScope)):
@@ -274,9 +272,7 @@ def visitLambda(self, node, parent, assign=0):
for n in node.defaults:
self.visit(n, parent)
global gLambdaCounter
obj_name = "lambda.%d" % gLambdaCounter
gLambdaCounter += 1
obj_name = "lambda.%d" % gLambdaCounter.next()
scope = LambdaScope(obj_name, self.module, klass=self.klass)

0 comments on commit c93d6c9

Please sign in to comment.