# Path: nolang/opcodes.py
# class Opcode(object):
#     def __init__(self, name, numargs, stack_effect, description):
#     def __repr__(self):
# def setup():


from nolang import opcodes
from rpython.rlib.rstring import StringBuilder
        self.stack_depth, self.resume_stack_depth = r
        self.arglist = [x.name for x in arglist]
        self.argmapping = {}
        for i, item in enumerate(self.arglist):
            self.argmapping[item] = i
        self.argtypes = [x.tp for x in arglist]
        self.defaults = defaults
        for i, default in enumerate(self.defaults):
            if default != -1:
                self.first_default = i
                break
        else:
            self.first_default = -1
        if self.first_default == -1:
            self.minargs = len(self.arglist)
        else:
            self.minargs = self.first_default
        self.maxargs = len(self.arglist)
        self.lnotab = lnotab

    def setup(self, space):
        self.constants = [None] * len(self._constants)
        for i, constant in enumerate(self._constants):
            self.constants[i] = constant.wrap(space)

    def repr(self, numbers=True):
        i = 0
        res = StringBuilder()
        bc = self.bytecode
        while i < len(bc):

# Path: nolang/opcodes.py
# class Opcode(object):
#     def __init__(self, name, numargs, stack_effect, description):
#     def __repr__(self):
# def setup():


# Path: nolang/bytecode.py
from nolang import opcodes
from rpython.rlib.rstring import StringBuilder

        self.stack_depth, self.resume_stack_depth = r
        self.arglist = [x.name for x in arglist]
        self.argmapping = {}
        for i, item in enumerate(self.arglist):
            self.argmapping[item] = i
        self.argtypes = [x.tp for x in arglist]
        self.defaults = defaults
        for i, default in enumerate(self.defaults):
            if default != -1:
                self.first_default = i
                break
        else:
            self.first_default = -1
        if self.first_default == -1:
            self.minargs = len(self.arglist)
        else:
            self.minargs = self.first_default
        self.maxargs = len(self.arglist)
        self.lnotab = lnotab

    def setup(self, space):
        self.constants = [None] * len(self._constants)
        for i, constant in enumerate(self._constants):
            self.constants[i] = constant.wrap(space)

    def repr(self, numbers=True):
        i = 0
        res = StringBuilder()
        bc = self.bytecode
        while i < len(bc):

            opcode = opcodes.opcodes[ord(bc[i])]