1 /* 2 Copyright (C) 2016-2017 Alexander Borisov 3 4 This library is free software; you can redistribute it and/or 5 modify it under the terms of the GNU Lesser General Public 6 License as published by the Free Software Foundation; either 7 version 2.1 of the License, or (at your option) any later version. 8 9 This library is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 Lesser General Public License for more details. 13 14 You should have received a copy of the GNU Lesser General Public 15 License along with this library; if not, write to the Free Software 16 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 17 18 Author: lex.borisov@gmail.com (Alexander Borisov) 19 */ 20 21 #ifndef MyHTML_MyCSS_DECLARATION_SERIALIZATION_H 22 #define MyHTML_MyCSS_DECLARATION_SERIALIZATION_H 23 #pragma once 24 25 #include "mycss/declaration/myosi.h" 26 #include "mycss/values/values.h" 27 #include "mycss/property/init.h" 28 #include "mycss/property/serialization.h" 29 30 #ifdef __cplusplus 31 extern "C" { 32 #endif 33 34 typedef bool (*mycss_declaration_serialization_f)(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, 35 mycore_callback_serialize_f callback, void* context); 36 37 bool mycss_declaration_serialization_entry(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 38 void mycss_declaration_serialization_entries(mycss_entry_t* entry, mycss_declaration_entry_t* first_dec_entry, mycore_callback_serialize_f callback, void* context); 39 bool mycss_declaration_serialization_entry_only_value(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry,mycore_callback_serialize_f callback, void* context); 40 bool mycss_declaration_serialization_entry_by_type(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_property_type_t property_type, mycore_callback_serialize_f callback, void* context); 41 bool mycss_declaration_serialization_entry_only_value_by_type(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycss_property_type_t property_type, mycore_callback_serialize_f callback, void* context); 42 43 bool mycss_declaration_serialization_undef(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 44 bool mycss_declaration_serialization_shorthand_four(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 45 bool mycss_declaration_serialization_shorthand_two(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 46 bool mycss_declaration_serialization_shorthand_two_type(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 47 bool mycss_declaration_serialization_type_list(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 48 bool mycss_declaration_serialization_border_radius(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 49 bool mycss_declaration_serialization_text_decoration(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 50 bool mycss_declaration_serialization_text_decoration_line(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 51 bool mycss_declaration_serialization_text_decoration_skip(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 52 bool mycss_declaration_serialization_font_family(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 53 bool mycss_declaration_serialization_font(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 54 bool mycss_declaration_serialization_background(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 55 bool mycss_declaration_serialization_background_image(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 56 bool mycss_declaration_serialization_background_repeat(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 57 bool mycss_declaration_serialization_background_position(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 58 bool mycss_declaration_serialization_background_size(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 59 bool mycss_declaration_serialization_border_x(mycss_entry_t* entry, mycss_declaration_entry_t* dec_entry, mycore_callback_serialize_f callback, void* context); 60 61 #ifdef __cplusplus 62 } /* extern "C" */ 63 #endif 64 65 #endif /* MyHTML_MyCSS_DECLARATION_SERIALIZATION_H */ 66