1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
use super::ns;
use crate::options;
use lib_ruby_parser_nodes::Message;
pub fn name(message: &Message) -> String {
format!(
"{ns}__as_{variant}",
ns = ns(),
variant = message.lower_name()
)
}
pub fn sig(message: &Message) -> String {
format!(
"const {message_variant_blob} *{fn_attributes} {variant_getter_name}(const {diagnostic_message_blob} *self_blob)",
message_variant_blob = options().message_variant_blob_name(message),
fn_attributes = options().fn_attributes,
variant_getter_name = name(message),
diagnostic_message_blob = options().diagnostic_message_blob_name
)
}