33 // const_fn is used by AsmType
44 const_fn, const_panic
55) ]
6- use duckasm_repr :: field_offset ;
7- use duckasm_repr :: { AsmRepr , AsmFieldInfo } ;
8- use duckasm_repr :: types:: { AsmType , FieldDef , StructureDef , UnionDef , UnionFieldDef , TypeId } ;
6+
7+ use static_reflect :: { field_offset , StaticReflect , FieldReflect } ;
8+ use static_reflect :: types:: { TypeInfo , FieldDef , StructureDef , UnionDef , UnionFieldDef , TypeId } ;
99use std:: mem:: { size_of, align_of} ;
1010
11- use duckasm_derive :: { AsmRepr } ;
11+ use static_reflect_derive :: { StaticReflect } ;
1212
13- #[ derive( Copy , Clone , Debug , PartialEq , AsmRepr ) ]
13+ #[ derive( Copy , Clone , Debug , PartialEq , StaticReflect ) ]
1414#[ repr( C ) ]
1515pub struct Nested {
1616 cycle : * mut SimpleStruct ,
1717 float : f64 ,
1818 number : u64 ,
1919}
2020
21- #[ derive( AsmRepr ) ]
21+ #[ derive( StaticReflect ) ]
2222#[ repr( C ) ]
2323pub struct SimpleStruct {
2424 // We can have pointers to anything
@@ -38,7 +38,7 @@ fn leak_vec<T>(elements: Vec<T>) -> &'static [T] {
3838}
3939
4040#[ repr( C ) ]
41- #[ derive( AsmRepr ) ]
41+ #[ derive( StaticReflect ) ]
4242union SimpleUnion {
4343 pub text : * mut String ,
4444 b : bool ,
@@ -48,34 +48,34 @@ union SimpleUnion {
4848
4949#[ test]
5050fn test_union_types ( ) {
51- const EXPECTED_UNION : AsmType < ' static > = AsmType :: Union ( & UnionDef {
51+ const EXPECTED_UNION : TypeInfo < ' static > = TypeInfo :: Union ( & UnionDef {
5252 name : "SimpleUnion" ,
5353 fields : & [
54- SimpleUnion :: FIELD_INFO . text . erase ( ) ,
55- SimpleUnion :: FIELD_INFO . b . erase ( ) ,
56- SimpleUnion :: FIELD_INFO . f . erase ( ) ,
57- SimpleUnion :: FIELD_INFO . nested . erase ( ) ,
54+ SimpleUnion :: NAMED_FIELD_INFO . text . erase ( ) ,
55+ SimpleUnion :: NAMED_FIELD_INFO . b . erase ( ) ,
56+ SimpleUnion :: NAMED_FIELD_INFO . f . erase ( ) ,
57+ SimpleUnion :: NAMED_FIELD_INFO . nested . erase ( ) ,
5858 ] ,
5959 size : size_of :: < SimpleUnion > ( ) ,
6060 alignment : align_of :: < SimpleUnion > ( )
6161 } ) ;
62- assert_eq ! ( EXPECTED_UNION , SimpleUnion :: STATIC_TYPE ) ;
63- assert_eq ! ( SimpleUnion :: FIELD_INFO . text, UnionFieldDef {
62+ assert_eq ! ( EXPECTED_UNION , SimpleUnion :: TYPE_INFO ) ;
63+ assert_eq ! ( SimpleUnion :: NAMED_FIELD_INFO . text, UnionFieldDef {
6464 name: "text" ,
6565 value_type: TypeId :: <* mut String >:: get( ) ,
6666 index: 0
6767 } ) ;
68- assert_eq ! ( SimpleUnion :: FIELD_INFO . b, UnionFieldDef {
68+ assert_eq ! ( SimpleUnion :: NAMED_FIELD_INFO . b, UnionFieldDef {
6969 name: "b" ,
7070 value_type: TypeId :: <bool >:: get( ) ,
7171 index: 1
7272 } ) ;
73- assert_eq ! ( SimpleUnion :: FIELD_INFO . f, UnionFieldDef {
73+ assert_eq ! ( SimpleUnion :: NAMED_FIELD_INFO . f, UnionFieldDef {
7474 name: "f" ,
7575 value_type: TypeId :: <f32 >:: get( ) ,
7676 index: 2
7777 } ) ;
78- assert_eq ! ( SimpleUnion :: FIELD_INFO . nested, UnionFieldDef {
78+ assert_eq ! ( SimpleUnion :: NAMED_FIELD_INFO . nested, UnionFieldDef {
7979 name: "nested" ,
8080 value_type: TypeId :: <Nested >:: get( ) ,
8181 index: 3
@@ -84,30 +84,30 @@ fn test_union_types() {
8484
8585#[ test]
8686fn test_struct_types ( ) {
87- const NESTED_TYPE : AsmType < ' static > = AsmType :: Structure ( & StructureDef {
87+ const NESTED_TYPE : TypeInfo < ' static > = TypeInfo :: Structure ( & StructureDef {
8888 name : "Nested" ,
8989 fields : & [
90- Nested :: FIELD_INFO . cycle . erase ( ) ,
91- Nested :: FIELD_INFO . float . erase ( ) ,
92- Nested :: FIELD_INFO . number . erase ( ) ,
90+ Nested :: NAMED_FIELD_INFO . cycle . erase ( ) ,
91+ Nested :: NAMED_FIELD_INFO . float . erase ( ) ,
92+ Nested :: NAMED_FIELD_INFO . number . erase ( ) ,
9393 ] ,
9494 size : size_of :: < Nested > ( ) ,
9595 alignment : align_of :: < Nested > ( )
9696 } ) ;
97- assert_eq ! ( Nested :: STATIC_TYPE , NESTED_TYPE ) ;
98- assert_eq ! ( Nested :: FIELD_INFO . cycle, FieldDef {
97+ assert_eq ! ( Nested :: TYPE_INFO , NESTED_TYPE ) ;
98+ assert_eq ! ( Nested :: NAMED_FIELD_INFO . cycle, FieldDef {
9999 name: "cycle" ,
100100 value_type: TypeId :: <* mut SimpleStruct >:: get( ) ,
101101 offset: field_offset!( Nested , cycle) ,
102102 index: 0
103103 } ) ;
104- assert_eq ! ( Nested :: FIELD_INFO . float, FieldDef {
104+ assert_eq ! ( Nested :: NAMED_FIELD_INFO . float, FieldDef {
105105 name: "float" ,
106106 value_type: TypeId :: <f64 >:: get( ) ,
107107 offset: field_offset!( Nested , float) ,
108108 index: 1
109109 } ) ;
110- assert_eq ! ( Nested :: FIELD_INFO . number, FieldDef {
110+ assert_eq ! ( Nested :: NAMED_FIELD_INFO . number, FieldDef {
111111 name: "number" ,
112112 value_type: TypeId :: <u64 >:: get( ) ,
113113 offset: field_offset!( Nested , number) ,
@@ -154,8 +154,8 @@ fn test_struct_types() {
154154 ] ;
155155 let static_fields = leak_vec ( fields) ;
156156 assert_eq ! (
157- SimpleStruct :: STATIC_TYPE ,
158- AsmType :: Structure ( & StructureDef {
157+ SimpleStruct :: TYPE_INFO ,
158+ TypeInfo :: Structure ( & StructureDef {
159159 name: "SimpleStruct" ,
160160 fields: static_fields,
161161 size: size_of:: <SimpleStruct >( ) ,
@@ -164,34 +164,34 @@ fn test_struct_types() {
164164 ) ;
165165}
166166
167- #[ derive( AsmRepr ) ]
167+ #[ derive( StaticReflect ) ]
168168#[ repr( C ) ]
169169struct OpaqueArray {
170- #[ duckasm ( assume_repr = "i8" ) ]
170+ #[ reflect ( assume_repr = "i8" ) ]
171171 first : u8 ,
172- #[ duckasm ( opaque_array) ]
172+ #[ static_reflect ( opaque_array) ]
173173 array : [ * mut String ; 42 ]
174174}
175175
176176#[ test]
177177fn test_options ( ) {
178- const OPAQUE_ARRAY_TYPE : AsmType < ' static > = AsmType :: Structure ( & StructureDef {
178+ const OPAQUE_ARRAY_TYPE : TypeInfo < ' static > = TypeInfo :: Structure ( & StructureDef {
179179 name : "OpaqueArray" ,
180180 fields : & [
181- OpaqueArray :: FIELD_INFO . first . erase ( ) ,
182- OpaqueArray :: FIELD_INFO . array . erase ( ) ,
181+ OpaqueArray :: NAMED_FIELD_INFO . first . erase ( ) ,
182+ OpaqueArray :: NAMED_FIELD_INFO . array . erase ( ) ,
183183 ] ,
184184 size : size_of :: < OpaqueArray > ( ) ,
185185 alignment : align_of :: < OpaqueArray > ( )
186186 } ) ;
187- assert_eq ! ( OPAQUE_ARRAY_TYPE , OpaqueArray :: STATIC_TYPE ) ;
188- assert_eq ! ( OpaqueArray :: FIELD_INFO . first, FieldDef {
187+ assert_eq ! ( OPAQUE_ARRAY_TYPE , OpaqueArray :: TYPE_INFO ) ;
188+ assert_eq ! ( OpaqueArray :: NAMED_FIELD_INFO . first, FieldDef {
189189 name: "first" ,
190190 value_type: TypeId :: <i8 >:: get( ) , // It's actually a 'u8', but we assume_repr
191191 offset: field_offset!( OpaqueArray , first) ,
192192 index: 0
193193 } ) ;
194- assert_eq ! ( OpaqueArray :: FIELD_INFO . array, FieldDef {
194+ assert_eq ! ( OpaqueArray :: NAMED_FIELD_INFO . array, FieldDef {
195195 name: "array" ,
196196 value_type: TypeId :: <* mut String >:: get( ) ,
197197 offset: field_offset!( OpaqueArray , array) ,
0 commit comments