documentation
.HELP!
Squirrel 3.0 Documentation
Garbage Collector
Squirrel 3.0
previous page
next page
Garbage Collector
previous page
start
next page
Menu
Homepage
Table of contents
Squirrel 3.0 Reference Manual
Introduction
The language
Lexical structure
Identifiers
Keywords
Operators
Other tokens
Literals
Comments
Values and Data types
Integer
Float
String
Null
Bool
Table
Array
Function
Class
Class instance
Generator
Userdata
Thread
Weak References
Execution Context
Variables
Statements
Block
Control Flow Statements
true and false
if/else
while
do/while
switch
Loops
for
foreach
break
continue
return
yield
Local variables declaration
Function declaration
Class declaration
try/catch
throw
const
enum
expression statement
Expressions
Assignment(=) & new slot(<-)
Operators
?: Operator
Arithmetic
Relational
3 ways compare
Logical
in operator
instanceof operator
typeof operator
comma operator
Bitwise Operators
Operators precedence
Table constructor
Table with JSON syntax
clone
Array constructor
Tables
Construction
Slot creation
Slot deletion
Arrays
Functions
Function declaration
Default Paramaters
Function with variable number of paramaters
Function calls
Binding an environment to a function
Lambda expressions
Free variables
Tail recursion
Classes
Class declaration
Static variables
Class attributes
Class instances
Inheritance
Metamethods
Generators
Constants & Enumerations
Constants
Enumerations
Implementation notes
Threads
Using threads
Weak References
Delegation
Metamethods
_set
_get
_newslot
_delslot
_add
_sub
_mul
_div
_modulo
_unm
_typeof
_cmp
_call
_cloned
_nexti
_tostring
_inherited
_newmember
Built-in functions
Global symbols
Default delegates
Integer
Float
Bool
String
Table
Array
Function
Class
Class Instance
Generator
Thread
Weak Reference
Embedding Squirrel
Memory management
Unicode
Squirrel on 64 bits architectures
Userdata alignment
Stand-alone VM without compiler
Error conventions
Initializing Squirrel
The Stack
Stack indexes
Stack manipulation
Runtime error handling
Compiling a script
Calling a function
Create a C function
Tables and arrays manipulation
Userdata and UserPointers
The registry table
Mantaining strong references to Squirrel values from the C API
Debug Interface
API Reference
Virtual Machine
sq_close
sq_geterrorfunc
sq_getforeignptr
sq_getprintfunc
sq_getversion
sq_getvmstate
sq_move
sq_newthread
sq_open
sq_pushconsttable
sq_pushregistrytable
sq_pushroottable
sq_setconsttable
sq_seterrorhandler
sq_setforeignptr
sq_setprintfunc
sq_setroottable
sq_suspendvm
sq_wakeupvm
Compiler
sq_compile
sq_compilebuffer
sq_enabledebuginfo
sq_notifyallexceptions
sq_setcompilererrorhandler
Stack Operations
sq_cmp
sq_gettop
sq_pop
sq_poptop
sq_push
sq_remove
sq_reservestack
sq_settop
Object creation and handling
sq_bindenv
sq_createinstance
sq_getbool
sq_getbyhandle
sq_getclosureinfo
sq_getclosurename
sq_getfloat
sq_gethash
sq_getinstanceup
sq_getinteger
sq_getmemberhandle
sq_getscratchpad
sq_getsize
sq_getstring
sq_getthread
sq_gettype
sq_gettypetag
sq_getuserdata
sq_getuserpointer
sq_newarray
sq_newclass
sq_newclosure
sq_newtable
sq_newtableex
sq_newuserdata
sq_pushbool
sq_pushfloat
sq_pushinteger
sq_pushnull
sq_pushstring
sq_pushuserpointer
sq_setbyhandle
sq_setclassudsize
sq_setinstanceup
sq_setnativeclosurename
sq_setparamscheck
sq_setreleasehook
sq_settypetag
sq_tobool
sq_tostring
sq_typeof
Calls
sq_call
sq_getcallee
sq_getlasterror
sq_getlocal
sq_reseterror
sq_resume
sq_throwerror
sq_throwobject
Objects manipulation
sq_arrayappend
sq_arrayinsert
sq_arraypop
sq_arrayremove
sq_arrayresize
sq_arrayreverse
sq_clear
sq_clone
sq_createslot
sq_deleteslot
sq_get
sq_getattributes
sq_getclass
sq_getdelegate
sq_getfreevariable
sq_getweakrefval
sq_instanceof
sq_newmember
sq_newslot
sq_next
sq_rawdeleteslot
sq_rawget
sq_rawnewmember
sq_rawset
sq_set
sq_setattributes
sq_setdelegate
sq_setfreevariable
sq_weakref
Bytecode serialization
sq_readclosure
sq_writeclosure
Raw object handling
sq_addref
sq_getobjtypetag
sq_getrefcount
sq_getstackobj
sq_objtobool
sq_objtofloat
sq_objtointeger
sq_objtostring
sq_objtouserpointer
sq_pushobject
sq_release
sq_resetobject
Garbage Collector
sq_collectgarbage
sq_resurrectunreachable
Debug interface
sq_getfunctioninfo
sq_setdebughook
sq_setnativedebughook
sq_stackinfos
Get in touch
Submit feedback about this site to:
[email protected]