module Rubellite

Overview

Rubellite: High-performance Crystal <-> Ruby interop bindings, Spinel AOT compiler fast-path, Channel concurrency, and radare2 diagnostics.

Defined in:

rubellite.cr
rubellite/channel.cr
rubellite/concurrency.cr
rubellite/convert.cr
rubellite/diagnostics/r2.cr
rubellite/docs.cr
rubellite/docs/a_getting_started/overview.cr
rubellite/docs/a_getting_started/quickstart.cr
rubellite/docs/a_getting_started/type_system.cr
rubellite/docs/b_advanced_features/c_api_and_memory.cr
rubellite/docs/b_advanced_features/channel_concurrency.cr
rubellite/docs/b_advanced_features/r2_forensics.cr
rubellite/docs/b_advanced_features/spinel_aot.cr
rubellite/docs/c_versioning_and_releases/carbon_versioning.cr
rubellite/docs/c_versioning_and_releases/ruby_version_tracking.cr
rubellite/engine.cr
rubellite/exception.cr
rubellite/ext/extension.cr
rubellite/gc.cr
rubellite/macros.cr
rubellite/profiler.cr
rubellite/spinel.cr
rubellite/spinel/async.cr
rubellite/spinel/channel.cr
rubellite/spinel/dsl.cr
rubellite/spinel/transpiler.cr
rubellite/spinel/vector.cr
rubellite/tooling/import_lib_generator.cr
rubellite/typed_data.cr
rubellite/value.cr
rubellite/version.cr
rubellite/vfs.cr
rubellite_cli.cr

Constant Summary

COMMIT = 8
MAJOR = 0
MINOR = 1
VERSION = "0.1.22"

Class Method Summary

Class Method Detail

def self.[](const_name : String) : Value #

[View source]
def self.[]?(const_name : String) : Value | Nil #

[View source]
def self.cleanup : Nil #

[View source]
def self.define_class(name : String) : Value #

Defines a Ruby class using Crystal evaluation


[View source]
def self.ensure_init! : Nil #

[View source]
def self.eval(code : String) : Value #

[View source]
def self.export(method_name : String, &block : Array(Value) -> Value) : Nil #

Exports a Crystal function to Ruby under the Rubellite module


[View source]
def self.export_channel(name : String, channel : Channel(T)) : Nil forall T #

Helper to export a Crystal channel to Ruby scripts


[View source]
def self.init : Nil #

Delegates top-level module methods to Engine


[View source]
def self.initialized? : Bool #

[View source]
def self.load(path : String) : Bool #

[View source]
def self.raise_ruby(klass_name : String, message : String) : NoReturn #

Raises a Ruby exception of the specified class with a custom message. When invoked from Crystal callbacks, this cleanly unwinds to the dispatcher boundary where the native Ruby exception is raised in the Ruby VM.


[View source]
def self.require(feature : String) : Bool #

[View source]
def self.start(&) #

[View source]
def self.synchronize(&block : -> T) : T forall T #

[View source]
def self.unwrap(type : T.class, val : Value) : T forall T #

Convenience unwrap at the Rubellite top level


[View source]
def self.unwrap?(type : T.class, val : Value) : T | Nil forall T #

Convenience safe unwrap at the Rubellite top level


[View source]
def self.wrap(obj : T) : Value forall T #

Convenience wrapper at the Rubellite top level


[View source]