oxilean_codegen/ruby_backend/rubyblock_traits.rs
1//! # RubyBlock - Trait Implementations
2//!
3//! This module contains trait implementations for `RubyBlock`.
4//!
5//! ## Implemented Traits
6//!
7//! - `Display`
8//!
9//! 🤖 Generated with [SplitRS](https://github.com/cool-japan/splitrs)
10
11use crate::lcnf::*;
12
13use super::functions::{fmt_ruby_class, fmt_ruby_method, fmt_ruby_module_stmt, fmt_ruby_stmt};
14use super::types::RubyBlock;
15use std::fmt;
16
17impl std::fmt::Display for RubyBlock {
18 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
19 if self.params.is_empty() {
20 write!(f, "{{ {} }}", self.body)
21 } else {
22 write!(f, "{{ |{}| {} }}", self.params.join(", "), self.body)
23 }
24 }
25}