A library for executing CEDARScript, a SQL-like language for code analysis and transformations
Project description
CEDARScript Editor (Python)
CEDARScript Editor (Python)
is a Python library for interpreting CEDARScript
scripts and
performing code analysis and modification operations on a codebase.
What is CEDARScript?
CEDARScript (Concise Examination, Development, And Refactoring Script) is a domain-specific language that aims to improve how AI coding assistants interact with codebases and communicate their code modification intentions. It provides a standardized way to express complex code modification and analysis operations, making it easier for AI-assisted development tools to understand and execute these tasks.
Features
- Given a
CEDARScript
script and a base direcotry, executes the script commands on files inside the base directory; - Return results in
XML
format for easier parsing and processing by LLM systems
Installation
You can install CEDARScript
Editor using pip:
pip install cedarscript_editor
Usage
Here's a quick example of how to use CEDARScript
Editor:
from cedarscript_editor import CEDARScriptEdior
parser = CEDARScriptEdior()
code = """
CREATE FILE "example.py"
UPDATE FILE "example.py"
INSERT AT END OF FILE
CONTENT
print("Hello, World!")
END CONTENT
END UPDATE
"""
commands, errors = parser.parse_script(code)
if errors:
for error in errors:
print(f"Error: {error}")
else:
for command in commands:
print(f"Parsed command: {command}")
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for cedarscript_editor-0.2.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9501ccc21767004d91b3ed7208829794554d14d5a21edccaf2e62226acca9b2b |
|
MD5 | a572390d5a5e6203fffba7028d6f9341 |
|
BLAKE2b-256 | 1639b4c2ff8ba42494e58988dcfe6fe6adf94a957029713022b9d99ac0c7e46f |