Closed 0xF6 closed 2 months ago
The changes consist of various enhancements and optimizations across multiple files. Key modifications include updates to method signatures, additions of new parameters, adjustments in control flow, improved error handling, debugging aids, and refactoring of class constructors and initializations. These alterations aim to improve code clarity, efficiency, and maintainability while introducing new features and settings for optimization control.
File(s) | Change Summary |
---|---|
compiler/Log.cs |
Modified Error method parameters; updated internal method logic. |
compiler/cmd/CompileCommand.cs |
Added DisableOptimization option; corrected method signatures and loop handling; typos fixed. |
compiler/compilation/CompilationTask.cs |
Adjusted class constructor and property initializations; improved context/module setup. |
compiler/compilation/parts/bodies.cs |
Switched to using var for better scope management in GenerateBody method. |
compiler/veinc.csproj |
Enabled implicit usings and nullable reference types. |
lib/ast/stl/VeinParserExtensions.cs |
Added parameters to VeinParseException constructor; refactored ExchangeWrapper struct. |
lib/ast/syntax/ErrorDiff.cs |
Updated DiffErrorFull and DiffError methods to use FileInfo and handle error detection. |
lib/ast/syntax/PreviewParseExtension.cs |
Refactored PreviewMultiple for improved readability and efficiency. |
lib/ast/syntax/ast/expressions/... |
Modified constructor in CorruptedChainException class for better error handling. |
runtime/ishtar.base/emit/ILGenerator.cs |
Added label definition names for clarity; enhanced label usage for debugging. |
runtime/ishtar.base/emit/Label.cs |
Converted Label struct to record struct ; added a Name property. |
runtime/ishtar.generator/... |
Updated GeneratorContext to use a configuration record; added scope management in VeinScope . |
runtime/ishtar.generator/generators/... |
Enhanced conditional and operational logic for various code generation methods. |
runtime/ishtar.vm/VirtualMachine.cs |
Modified equality and conditional jump logic; enhanced stack operations and flow. |
runtime/ishtar.vm/stackval.cs |
Added [DebuggerDisplay] attribute; implemented ToString() for debugging. |
runtime/ishtar.vm/vm.shit.cs |
Introduced comprehensive comparer logic; added new helper methods and error handling. |
In the realm of code so bright,
Changes weave through day and night.
From labels sharp to scopes so tight,
Debugging’s ease is in full sight.
Optimization off or left on,
With these tweaks, our code shall dawn. 🐇✨
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Summary by CodeRabbit
New Features
DisableOptimization
for compile commands.Improvements
Bug Fixes