Permalink
Browse files

Rename ArgConverter -> ArgEncoder, and remove redundant code.

Constants code objects were already serialized by ArgEncoder.  The
second MakeCodeObject() call would never be hit.
  • Loading branch information...
Andy Chu
Andy Chu committed Mar 20, 2018
1 parent 29a135e commit 717f875ef56280ba751803ef572e261567033bc3
Showing with 5 additions and 11 deletions.
  1. +5 −11 opy/compiler2/pyassem.py
View
@@ -444,15 +444,15 @@ def MakeCodeObject(self):
# Convert arguments from symbolic to concrete form
# Mutates the insts argument. The converters mutate self.names,
# self.varnames, etc.
conv = ArgConverter(self.klass, self.consts, self.names, self.varnames,
self.closure)
enc = ArgEncoder(self.klass, self.consts, self.names, self.varnames,
self.closure)
for i, t in enumerate(insts):
if len(t) == 2:
opname, oparg = t
method = conv.Get(opname)
method = enc.Get(opname)
if method:
insts[i] = opname, method(conv, oparg)
insts[i] = opname, method(enc, oparg)
ass = Assemble(insts)
@@ -464,12 +464,6 @@ def MakeCodeObject(self):
if self.flags & CO_VARKEYWORDS:
self.argcount -= 1
consts = []
for elt in self.consts:
if isinstance(elt, PyFlowGraph):
elt = elt.MakeCodeObject()
consts.append(elt)
return types.CodeType(
self.argcount, nlocals, stacksize, self.flags,
ass.Bytecode(),
@@ -482,7 +476,7 @@ def MakeCodeObject(self):
tuple(self.cellvars))
class ArgConverter(object):
class ArgEncoder(object):
""" TODO: This should just be a simple switch ."""
def __init__(self, klass, consts, names, varnames, closure):

0 comments on commit 717f875

Please sign in to comment.