Skip to main content

A library for inserting a piece of code into another piece of code

Project description

Description

A library allows to insert one piece of code into another piece of code secretly, without changing line numbers.

The current version supports only Python 3.6. Also it allows to insert only functions without arguments.

Usage

A library has a useful function insert_code, which inserts which takes the original code, the code to insert and line number for insertion. The simplest example of usage from the examples directory:

from bytesinsert import insert_code


def hello():
    print("1")
    print("3")


def new_code():
    print("2")


code_orig = hello.__code__
code_to_insert = new_code.__code__
success, result = insert_code(code_orig, code_to_insert, 6)
if success:
    exec(result)

The resulting output will be:

1
2
3

The insert_code function inserted code from the function new_code into the function hello by updating its bytecode.

Install

This library can be easily installed with pip:

pip install bytesinsert

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bytesinsert-0.2.2.tar.gz (6.9 kB view details)

Uploaded Source

File details

Details for the file bytesinsert-0.2.2.tar.gz.

File metadata

  • Download URL: bytesinsert-0.2.2.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for bytesinsert-0.2.2.tar.gz
Algorithm Hash digest
SHA256 662f07cacf042f1232bb92db475aabdfd2750fcb3fe01ee5315ce7c02a6de83e
MD5 6b1132992530c3501d41daaa80434751
BLAKE2b-256 a32768870afeb98bdfe35bf47606c25ee2ef50b39ab86c3817ce90095487e6d0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page