runtime

package
v0.1.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 27, 2026 License: AGPL-3.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Frame

type Frame struct {
	IP     int
	Vars   map[string]value.Value // Local scope
	Fn     *value.Lambda          // Hàm đang được thực thi
	Defers []*value.Lambda        // Deferred functions
}

Frame đại diện cho một khung thực thi (Activation Record)

type VM added in v0.1.2

type VM struct {
	Bytecode  []byte
	Constants []value.Value
	Stack     []value.Value
	Vars      map[string]value.Value // Biến của từng Request (Cho phép ghi)
	Globals   map[string]value.Value // Chung cho toàn bộ Host (Chỉ đọc)
	Builtins  []value.Value          // Mảng các hàm hệ thống (Siêu nhanh - Index lookup)
	Frames    []Frame                // Call Stack
	FrameIdx  int                    // Hiện tại đang ở Frame nào
	Energy    uint64                 // Năng lượng tiêu thụ
	MaxEnergy uint64                 // Giới hạn năng lượng
	SourceMap []int32                // Bản đồ dòng lệnh nguồn (IP -> Line)
	Spawner   func(s *value.Lambda)
}

func New

func New(code []byte, constants []value.Value) *VM

func (*VM) Defer added in v0.1.2

func (vm *VM) Defer(fn *value.Lambda)

func (*VM) ExecuteLambda added in v0.1.2

func (vm *VM) ExecuteLambda(s *value.Lambda, args []value.Value) value.Value

func (*VM) FastReset added in v0.1.2

func (vm *VM) FastReset(code []byte, constants []value.Value, globals map[string]value.Value, sourceMap []int32)

func (*VM) Run added in v0.1.2

func (vm *VM) Run() value.Value

func (*VM) Stop added in v0.1.2

func (vm *VM) Stop()

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL