Skip to main content
Version: 0.0.2

System Modules

RayQuiro 0.0.2 includes a built-in system layer for files, environment variables, process execution, time helpers, and JSON work.

rayquiro.fs

Import:

import rayquiro.fs as fs;

fs.exists(path)

Returns true if a file or directory exists.

fs.mkdir(path)

Creates a directory tree. Returns true on success.

fs.copy(source, target)

Copies a single file.

fs.copy_tree(source, target)

Copies a directory tree recursively.

fs.remove(path)

Removes a file or directory tree.

fs.read(path)

Reads a text file and returns its contents.

fs.write(path, content)

Writes a text file and creates parent directories automatically.

Example

import rayquiro.fs as fs;

fs.mkdir("build/demo");
fs.write("build/demo/hello.txt", "RayQuiro");

if (fs.exists("build/demo/hello.txt")) {
print(fs.read("build/demo/hello.txt"));
}

rayquiro.env

Import:

import rayquiro.env as env;

env.get(name)

Reads an environment variable and returns its value as a string.

env.set(name, value)

Sets an environment variable for the current process.

env.path_add(path)

Adds a directory to the user PATH.

This is used by the installer flow on Windows.

rayquiro.process

Import:

import rayquiro.process as process;

process.run(command)

Runs a shell command and returns the exit code.

process.exe_dir()

Returns the current project/runtime root used by the interpreter path.

Useful for installers and self-contained runtime flows.

rayquiro.time

Import:

import rayquiro.time as time;

time.now_ms()

Returns the current runtime clock in milliseconds.

time.unix_ms()

Returns Unix time in milliseconds.

time.sleep(ms)

Sleeps for the given number of milliseconds.

rayquiro.json

Import:

import rayquiro.json as json;

json.parse(text)

Parses a JSON string into RayQuiro runtime values.

json.stringify(value)

Serializes a RayQuiro value into JSON text.

Example

import rayquiro.json as json;

var data = json.parse("{\"name\":\"RayQuiro\",\"version\":\"0.0.2\"}");
print(data["name"]);
print(json.stringify(data));

Combined Runtime Example

import rayquiro.fs as fs;
import rayquiro.env as env;
import rayquiro.process as process;
import rayquiro.time as time;
import rayquiro.json as json;

var started = time.now_ms();
env.set("RAYQUIRO_MODE", "demo");
fs.mkdir("build/demo");
fs.write("build/demo/data.json", json.stringify({"name":"RayQuiro"}));
process.run("cmd /c echo Runtime demo");
print("Elapsed:", time.now_ms() - started);

Notes

  • these modules are built into RayQuiro in 0.0.2
  • they are not installed as separate .dll modules
  • they are the main system-level automation layer of the language