ellie_fmt/renderer/items/
mod.rs1use ellie_tokenizer::processors::items::Processors;
2
3use super::{CodeRenderer, State};
4use crate::fmt::FormatterOptions;
5
6pub mod brk;
8pub mod class;
9pub mod comment;
10pub mod condition;
11pub mod constructor;
12pub mod enum_type;
13pub mod file_key;
14pub mod for_loop;
15pub mod function;
16pub mod getter;
17pub mod getter_call;
18pub mod go;
19pub mod import;
20pub mod loop_type;
21pub mod ret;
22pub mod setter;
23pub mod setter_call;
24pub mod variable;
25
26impl CodeRenderer for Processors {
27 fn render(&self, state: &State, options: &FormatterOptions) -> String {
28 match self {
29 Processors::Variable(e) => e.data.render(state, options),
30 Processors::GetterCall(e) => e.render(state, options),
31 Processors::SetterCall(e) => e.render(state, options),
32 Processors::Function(e) => e.data.render(state, options),
33 Processors::FileKey(e) => e.render(state, options),
34 Processors::Import(e) => e.render(state, options),
35 Processors::Loop(e) => e.render(state, options),
36 Processors::ForLoop(e) => e.render(state, options),
37 Processors::Condition(e) => e.render(state, options),
38 Processors::Constructor(e) => e.render(state, options),
39 Processors::Class(e) => e.render(state, options),
40 Processors::Ret(e) => e.render(state, options),
41 Processors::Brk(e) => e.render(state, options),
42 Processors::Go(e) => e.render(state, options),
43 Processors::Enum(e) => e.render(state, options),
44 Processors::Getter(e) => e.render(state, options),
45 Processors::Setter(e) => e.render(state, options),
46 Processors::Comment(e) => e.render(state, options),
47 _ => unreachable!("Rest of the items are not required to be rendered"),
48 }
49 }
50}