gesha_rust_types/
type_header.rs1use crate::{DeriveAttribute, DocComments, SerdeAttribute, TypeIdentifier};
2
3#[derive(Clone, Debug, PartialEq)]
4pub struct TypeHeader {
5 pub name: TypeIdentifier,
6 pub derive_attrs: Vec<DeriveAttribute>,
7 pub serde_attrs: Vec<SerdeAttribute>,
8 pub doc_comments: Option<DocComments>,
9 _hide_default_constructor: bool,
10}
11
12impl TypeHeader {
13 pub fn new(
14 name: TypeIdentifier,
15 doc_comments: Option<DocComments>,
16 serde_attrs: Vec<SerdeAttribute>,
17 derive_attrs: Vec<DeriveAttribute>,
18 ) -> Self {
19 Self {
20 name,
21 derive_attrs,
22 serde_attrs,
23 doc_comments,
24 _hide_default_constructor: true,
25 }
26 }
27}