Skip to main content

sim_lib_lang_ruby/
symbols.rs

1use sim_kernel::Symbol;
2
3/// Stable symbol identifying the Ruby DSL language profile.
4pub fn ruby_profile_symbol() -> Symbol {
5    Symbol::qualified("lang", "ruby-dsl/v1")
6}
7
8/// Stable symbol for the reader codec the Ruby surface decodes through.
9///
10/// The Ruby profile reuses the shared algol reader rather than a bespoke one.
11pub fn ruby_reader_symbol() -> Symbol {
12    Symbol::qualified("codec", "algol")
13}
14
15/// Stable symbol for the Ruby lowering from surface forms to `Expr`.
16pub fn ruby_lowering_symbol() -> Symbol {
17    Symbol::qualified("ruby", "lowering-dsl")
18}
19
20/// Stable symbol for the Ruby DSL control conformance test.
21pub fn ruby_conformance_test_symbol() -> Symbol {
22    Symbol::qualified("test", "ruby-dsl-control")
23}
24
25/// Stable symbol for the Ruby control-blocks fidelity badge.
26pub fn ruby_control_fidelity_symbol() -> Symbol {
27    Symbol::qualified("standard/fidelity", "ruby-control-blocks")
28}
29
30/// Stable symbol for the Ruby method-dispatch fidelity badge.
31pub fn ruby_dispatch_fidelity_symbol() -> Symbol {
32    Symbol::qualified("standard/fidelity", "ruby-dispatch-methods")
33}
34
35/// Stable symbol for the Ruby full-blocks fidelity badge (limited support).
36pub fn ruby_blocks_fidelity_symbol() -> Symbol {
37    Symbol::qualified("standard/fidelity", "ruby-full-blocks-limited")
38}