Documentation
¶
Index ¶
- Constants
- Variables
- func AddBreakpoint(file string, line int)
- func AddBuiltinField(name string)
- func AddBuiltinFunc(name string)
- func AddDebuggerInstance(vm *VM) uint
- func AddNativeFunc(f NativeFunction)
- func Continue()
- func DebugLog(format string, args ...interface{})
- func Eval(vm *VM, code string) error
- func Fprint(w io.Writer, p *Program)
- func FprintConstants(w io.Writer, p *Program)
- func FprintFunction(w io.Writer, prefix string, f *Function, p *Program)
- func FprintNames(w io.Writer, p *Program, registers bool)
- func GetDebugServerPort() string
- func GetDebuggerStats() map[string]interface{}
- func HandleDebugger(vm *VM)
- func HasBreakpoint(line TraceLine) bool
- func IsDebugServerRunning() bool
- func IsDebuggerEnabled() bool
- func ListBreakpoints() map[string]map[int]struct{}
- func NewCompiler() *compiler
- func Parse(fs filesystem.FS, path string) (*ast.Program, error)
- func ParseExpr(code string) (ast.Expr, error)
- func ParseStr(code string) (*ast.Program, error)
- func Pause()
- func PauseDebuggerAtStart(vm *VM)
- func Print(p *Program)
- func PrintFunction(f *Function, p *Program)
- func PrintNames(p *Program, registers bool)
- func RegisterLib(funcs []NativeFunction, dts string)
- func RemoveBreakpoint(file string, line int)
- func RemoveBreakpoints()
- func ShutdownDebugger()
- func Sprint(p *Program) (string, error)
- func SprintNames(p *Program, registers bool) (string, error)
- func Stacktrace() string
- func StartDebugger(vm *VM, addr string) error
- func SwitchActiveInstance(newInstance *VM)
- func TypeDefs() string
- func UnhandledException(vm *VM, err error, exceptionType string)
- func UnhandledPanic(vm *VM, err error)
- func UnhandledRuntimeError(vm *VM, err error)
- func WaitIfPaused(vm *VM)
- func Wrap(code int, msg string, err error) error
- type Address
- type AddressKind
- type Allocator
- type ArrayObject
- type BreakpointInfo
- type Callable
- type Class
- type ClientConnection
- type Closure
- type Comparable
- type CompilerError
- type DebugServer
- type DebugState
- type DebuggerState
- type EnumList
- type EnumValue
- type Enumerable
- type Equatable
- type ErrorMessenger
- type ExceptionInfo
- type Exporter
- type Field
- type FieldGetter
- type FieldSetter
- type Finalizable
- type Frame
- type Freezable
- type Function
- type FunctionKind
- type FunctionStat
- type IndexIterator
- type IndexerGetter
- type IndexerSetter
- type Instance
- func (i *Instance) Function(name string, p *Program) (*Function, bool)
- func (i *Instance) GetField(name string, vm *VM) (Value, error)
- func (i *Instance) PropertyGetter(name string, p *Program) (*Function, bool)
- func (i *Instance) PropertySetter(name string, p *Program) (*Function, bool)
- func (i *Instance) SetField(name string, v Value, vm *VM) error
- func (i *Instance) String() string
- type Instruction
- type KeyGetter
- type KeyIterator
- type LineStat
- type LocalVariablesRequest
- type Localizer
- type LogLevel
- type MapValue
- type Method
- type NamedType
- type NativeFunction
- type NativeMethod
- type NativeObject
- type Notification
- type Opcode
- type Position
- type ProfileEntry
- type Profiler
- func (p *Profiler) Enabled() bool
- func (p *Profiler) PrintFunctions(n int)
- func (p *Profiler) PrintLines(n int)
- func (p *Profiler) ReportFunctions(n int) []FunctionStat
- func (p *Profiler) ReportStats(n int) []LineStat
- func (p *Profiler) Reset()
- func (p *Profiler) Start()
- func (p *Profiler) Stop()
- func (p *Profiler) Trace(vm *VM, start time.Time)
- type Program
- func (p *Program) AddPermission(name string)
- func (p *Program) Attribute(name string) string
- func (p *Program) AvailableBreakpoints() []string
- func (p *Program) Copy() *Program
- func (p *Program) FileIndex(file string) int
- func (p *Program) Function(name string) (*Function, bool)
- func (p *Program) HasPermission(name string) bool
- func (p *Program) Permissions() []string
- func (p *Program) SetAttribute(key, value string)
- func (p *Program) Strip()
- func (p *Program) ToTraceLine(f *Function, pc int) TraceLine
- type Register
- type Request
- type Response
- type SafeChannel
- type StackFrame
- type StackTrace
- type StepState
- type TraceLine
- type TranslationStore
- func (t *TranslationStore) Clear()
- func (t *TranslationStore) Extend() *TranslationStore
- func (t *TranslationStore) Get(lang, key string) string
- func (t *TranslationStore) GetLanguageData(lang string) map[string]string
- func (t *TranslationStore) GetParent() *TranslationStore
- func (t *TranslationStore) HasLanguage(lang string) bool
- func (t *TranslationStore) HasLanguageLayer(lang string) bool
- func (t *TranslationStore) Languages() []string
- func (t *TranslationStore) Set(lang, key, value string)
- func (t *TranslationStore) SetBatch(lang string, translations map[string]string)
- func (t *TranslationStore) Translate(lang, text string) string
- func (t *TranslationStore) TranslateTo(lang, text string) string
- type Type
- type VM
- func (vm *VM) AddAllocations(n int) error
- func (vm *VM) AddSteps(n int64) error
- func (vm *VM) Allocations() int64
- func (vm *VM) Clock() *clock.Clock
- func (vm *VM) Clone(p *Program) *VM
- func (vm *VM) CloneInitialized(p *Program, globals []Value) *VM
- func (vm *VM) CopySettings(target *VM)
- func (vm *VM) CurrentFunc() *Function
- func (vm *VM) CurrentInstruction() *Instruction
- func (vm *VM) CurrentLine() TraceLine
- func (vm *VM) CurrentPC() int
- func (vm *VM) FinalizeGlobals()
- func (vm *VM) Frames() int
- func (vm *VM) GetLocation() *time.Location
- func (vm *VM) GetStderr() io.Writer
- func (vm *VM) GetStdin() io.Reader
- func (vm *VM) GetStdout() io.Writer
- func (vm *VM) Globals() []Value
- func (vm *VM) HasPermission(name string) bool
- func (vm *VM) Initialize() error
- func (vm *VM) Initialized() bool
- func (vm *VM) NewCodeError(code int, format string, a ...interface{}) *VMError
- func (vm *VM) NewError(format string, a ...interface{}) *VMError
- func (vm *VM) RegisterValue(name string) (Value, bool)
- func (vm *VM) RegisterValues(includeGlobals bool) map[string]Value
- func (vm *VM) RegisterValuesFrame(frameIndex int, includeGlobals bool) map[string]Value
- func (vm *VM) ResetSteps()
- func (vm *VM) Run(args ...Value) (Value, error)
- func (vm *VM) RunClosure(c *Closure, args ...Value) (Value, error)
- func (vm *VM) RunFunc(name string, args ...Value) (Value, error)
- func (vm *VM) RunFuncIndex(index int, args ...Value) (Value, error)
- func (vm *VM) RunMethod(c *Method, args ...Value) (Value, error)
- func (vm *VM) SetFinalizer(v Finalizable)
- func (vm *VM) SetGlobalFinalizer(v Finalizable)
- func (vm *VM) SetGlobalRegister(name string, v Value) error
- func (vm *VM) Stacktrace() []string
- func (vm *VM) StacktraceLine() string
- func (vm *VM) Steps() int64
- func (vm *VM) WrapError(err error) *VMError
- type VMError
- func (e *VMError) Error() string
- func (e *VMError) ErrorMessage() string
- func (e *VMError) GetField(name string, vm *VM) (Value, error)
- func (e *VMError) GetMethod(name string) NativeMethod
- func (e *VMError) Is(msg string) bool
- func (e *VMError) MarshalJSON() ([]byte, error)
- func (e *VMError) SetField(key string, v Value, vm *VM) error
- func (e *VMError) Stack() string
- func (e *VMError) String() string
- func (e *VMError) Type() string
- type VMInfo
- type Value
- func NewArray(size int) Value
- func NewArrayValues(v []Value) Value
- func NewBool(v bool) Value
- func NewBytes(v []byte) Value
- func NewEnum(v int) Value
- func NewFloat(v float64) Value
- func NewFunction(v int) Value
- func NewInt(v int) Value
- func NewInt64(v int64) Value
- func NewMap(size int) Value
- func NewMapValues(m map[Value]Value, readonly bool) Value
- func NewNativeFunction(v int) Value
- func NewObject(v interface{}) Value
- func NewRune(v rune) Value
- func NewString(v string) Value
- func NewValue(v interface{}) Value
- func Run(fs filesystem.FS, path string) (Value, error)
- func RunStr(code string) (Value, error)
- func (v Value) Equals(other Value) bool
- func (v Value) Export(recursionLevel int) interface{}
- func (v Value) ExportLimit(recursionLevel, maxRecursion int) interface{}
- func (v Value) ExportMarshal(recursionLevel int) interface{}
- func (v Value) ExportMarshalLimit(recursionLevel, maxRecursion int) interface{}
- func (v Value) IsNil() bool
- func (v Value) IsNilOrEmpty() bool
- func (v Value) MarshalJSON() ([]byte, error)
- func (v Value) MarshalJSONLimit(limit int) ([]byte, error)
- func (v Value) Size() int
- func (v Value) StrictEquals(other Value) bool
- func (v Value) String() string
- func (v Value) ToArray() []Value
- func (v Value) ToArrayObject() *ArrayObject
- func (v Value) ToArrayObjectOrNil() (*ArrayObject, bool)
- func (v Value) ToBool() bool
- func (v Value) ToBytes() []byte
- func (v Value) ToEnum() int
- func (v Value) ToFloat() float64
- func (v Value) ToFunction() int
- func (v Value) ToInt() int64
- func (v Value) ToMap() *MapValue
- func (v Value) ToNativeFunction() int
- func (v Value) ToObject() interface{}
- func (v Value) ToObjectOrNil() interface{}
- func (v Value) ToRune() rune
- func (v Value) ToString() string
- func (v Value) TypeName() string
- type VariableInfo
- type VariableReference
- type VariablesRequest
Constants ¶
const GlobalNamespace = "--globalnamespace"
const MAX_EXPORT_RECURSION = 200
const VERSION = "3.5"
Variables ¶
var ( UndefinedValue = Value{Type: Undefined} NullValue = Value{Type: Null} TrueValue = Value{Type: Bool, Internal: true} FalseValue = Value{Type: Bool, Internal: false} )
var ErrFunctionNotExist = errors.New("function not found")
var Void = NewAddress(AddrVoid, 0)
Functions ¶
func AddBreakpoint ¶
func AddBuiltinField ¶
func AddBuiltinField(name string)
func AddBuiltinFunc ¶
func AddBuiltinFunc(name string)
func AddDebuggerInstance ¶
func AddNativeFunc ¶
func AddNativeFunc(f NativeFunction)
func FprintConstants ¶
func GetDebugServerPort ¶
func GetDebugServerPort() string
func GetDebuggerStats ¶
func GetDebuggerStats() map[string]interface{}
func HasBreakpoint ¶
func ListBreakpoints ¶
func NewCompiler ¶
func NewCompiler() *compiler
func PauseDebuggerAtStart ¶
func PauseDebuggerAtStart(vm *VM)
func PrintFunction ¶
func PrintNames ¶
func RegisterLib ¶
func RegisterLib(funcs []NativeFunction, dts string)
func RemoveBreakpoint ¶
func RemoveBreakpoints ¶
func RemoveBreakpoints()
func ShutdownDebugger ¶
func ShutdownDebugger()
func Stacktrace ¶
func Stacktrace() string
func StartDebugger ¶
func SwitchActiveInstance ¶
func SwitchActiveInstance(newInstance *VM)
func UnhandledException ¶
func UnhandledRuntimeError ¶
UnhandledRuntimeError para errores en tiempo de ejecución
func WaitIfPaused ¶
func WaitIfPaused(vm *VM)
Types ¶
type Address ¶
type Address struct {
Kind AddressKind
Value int32
}
func NewAddress ¶
func NewAddress(kind AddressKind, value int) *Address
type AddressKind ¶
type AddressKind byte
const ( AddrVoid AddressKind = iota AddrLocal AddrGlobal AddrConstant AddrClosure AddrEnum AddrFunc AddrNativeFunc AddrClass AddrData AddrUnresolved )
func (AddressKind) String ¶
func (i AddressKind) String() string
type ArrayObject ¶
func (*ArrayObject) Freeze ¶
func (t *ArrayObject) Freeze()
func (*ArrayObject) IsFrozen ¶
func (t *ArrayObject) IsFrozen() bool
type BreakpointInfo ¶
type Callable ¶
type Callable interface {
GetMethod(name string) NativeMethod
}
type Class ¶
type ClientConnection ¶
type ClientConnection struct {
ID string
Conn net.Conn
Encoder *json.Encoder
LastActive time.Time
// contains filtered or unexported fields
}
ClientConnection representa una conexión de cliente
func NewClientConnection ¶
func NewClientConnection(id string, conn net.Conn) *ClientConnection
func (*ClientConnection) Close ¶
func (cc *ClientConnection) Close() error
func (*ClientConnection) IsActive ¶
func (cc *ClientConnection) IsActive() bool
func (*ClientConnection) Send ¶
func (cc *ClientConnection) Send(data interface{}) error
type Comparable ¶
Comparable returns:
-2 if both values are imcompatible for comparisson between each other. -1 is lesser 0 is equal 1 is greater
type CompilerError ¶
func (CompilerError) Error ¶
func (e CompilerError) Error() string
func (CompilerError) ErrorMessage ¶
func (e CompilerError) ErrorMessage() string
func (CompilerError) Position ¶
func (e CompilerError) Position() ast.Position
type DebugServer ¶
type DebugServer struct {
// contains filtered or unexported fields
}
func NewDebugServer ¶
func NewDebugServer() *DebugServer
type DebugState ¶
type DebugState struct {
// contains filtered or unexported fields
}
DebugState centraliza el estado del debugger
func NewDebugState ¶
func NewDebugState() *DebugState
type DebuggerState ¶
type DebuggerState struct {
TotalVMs int `json:"totalVMs"`
ActiveVM uint `json:"activeVM"`
Paused bool `json:"paused"`
CurrentFile string `json:"currentFile"`
CurrentLine int `json:"currentLine"`
StackDepth int `json:"stackDepth"`
Breakpoints int `json:"breakpoints"`
AvailableVMs []VMInfo `json:"availableVMs"`
Clients int `json:"clients"`
}
type Enumerable ¶
type ErrorMessenger ¶
type ErrorMessenger interface {
ErrorMessage() string
}
type ExceptionInfo ¶
type ExceptionInfo struct {
VM uint `json:"vm"`
Message string `json:"message"`
File string `json:"file"`
Line int `json:"line"`
Function string `json:"function"`
StackTrace []StackFrame `json:"stackTrace"`
Timestamp int64 `json:"timestamp"`
Type string `json:"type"` // "runtime_error", "panic", "assertion_failed", etc.
}
type Finalizable ¶
type Finalizable interface {
Close() error
}
type Freezable ¶
type Freezable interface {
Freeze() // Congela el objeto y sus componentes.
IsFrozen() bool // Devuelve true si el objeto está congelado.
}
Freezable define el comportamiento para objetos que pueden ser congelados.
type Function ¶
type Function struct {
Name string
Module string
Attributes []string
Positions []Position
Instructions []*Instruction
Closures []*Register
Registers []*Register
Arguments int
OptionalArguments int
Index int
WrapClass int
MaxRegIndex int
Class int
Lambda bool
IsGlobal bool
IsClass bool
Exported bool
Variadic bool
Kind FunctionKind
// contains filtered or unexported fields
}
func (*Function) HasPermission ¶
func (*Function) Permissions ¶
type FunctionStat ¶
type IndexIterator ¶
type IndexIterator interface {
IndexerGetter
Len() int
}
type IndexerGetter ¶
type IndexerSetter ¶
type Instruction ¶
func NewInstruction ¶
func NewInstruction(op Opcode, a, b, c *Address) *Instruction
func (*Instruction) Copy ¶
func (r *Instruction) Copy() *Instruction
func (*Instruction) Format ¶
func (i *Instruction) Format(padd bool) string
func (*Instruction) String ¶
func (i *Instruction) String() string
type KeyIterator ¶
type LocalVariablesRequest ¶
type LocalVariablesRequest struct {
FrameId *int `json:"frameId,omitempty"` // Opcional, si no se especifica usa frame actual (0)
}
Nueva estructura para getLocalVariables con frameId
type NativeFunction ¶
type NativeFunction struct {
Function func(this Value, args []Value, vm *VM) (Value, error)
Name string
Permissions []string
Arguments int
Index int
}
NativeFunction is a function written in Go as opposed to an interpreted function
func AllNativeFuncs ¶
func AllNativeFuncs() []NativeFunction
func NativeFuncFromIndex ¶
func NativeFuncFromIndex(i int) NativeFunction
func NativeFuncFromName ¶
func NativeFuncFromName(name string) (NativeFunction, bool)
type NativeMethod ¶
func (NativeMethod) Type ¶
func (NativeMethod) Type() string
type NativeObject ¶
type Notification ¶
type Notification struct {
Type string `json:"type"`
Data interface{} `json:"data"`
}
type ProfileEntry ¶
type Profiler ¶
type Profiler struct {
// contains filtered or unexported fields
}
func NewProfiler ¶
func NewProfiler() *Profiler
func (*Profiler) PrintFunctions ¶
func (*Profiler) PrintLines ¶
func (*Profiler) ReportFunctions ¶
func (p *Profiler) ReportFunctions(n int) []FunctionStat
func (*Profiler) ReportStats ¶
type Program ¶
type Program struct {
sync.Mutex
Resources map[string][]byte
Attributes []string
Enums []*EnumList
Classes []*Class
Files []string
Functions []*Function
Constants []Value
Name string
BasePath string
// contains filtered or unexported fields
}
func CompileStr ¶
func (*Program) AddPermission ¶
func (*Program) AvailableBreakpoints ¶
func (*Program) HasPermission ¶
func (*Program) Permissions ¶
func (*Program) SetAttribute ¶
type Register ¶
type Request ¶
type Request struct {
ID string `json:"id"`
Command string `json:"command"`
Args interface{} `json:"args,omitempty"`
}
Estructuras JSON para comunicación
type SafeChannel ¶
type SafeChannel struct {
// contains filtered or unexported fields
}
SafeChannel - Canal que se puede cerrar múltiples veces sin panic
func NewSafeChannel ¶
func NewSafeChannel() *SafeChannel
func (*SafeChannel) Close ¶
func (sc *SafeChannel) Close()
func (*SafeChannel) IsClosed ¶
func (sc *SafeChannel) IsClosed() bool
func (*SafeChannel) Wait ¶
func (sc *SafeChannel) Wait() <-chan struct{}
type StackFrame ¶
type StackTrace ¶
type StackTrace []Frame
StackTrace is stack of Frames from innermost (newest) to outermost (oldest).
type StepState ¶
type StepState struct {
// contains filtered or unexported fields
}
StepState maneja el estado del stepping de forma thread-safe
type TraceLine ¶
func (TraceLine) SameLineAbs ¶
SameLineAbs convierte ambas rutas a absolutas y compara
type TranslationStore ¶
type TranslationStore struct {
// contains filtered or unexported fields
}
TranslationStore manages translations using a parent-child approach for efficient memory usage. Each store has its own translations and an optional parent store for fallback lookups. Parents are read-only to prevent circular references and ensure data integrity.
func NewTranslationStore ¶
func NewTranslationStore() *TranslationStore
NewTranslationStore creates a new empty translation store
func (*TranslationStore) Clear ¶
func (t *TranslationStore) Clear()
Clear removes all local translations (parent remains unchanged)
func (*TranslationStore) Extend ¶
func (t *TranslationStore) Extend() *TranslationStore
Extend creates a new TranslationStore with this store as its parent. The new store inherits all translations from this store but can add/override locally. Changes to the parent store are automatically visible to the child.
func (*TranslationStore) Get ¶
func (t *TranslationStore) Get(lang, key string) string
Get retrieves a translation for a given language and key. First searches in local data, then falls back to parent if not found. Returns empty string if not found in any store.
func (*TranslationStore) GetLanguageData ¶
func (t *TranslationStore) GetLanguageData(lang string) map[string]string
GetLanguageData returns all translations for a language by merging local data with parent chain. Local translations override parent translations. Returns nil if language doesn't exist in any store.
func (*TranslationStore) GetParent ¶
func (t *TranslationStore) GetParent() *TranslationStore
GetParent returns the parent store (for property access)
func (*TranslationStore) HasLanguage ¶
func (t *TranslationStore) HasLanguage(lang string) bool
HasLanguage checks if a language exists in this store or its parent chain
func (*TranslationStore) HasLanguageLayer ¶
func (t *TranslationStore) HasLanguageLayer(lang string) bool
HasLanguage checks if a language exists in this store or its parent chain
func (*TranslationStore) Languages ¶
func (t *TranslationStore) Languages() []string
Languages returns a list of all available languages from this store and its parent chain
func (*TranslationStore) Set ¶
func (t *TranslationStore) Set(lang, key, value string)
Set adds a single translation to the local store
func (*TranslationStore) SetBatch ¶
func (t *TranslationStore) SetBatch(lang string, translations map[string]string)
SetBatch adds multiple translations to the local store
func (*TranslationStore) Translate ¶
func (t *TranslationStore) Translate(lang, text string) string
Translate translates text using the specified language with context stripping support. This is the same logic used by the built-in T() function. Returns the original text if no translation is found.
func (*TranslationStore) TranslateTo ¶
func (t *TranslationStore) TranslateTo(lang, text string) string
TranslateTo translates text to a specific language with context stripping support. This is a convenience method that explicitly specifies the target language.
type VM ¶
type VM struct {
ID uint
Parent *VM // The VM that launched this one. For gorutines and other spawn operations
Async bool // if the parent VM launched it in a gorutine
Context Value
Now time.Time
RetValue Value
Localizer Localizer
Translations *TranslationStore // Shared translation store
Stderr io.Writer
Error error
FileSystem filesystem.FS
Stdout io.Writer
Stdin io.Reader
Location *time.Location
Program *Program
Language string
MaxFrames int
MaxAllocations int64
MaxSteps int64
StatsEnabled bool
Profiler *Profiler
// debugger
PauseAtStart bool
// contains filtered or unexported fields
}
func NewInitializedVM ¶
func (*VM) AddAllocations ¶
func (*VM) Allocations ¶
func (*VM) CopySettings ¶
func (*VM) CurrentFunc ¶
func (*VM) CurrentInstruction ¶
func (vm *VM) CurrentInstruction() *Instruction
func (*VM) CurrentLine ¶
func (*VM) FinalizeGlobals ¶
func (vm *VM) FinalizeGlobals()
func (*VM) GetLocation ¶
func (*VM) HasPermission ¶
func (*VM) Initialize ¶
func (*VM) Initialized ¶
func (*VM) NewCodeError ¶
func (*VM) RegisterValue ¶
return a value from the current scope
func (*VM) RegisterValuesFrame ¶
func (*VM) ResetSteps ¶
func (vm *VM) ResetSteps()
func (*VM) RunClosure ¶
RunClosure executes a program closure
func (*VM) RunFuncIndex ¶
RunFuncIndex executes a program function by index
func (*VM) SetFinalizer ¶
func (vm *VM) SetFinalizer(v Finalizable)
func (*VM) SetGlobalFinalizer ¶
func (vm *VM) SetGlobalFinalizer(v Finalizable)
func (*VM) Stacktrace ¶
func (*VM) StacktraceLine ¶
type VMError ¶
type VMError struct {
Wrapped *VMError
Message string
Details string
Kind string
Code int
IsRethrow bool
TraceLines []TraceLine
CurrentLine TraceLine
CurrentFuction *Function
// contains filtered or unexported fields
}
func NewCodeError ¶
func (*VMError) ErrorMessage ¶
func (*VMError) GetMethod ¶
func (e *VMError) GetMethod(name string) NativeMethod
func (*VMError) MarshalJSON ¶
type VMInfo ¶
type VMInfo struct {
ID uint `json:"index"`
Active bool `json:"active"`
File string `json:"file"`
Line int `json:"line"`
Function string `json:"function"`
Status string `json:"status"`
}
Estructuras de datos específicas
type Value ¶
type Value struct {
Internal interface{}
Type Type
}
func NewArrayValues ¶
func NewFunction ¶
func NewNativeFunction ¶
func (Value) ExportLimit ¶
func (Value) ExportMarshal ¶
func (Value) ExportMarshalLimit ¶
func (Value) IsNilOrEmpty ¶
func (Value) MarshalJSON ¶
func (Value) StrictEquals ¶
func (Value) ToArrayObject ¶
func (v Value) ToArrayObject() *ArrayObject
func (Value) ToArrayObjectOrNil ¶
func (v Value) ToArrayObjectOrNil() (*ArrayObject, bool)
func (Value) ToFunction ¶
func (Value) ToNativeFunction ¶
func (Value) ToObjectOrNil ¶
func (v Value) ToObjectOrNil() interface{}
type VariableInfo ¶
type VariableReference ¶
type VariableReference struct {
Value Value
Path string // Ruta para debugging: "locals.myArray[0]"
ParentRef int // Referencia al padre, 0 si es raíz
}
VariableReference - Estructura para manejar referencias de variables
type VariablesRequest ¶
Source Files
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
sim
command
|
|
|
jsregex
Package jsregex provides JavaScript-compatible regular expression functionality for Go.
|
Package jsregex provides JavaScript-compatible regular expression functionality for Go. |
|
templates
Package templates generates source code for templates.
|
Package templates generates source code for templates. |
|
xmlLib
Package etree provides XML services through an Element Tree abstraction.
|
Package etree provides XML services through an Element Tree abstraction. |