Ejemplo n.º 1
0
def generateBytecodeFrozenCode():
    frozen_defs = []

    for frozen_module in frozen_modules:
        module_name, code_data, is_package, _filename, _is_late = frozen_module

        size = len(code_data)

        # Packages are indicated with negative size.
        if is_package:
            size = -size

        frozen_defs.append(
            """\
{{ (char *)"{module_name}", (unsigned char *){data}, {size} }},""".format(
                module_name = module_name,
                data        = stream_data.getStreamDataCode(
                    value      = code_data,
                    fixed_size = True
                ),
                size        = size
            )
        )

        if Options.isShowInclusion():
            info("Embedded as frozen module '%s'.", module_name)

    return CodeTemplates.template_frozen_modules % {
        "frozen_modules" : indented(frozen_defs)
    }
Ejemplo n.º 2
0
def generateBytecodeFrozenCode():
    frozen_defs = []

    for uncompiled_module in getUncompiledTechnicalModules():
        module_name = uncompiled_module.getFullName()
        code_data = uncompiled_module.getByteCode()
        is_package = uncompiled_module.isUncompiledPythonPackage()

        size = len(code_data)

        # Packages are indicated with negative size.
        if is_package:
            size = -size

        frozen_defs.append("""\
{{ "{module_name}", {start}, {size} }},""".format(
            module_name=module_name,
            start=stream_data.getStreamDataOffset(code_data),
            size=size))

        if Options.isShowInclusion():
            info("Embedded as frozen module '%s'.", module_name)

    return template_frozen_modules % {
        "frozen_modules": indented(frozen_defs, 2)
    }
Ejemplo n.º 3
0
def generateBytecodeFrozenCode():
    frozen_defs = []

    for frozen_module in frozen_modules:
        module_name, code_data, is_package, _filename, _is_late = frozen_module

        size = len(code_data)

        # Packages are indicated with negative size.
        if is_package:
            size = -size

        frozen_defs.append("""\
{{ (char *)"{module_name}", (unsigned char *){data}, {size} }},""".format(
            module_name=module_name,
            data=stream_data.getStreamDataCode(value=code_data,
                                               fixed_size=True),
            size=size))

        if Options.isShowInclusion():
            info("Embedded as frozen module '%s'.", module_name)

    return CodeTemplates.template_frozen_modules % {
        "frozen_modules": indented(frozen_defs)
    }
Ejemplo n.º 4
0
def generateBytecodeFrozenCode():
    frozen_defs = []

    for uncompiled_module in getUncompiledModules():
        module_name = uncompiled_module.getFullName()
        code_data = uncompiled_module.getByteCode()
        is_package = uncompiled_module.isPackage()

        size = len(code_data)

        # Packages are indicated with negative size.
        if is_package:
            size = -size

        frozen_defs.append(
            """\
{{ (char *)"{module_name}", (unsigned char *){data}, {size} }},""".format(
                module_name = module_name,
                data        = stream_data.getStreamDataCode(
                    value      = code_data,
                    fixed_size = True
                ),
                size        = size
            )
        )

        if Options.isShowInclusion():
            info("Embedded as frozen module '%s'.", module_name)

    return template_frozen_modules % {
        "frozen_modules" : indented(frozen_defs, 2)
    }
Ejemplo n.º 5
0
def generateBytecodeFrozenCode():
    frozen_defs = []

    for uncompiled_module in getUncompiledModules():
        module_name = uncompiled_module.getFullName()
        code_data = uncompiled_module.getByteCode()
        is_package = uncompiled_module.isPackage()

        size = len(code_data)

        # Packages are indicated with negative size.
        if is_package:
            size = -size

        frozen_defs.append("""\
{{ (char *)"{module_name}", (unsigned char *){data}, {size} }},""".format(
            module_name=module_name,
            data=stream_data.getStreamDataCode(value=code_data,
                                               fixed_size=True),
            size=size))

        if Options.isShowInclusion():
            info("Embedded as frozen module '%s'.", module_name)

    return template_frozen_modules % {
        "frozen_modules": indented(frozen_defs, 2)
    }
Ejemplo n.º 6
0
def generateBytecodeFrozenCode():
    frozen_defs = []

    for uncompiled_module in getUncompiledTechnicalModules():
        module_name = uncompiled_module.getFullName()
        code_data = uncompiled_module.getByteCode()
        is_package = uncompiled_module.isUncompiledPythonPackage()

        size = len(code_data)

        # Packages are indicated with negative size.
        if is_package:
            size = -size

        frozen_defs.append(
            """\
{{ "{module_name}", {start}, {size} }},""".format(
                module_name=module_name, start=stream_data.getStreamDataOffset(code_data), size=size
            )
        )

        if Options.isShowInclusion():
            info("Embedded as frozen module '%s'.", module_name)

    return template_frozen_modules % {"frozen_modules": indented(frozen_defs, 2)}
Ejemplo n.º 7
0
    def __str__(self):
        from nuitka.codegen.Indentation import indented

        parts = [""]

        for arg in self.args:
            if hasattr(arg, "asXmlText"):
                parts.append(indented("\n%s\n" % arg.asXmlText()))
            else:
                parts.append(arg)

        parts.append("")
        parts.append(
            "The above information should be included in a bug report.")

        return '\n'.join(parts)
Ejemplo n.º 8
0
    def __str__(self):
        try:
            from nuitka.codegen.Indentation import indented

            parts = [""]

            for arg in self.args:  # false alarm, pylint: disable=I0021,not-an-iterable
                if hasattr(arg, "asXmlText"):
                    parts.append(indented("\n%s\n" % arg.asXmlText()))
                else:
                    parts.append(str(arg))

            parts.append("")
            parts.append("The above information should be included in a bug report.")

            return "\n".join(parts)
        except Exception as e:  # Catch all the things, pylint: disable=broad-except
            return "<NuitkaNodeError failed with %r>" % e
Ejemplo n.º 9
0
    def __str__(self):
        try:
            from nuitka.codegen.Indentation import indented

            parts = [""]

            for arg in self.args:  # false alarm, pylint: disable=I0021,not-an-iterable
                if hasattr(arg, "asXmlText"):
                    parts.append(indented("\n%s\n" % arg.asXmlText()))
                else:
                    parts.append(str(arg))

            parts.append("")
            parts.append("The above information should be included in a bug report.")

            return "\n".join(parts)
        except Exception as e:  # Catch all the things, pylint: disable=broad-except
            return "<NuitkaNodeError failed with %r>" % e