@@ -9,9 +9,8 @@ use itertools::Itertools;
9
9
10
10
use crate :: {
11
11
codegen:: { autogen_warning, common:: ExampleInfo , Target } ,
12
- objects:: FieldKind ,
12
+ objects:: { FieldKind , ViewReference } ,
13
13
CodeGenerator , GeneratedFiles , Object , ObjectField , ObjectKind , Objects , Reporter , Type ,
14
- ATTR_DOCS_VIEW_TYPES ,
15
14
} ;
16
15
17
16
pub const DATAFRAME_VIEW_FQNAME : & str = "rerun.blueprint.views.DataframeView" ;
@@ -34,12 +33,6 @@ impl DocsCodeGenerator {
34
33
}
35
34
}
36
35
37
- struct ViewReference {
38
- /// Typename of the view. Not a fully qualified name, just the name as specified on the attribute.
39
- view_name : String ,
40
- explanation : Option < String > ,
41
- }
42
-
43
36
type ViewsPerArchetype = BTreeMap < String , Vec < ViewReference > > ;
44
37
45
38
impl CodeGenerator for DocsCodeGenerator {
@@ -144,23 +137,9 @@ on [Entities and Components](../../concepts/entity-component.md).",
144
137
fn collect_view_types_per_archetype ( objects : & Objects ) -> ViewsPerArchetype {
145
138
let mut view_types_per_object = ViewsPerArchetype :: new ( ) ;
146
139
for object in objects. objects . values ( ) {
147
- let Some ( view_types) = object. try_get_attr :: < String > ( ATTR_DOCS_VIEW_TYPES ) else {
148
- continue ;
149
- } ;
150
-
151
- let view_types = view_types
152
- . split ( ',' )
153
- . map ( |view_type| {
154
- let mut parts = view_type. splitn ( 2 , ':' ) ;
155
- let view_name = parts. next ( ) . unwrap ( ) . trim ( ) . to_owned ( ) ;
156
- let explanation = parts. next ( ) . map ( |s| s. trim ( ) . to_owned ( ) ) ;
157
- ViewReference {
158
- view_name,
159
- explanation,
160
- }
161
- } )
162
- . collect ( ) ;
163
- view_types_per_object. insert ( object. fqname . clone ( ) , view_types) ;
140
+ if let Some ( view_types) = object. archetype_view_types ( ) {
141
+ view_types_per_object. insert ( object. fqname . clone ( ) , view_types) ;
142
+ }
164
143
}
165
144
166
145
view_types_per_object
0 commit comments