Contents
Introduction
Installation
On macOS using Homebrew
On Windows using Scoop
Using binaries
From source
Using as a XojoScript replacement
Installation
Customising
Using the intepreter
Overview and examples
Hello World!
Fibonacci sequence
Syntax and semantics
Comments
Data types
Array
Boolean
DateTime
File
Hash
Nothing
Number
Regex
Request
Response
Text
Reserved words
Identifiers
Variables
Assignment
Operators
Control flow
if
Ternary operator
while
break
exit
for
Functions
Object system
Classes
Creating
Instances
Inheritance
Modules
Static methods
Requiring files
Standard library
FileUtils module
Getters
cwd
cwd_path
Methods
copy()
delete()
mkdir()
move()
HTTP module
Methods
delete()
get()
post()
put()
JSON module
Methods
generate()
parse()
Maths module
Getters
PI
Methods
random_int()
Roo module
Getters
clock
version
Global functions
input()
print()
All objects
Getters
nothing?
number?
to_text
type
Methods
responds_to?()
Array objects
Getters
empty?
length
pop
reverse!
shuffle!
unique
unique!
Methods
contains?()
delete_at!()
each()
each_index()
fetch()
find()
first()
first!()
insert!()
join()
keep()
keep!()
last()
map()
map!()
push()
reject()
reject!()
shift!()
slice()
slice!()
DateTime objects
Getters
two_digit_hour
two_digit_minute
two_digit_second
day_name
friday?
hour
leap?
long_month
mday
meridiem
minute
monday?
month
nanosecond
saturday?
second
short_month
sunday?
thursday?
time
to_http_header
today?
tomorrow?
tuesday?
unix_time
wday
wednesday?
yday
yesterday?
year
Methods
add_days()
add_hours()
add_months()
add_seconds()
add_nanoseconds()
add_years()
sub_days()
sub_hours()
sub_months()
sub_seconds()
sub_nanoseconds()
sub_years()
File objects
Getters
close
closed?
count
directory?
exists?
file?
flush
name
path
pos
read_all
read_int8
read_int16
read_int32
read_int64
read_lines
read_uint8
read_uint16
read_uint32
read_uint64
readable?
writeable?
Setters
path
pos
Methods
append()
append_line()
copy_to()
delete!()
each_byte()
each_char()
each_line
move_to()
read()
write()
write_line()
Hash objects
Getters
clear!
invert
invert!
keys
length
values
Methods
delete!()
each()
each_key()
each_value()
fetch()
fetch_values()
has_key?()
has_value?()
keep()
keep!()
merge()
merge!()
reject()
reject!()
value()
Number objects
Getters
abs
acos
asin
atan
ceil
cos
even?
floor
integer?
odd?
round
sign
sin
sqrt
tan
to_degrees
to_radians
MatchInfo objects
Getters
finish
start
value
Regex objects
Methods
match()
matches()
RegexMatch objects
Getters
captures
finish
start
value
Methods
group()
name()
RegexResult objects
Getters
first_match
length
matches
Methods
match()
Request objects
Getters
content
content_type
cookies
headers
host
if_modified_since
method
referer
send
timeout
url
user_agent
Setters
content
content_type
cookies
headers
host
if_modified_since
method
referer
timeout
url
user_agent
Response objects
Getters
body
content_disposition
content_encoding
content_length
content_type
cookies
headers
last_modified
location
status
Text objects
Getters
capitalise
capitalise!
chars
define_utf8
define_utf8!
empty?
length
lowercase
lowercase!
lstrip
lstrip!
reverse
reverse!
rstrip
rstrip!
strip
strip!
swapcase
swapcase!
to_date
uppercase
uppercase!
Methods
ends_with?()
include?()
index()
match()
matches?()
replace_all()
replace_all!()
replace_first()
replace_first!()
slice()
slice!()
starts_with?()
Roo
RegexMatch object methods
Below are the methods available to all
RegexMatch
objects.
group()
name()