Closed 0xF6 closed 1 month ago
The recent changes primarily focus on transitioning the VirtualMachine
from a class to a struct, enhancing memory management and performance through pointer usage. This involves modifying several files to accommodate pointer syntax and updating various structures, such as adding new types for network management and memory allocation. Overall, the improvements aim to streamline interactions with the virtual machine and enhance its capabilities.
File Path/Group of Files | Change Summary |
---|---|
runtime/ishtar.vm/FFI/ForeignFunctionInterface.cs |
Modified pointer usage for VirtualMachine , changing from reference to pointer type, adjusting method calls accordingly. |
runtime/ishtar.vm/FFI/generated/*.cs |
Introduced new unsafe structs like Vein_ClosureDelegate , Vein_IpEndpoint , Vein_Ipv4Addr , and Vein_SocketHandle for structured access to specific types. |
runtime/ishtar.vm/__builtin/*.cs |
Enhanced pointer dereferencing and updated comments for clarity across various built-in classes. |
runtime/ishtar.vm/runtime/*.cs |
Transitioned VirtualMachine from a class to a struct, modified various method signatures to use pointers, and added new properties and methods for improved functionality. |
runtime/ishtar.vm/vm.*.cs |
Comprehensive restructuring of the VirtualMachine , changing declarations and enhancing memory management features. |
runtime/ishtar.vm/vm.cfg.cs |
Changed VirtualMachine from a class to a struct and updated static method signatures to align with the new structure. |
vein_lang.sln.DotSettings |
Added new Boolean entries to the user dictionary configuration for enhanced keyword handling. |
sequenceDiagram
participant App as Application
participant VM as VirtualMachine
participant FFI as ForeignFunctionInterface
App->>FFI: Call method with VM pointer
FFI->>VM: Access properties using pointer
VM-->>FFI: Return data
FFI-->>App: Return results
๐โจ
In a world of code so bright,
Pointers leap with pure delight.
Virtual machines, now a struct,
Memory flows, no need to pluck!
With new types and fields galore,
Let's hop and code, forevermore!
๐โจ
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
Vein_ClosureDelegate
,Vein_IpEndpoint
, andVein_SocketHandle
.AppConfig
andIshtarObject
structures for better configuration and data manipulation.IshtarWatchDog
struct for improved error handling within the virtual machine context.Improvements
VirtualMachine
from a class to a struct for better performance.Bug Fixes