cxx_gen/syntax/message.rs
1use proc_macro2::TokenStream;
2use quote::ToTokens;
3use std::fmt::{self, Display};
4
5pub(crate) struct Message(String);
6
7impl Message {
8 pub fn new() -> Self {
9 Message(String::new())
10 }
11
12 pub fn write_fmt(&mut self, args: fmt::Arguments) {
13 fmt::Write::write_fmt(&mut self.0, args).unwrap();
14 }
15}
16
17impl Display for Message {
18 fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
19 self.0.fmt(formatter)
20 }
21}
22
23impl ToTokens for Message {
24 fn to_tokens(&self, tokens: &mut TokenStream) {
25 self.0.to_tokens(tokens);
26 }
27}