@@ -157,6 +157,12 @@ std::string TD_TL_writer_cpp::gen_fetch_class_name(const tl::tl_tree_type *tree_
157
157
if (name == " Bytes" ) {
158
158
return " TlFetchBytes<bytes>" ;
159
159
}
160
+ if (name == " SecureString" ) {
161
+ return " TlFetchString<secure_string>" ;
162
+ }
163
+ if (name == " SecureBytes" ) {
164
+ return " TlFetchBytes<secure_bytes>" ;
165
+ }
160
166
161
167
if (name == " Vector" ) {
162
168
assert (t->arity == 1 );
@@ -348,7 +354,7 @@ std::string TD_TL_writer_cpp::gen_store_class_name(const tl::tl_tree_type *tree_
348
354
assert (false );
349
355
return " " ;
350
356
}
351
- if (name == " String" || name == " Bytes" ) {
357
+ if (name == " String" || name == " Bytes" || name == " SecureString " || name == " SecureBytes " ) {
352
358
return " TlStoreString" ;
353
359
}
354
360
@@ -409,13 +415,13 @@ std::string TD_TL_writer_cpp::gen_type_store(const std::string &field_name, cons
409
415
assert (!(t->flags & tl::FLAG_DEFAULT_CONSTRUCTOR)); // Not supported yet
410
416
411
417
if (name == " #" || name == " Int" || name == " Long" || name == " Int32" || name == " Int53" || name == " Int64" ||
412
- name == " Double" || name == " Bool" || name == " String" || name == " Int128 " || name == " Int256 " ||
413
- name == " Int512" ) {
418
+ name == " Double" || name == " Bool" || name == " String" || name == " SecureString " || name == " Int128 " ||
419
+ name == " Int256 " || name == " Int512" ) {
414
420
return " s.store_field(\" " + get_pretty_field_name (field_name) + " \" , " + field_name + " );" ;
415
421
} else if (name == " True" ) {
416
422
// currently nothing to do
417
423
return " " ;
418
- } else if (name == " Bytes" ) {
424
+ } else if (name == " Bytes" || name == " SecureBytes " ) {
419
425
return " s.store_bytes_field(\" " + get_pretty_field_name (field_name) + " \" , " + field_name + " );" ;
420
426
} else if (name == " Vector" ) {
421
427
const tl::tl_tree_type *child = static_cast <const tl::tl_tree_type *>(tree_type->children [0 ]);
@@ -692,7 +698,7 @@ std::string TD_TL_writer_cpp::gen_constructor_field_init(int field_num, const st
692
698
}
693
699
std::string move_begin;
694
700
std::string move_end;
695
- if ((field_type == " bytes" || field_type.compare (0 , 5 , " array" ) == 0 ||
701
+ if ((field_type == " bytes" || field_type == " secure_bytes " || field_type .compare (0 , 5 , " array" ) == 0 ||
696
702
field_type.compare (0 , 10 , " object_ptr" ) == 0 ) &&
697
703
!is_default) {
698
704
move_begin = " std::move(" ;
0 commit comments