summaryrefslogtreecommitdiff
path: root/src/lib/eolian
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/eolian')
-rw-r--r--src/lib/eolian/Eolian.h399
-rw-r--r--src/lib/eolian/Eolian_Aux.h41
-rw-r--r--src/lib/eolian/database_class_api.c38
-rw-r--r--src/lib/eolian/database_constructor_api.c6
-rw-r--r--src/lib/eolian/database_event_api.c16
-rw-r--r--src/lib/eolian/database_expr_api.c24
-rw-r--r--src/lib/eolian/database_function_api.c36
-rw-r--r--src/lib/eolian/database_function_parameter_api.c16
-rw-r--r--src/lib/eolian/database_implement_api.c18
-rw-r--r--src/lib/eolian/database_part_api.c4
-rw-r--r--src/lib/eolian/database_type_api.c66
-rw-r--r--src/lib/eolian/database_var_api.c8
-rw-r--r--src/lib/eolian/eo_parser.h3
-rw-r--r--src/lib/eolian/eolian.c6
-rw-r--r--src/lib/eolian/eolian_api.h34
-rw-r--r--src/lib/eolian/eolian_aux.c12
-rw-r--r--src/lib/eolian/eolian_database.c132
-rw-r--r--src/lib/eolian/eolian_priv.h1
-rw-r--r--src/lib/eolian/meson.build2
19 files changed, 421 insertions, 441 deletions
diff --git a/src/lib/eolian/Eolian.h b/src/lib/eolian/Eolian.h
index be2845630a..d6099a6433 100644
--- a/src/lib/eolian/Eolian.h
+++ b/src/lib/eolian/Eolian.h
@@ -1,31 +1,7 @@
1#ifndef EOLIAN_H 1#ifndef EOLIAN_H
2#define EOLIAN_H 2#define EOLIAN_H
3 3
4#ifdef EAPI 4#include "eolian_api.h"
5# undef EAPI
6#endif
7
8#ifdef _WIN32
9# ifdef EFL_BUILD
10# ifdef DLL_EXPORT
11# define EAPI __declspec(dllexport)
12# else
13# define EAPI
14# endif
15# else
16# define EAPI __declspec(dllimport)
17# endif
18#else
19# ifdef __GNUC__
20# if __GNUC__ >= 4
21# define EAPI __attribute__ ((visibility("default")))
22# else
23# define EAPI
24# endif
25# else
26# define EAPI
27# endif
28#endif
29 5
30#ifdef __cplusplus 6#ifdef __cplusplus
31extern "C" { 7extern "C" {
@@ -477,14 +453,14 @@ typedef struct _Eolian_Doc_Token
477 * 453 *
478 * @ingroup Eolian 454 * @ingroup Eolian
479 */ 455 */
480EAPI int eolian_init(void); 456EOLIAN_API int eolian_init(void);
481 457
482/* 458/*
483 * @brief Shutdown Eolian. 459 * @brief Shutdown Eolian.
484 * 460 *
485 * @ingroup Eolian 461 * @ingroup Eolian
486 */ 462 */
487EAPI int eolian_shutdown(void); 463EOLIAN_API int eolian_shutdown(void);
488 464
489/* 465/*
490 * @brief Get the Eolian file format version. 466 * @brief Get the Eolian file format version.
@@ -493,7 +469,7 @@ EAPI int eolian_shutdown(void);
493 * retrieval of the version at runtime, so it can be used by FFI based 469 * retrieval of the version at runtime, so it can be used by FFI based
494 * bindings in dynamic languages to do runtime checks and so on. 470 * bindings in dynamic languages to do runtime checks and so on.
495 */ 471 */
496EAPI unsigned short eolian_file_format_version_get(void); 472EOLIAN_API unsigned short eolian_file_format_version_get(void);
497 473
498/* 474/*
499 * @brief Create a new Eolian state. 475 * @brief Create a new Eolian state.
@@ -513,7 +489,7 @@ EAPI unsigned short eolian_file_format_version_get(void);
513 * 489 *
514 * @ingroup Eolian 490 * @ingroup Eolian
515 */ 491 */
516EAPI Eolian_State *eolian_state_new(void); 492EOLIAN_API Eolian_State *eolian_state_new(void);
517 493
518/* 494/*
519 * @brief Free an Eolian state. 495 * @brief Free an Eolian state.
@@ -525,7 +501,7 @@ EAPI Eolian_State *eolian_state_new(void);
525 * @param[in] state the state to free 501 * @param[in] state the state to free
526 * 502 *
527 */ 503 */
528EAPI void eolian_state_free(Eolian_State *state); 504EOLIAN_API void eolian_state_free(Eolian_State *state);
529 505
530/* 506/*
531 * @brief Set the panic function for the state. 507 * @brief Set the panic function for the state.
@@ -555,7 +531,7 @@ EAPI void eolian_state_free(Eolian_State *state);
555 * 531 *
556 * @see eolian_state_error_cb_set 532 * @see eolian_state_error_cb_set
557 */ 533 */
558EAPI Eolian_Panic_Cb eolian_state_panic_cb_set(Eolian_State *state, Eolian_Panic_Cb cb); 534EOLIAN_API Eolian_Panic_Cb eolian_state_panic_cb_set(Eolian_State *state, Eolian_Panic_Cb cb);
559 535
560/* 536/*
561 * @brief Set the error function for the state. 537 * @brief Set the error function for the state.
@@ -572,7 +548,7 @@ EAPI Eolian_Panic_Cb eolian_state_panic_cb_set(Eolian_State *state, Eolian_Panic
572 * @see eolian_state_panic_cb_set 548 * @see eolian_state_panic_cb_set
573 * @see eolian_state_error_data_set 549 * @see eolian_state_error_data_set
574 */ 550 */
575EAPI Eolian_Error_Cb eolian_state_error_cb_set(Eolian_State *state, Eolian_Error_Cb cb); 551EOLIAN_API Eolian_Error_Cb eolian_state_error_cb_set(Eolian_State *state, Eolian_Error_Cb cb);
576 552
577/* 553/*
578 * @brief Set a data pointer to be passed to the error function. 554 * @brief Set a data pointer to be passed to the error function.
@@ -585,7 +561,7 @@ EAPI Eolian_Error_Cb eolian_state_error_cb_set(Eolian_State *state, Eolian_Error
585 * 561 *
586 * @see eolian_state_error_cb_set 562 * @see eolian_state_error_cb_set
587 */ 563 */
588EAPI void *eolian_state_error_data_set(Eolian_State *state, void *data); 564EOLIAN_API void *eolian_state_error_data_set(Eolian_State *state, void *data);
589 565
590/* 566/*
591 * @brief Get the type of an Eolian object. 567 * @brief Get the type of an Eolian object.
@@ -603,7 +579,7 @@ EAPI void *eolian_state_error_data_set(Eolian_State *state, void *data);
603 * 579 *
604 * @ingroup Eolian 580 * @ingroup Eolian
605 */ 581 */
606EAPI Eolian_Object_Type eolian_object_type_get(const Eolian_Object *obj); 582EOLIAN_API Eolian_Object_Type eolian_object_type_get(const Eolian_Object *obj);
607 583
608/* 584/*
609 * @brief Get the unit the object comes from. 585 * @brief Get the unit the object comes from.
@@ -619,7 +595,7 @@ EAPI Eolian_Object_Type eolian_object_type_get(const Eolian_Object *obj);
619 * 595 *
620 * @ingroup Eolian 596 * @ingroup Eolian
621 */ 597 */
622EAPI const Eolian_Unit *eolian_object_unit_get(const Eolian_Object *obj); 598EOLIAN_API const Eolian_Unit *eolian_object_unit_get(const Eolian_Object *obj);
623 599
624/* 600/*
625 * @brief Get the name of the file the object comes from. 601 * @brief Get the name of the file the object comes from.
@@ -636,7 +612,7 @@ EAPI const Eolian_Unit *eolian_object_unit_get(const Eolian_Object *obj);
636 * 612 *
637 * @ingroup Eolian 613 * @ingroup Eolian
638 */ 614 */
639EAPI const char *eolian_object_file_get(const Eolian_Object *obj); 615EOLIAN_API const char *eolian_object_file_get(const Eolian_Object *obj);
640 616
641/* 617/*
642 * @brief Get the line the object was declared at. 618 * @brief Get the line the object was declared at.
@@ -652,7 +628,7 @@ EAPI const char *eolian_object_file_get(const Eolian_Object *obj);
652 * 628 *
653 * @ingroup Eolian 629 * @ingroup Eolian
654 */ 630 */
655EAPI int eolian_object_line_get(const Eolian_Object *obj); 631EOLIAN_API int eolian_object_line_get(const Eolian_Object *obj);
656 632
657/* 633/*
658 * @brief Get the column the object was declared at. 634 * @brief Get the column the object was declared at.
@@ -671,7 +647,7 @@ EAPI int eolian_object_line_get(const Eolian_Object *obj);
671 * 647 *
672 * @ingroup Eolian 648 * @ingroup Eolian
673 */ 649 */
674EAPI int eolian_object_column_get(const Eolian_Object *obj); 650EOLIAN_API int eolian_object_column_get(const Eolian_Object *obj);
675 651
676/* 652/*
677 * @brief Get the name of an object. 653 * @brief Get the name of an object.
@@ -691,7 +667,7 @@ EAPI int eolian_object_column_get(const Eolian_Object *obj);
691 * 667 *
692 * @ingroup Eolian 668 * @ingroup Eolian
693 */ 669 */
694EAPI const char *eolian_object_name_get(const Eolian_Object *obj); 670EOLIAN_API const char *eolian_object_name_get(const Eolian_Object *obj);
695 671
696/* 672/*
697 * @brief Get the C name of an object. 673 * @brief Get the C name of an object.
@@ -713,7 +689,7 @@ EAPI const char *eolian_object_name_get(const Eolian_Object *obj);
713 * 689 *
714 * @ingroup Eolian 690 * @ingroup Eolian
715 */ 691 */
716EAPI const char *eolian_object_c_name_get(const Eolian_Object *obj); 692EOLIAN_API const char *eolian_object_c_name_get(const Eolian_Object *obj);
717 693
718/* 694/*
719 * @brief Get the short name of an object. 695 * @brief Get the short name of an object.
@@ -727,7 +703,7 @@ EAPI const char *eolian_object_c_name_get(const Eolian_Object *obj);
727 * 703 *
728 * @ingroup Eolian 704 * @ingroup Eolian
729 */ 705 */
730EAPI const char *eolian_object_short_name_get(const Eolian_Object *obj); 706EOLIAN_API const char *eolian_object_short_name_get(const Eolian_Object *obj);
731 707
732/* 708/*
733 * @brief Get a list of namespaces for the object. 709 * @brief Get a list of namespaces for the object.
@@ -741,7 +717,7 @@ EAPI const char *eolian_object_short_name_get(const Eolian_Object *obj);
741 * 717 *
742 * @ingroup Eolian 718 * @ingroup Eolian
743 */ 719 */
744EAPI Eina_Iterator *eolian_object_namespaces_get(const Eolian_Object *obj); 720EOLIAN_API Eina_Iterator *eolian_object_namespaces_get(const Eolian_Object *obj);
745 721
746/* 722/*
747 * @brief Get whether an object is beta. 723 * @brief Get whether an object is beta.
@@ -754,7 +730,7 @@ EAPI Eina_Iterator *eolian_object_namespaces_get(const Eolian_Object *obj);
754 * 730 *
755 * @ingroup Eolian 731 * @ingroup Eolian
756 */ 732 */
757EAPI Eina_Bool eolian_object_is_beta(const Eolian_Object *obj); 733EOLIAN_API Eina_Bool eolian_object_is_beta(const Eolian_Object *obj);
758 734
759/* 735/*
760 * @brief Scan the given directory for .eo and .eot files. 736 * @brief Scan the given directory for .eo and .eot files.
@@ -771,7 +747,7 @@ EAPI Eina_Bool eolian_object_is_beta(const Eolian_Object *obj);
771 * 747 *
772 * @ingroup Eolian 748 * @ingroup Eolian
773 */ 749 */
774EAPI Eina_Bool eolian_state_directory_add(Eolian_State *state, const char *dir); 750EOLIAN_API Eina_Bool eolian_state_directory_add(Eolian_State *state, const char *dir);
775 751
776/* 752/*
777 * @brief Scan the system directory for .eo and .eot files. 753 * @brief Scan the system directory for .eo and .eot files.
@@ -788,7 +764,7 @@ EAPI Eina_Bool eolian_state_directory_add(Eolian_State *state, const char *dir);
788 * 764 *
789 * @ingroup Eolian 765 * @ingroup Eolian
790 */ 766 */
791EAPI Eina_Bool eolian_state_system_directory_add(Eolian_State *state); 767EOLIAN_API Eina_Bool eolian_state_system_directory_add(Eolian_State *state);
792 768
793/* 769/*
794 * @brief Get an iterator to all .eo file names with paths. 770 * @brief Get an iterator to all .eo file names with paths.
@@ -801,7 +777,7 @@ EAPI Eina_Bool eolian_state_system_directory_add(Eolian_State *state);
801 * 777 *
802 * @ingroup Eolian 778 * @ingroup Eolian
803 */ 779 */
804EAPI Eina_Iterator *eolian_state_eo_file_paths_get(const Eolian_State *state); 780EOLIAN_API Eina_Iterator *eolian_state_eo_file_paths_get(const Eolian_State *state);
805 781
806/* 782/*
807 * @brief Get an iterator to all .eot file names with paths. 783 * @brief Get an iterator to all .eot file names with paths.
@@ -814,7 +790,7 @@ EAPI Eina_Iterator *eolian_state_eo_file_paths_get(const Eolian_State *state);
814 * 790 *
815 * @ingroup Eolian 791 * @ingroup Eolian
816 */ 792 */
817EAPI Eina_Iterator *eolian_state_eot_file_paths_get(const Eolian_State *state); 793EOLIAN_API Eina_Iterator *eolian_state_eot_file_paths_get(const Eolian_State *state);
818 794
819/* 795/*
820 * @brief Get an iterator to all .eo file names (without paths). 796 * @brief Get an iterator to all .eo file names (without paths).
@@ -827,7 +803,7 @@ EAPI Eina_Iterator *eolian_state_eot_file_paths_get(const Eolian_State *state);
827 * 803 *
828 * @ingroup Eolian 804 * @ingroup Eolian
829 */ 805 */
830EAPI Eina_Iterator *eolian_state_eo_files_get(const Eolian_State *state); 806EOLIAN_API Eina_Iterator *eolian_state_eo_files_get(const Eolian_State *state);
831 807
832/* 808/*
833 * @brief Get an iterator to all .eot file names (without paths). 809 * @brief Get an iterator to all .eot file names (without paths).
@@ -840,7 +816,7 @@ EAPI Eina_Iterator *eolian_state_eo_files_get(const Eolian_State *state);
840 * 816 *
841 * @ingroup Eolian 817 * @ingroup Eolian
842 */ 818 */
843EAPI Eina_Iterator *eolian_state_eot_files_get(const Eolian_State *state); 819EOLIAN_API Eina_Iterator *eolian_state_eot_files_get(const Eolian_State *state);
844 820
845/* 821/*
846 * @brief Parse the given .eo or .eot file and fill the database. 822 * @brief Parse the given .eo or .eot file and fill the database.
@@ -857,7 +833,7 @@ EAPI Eina_Iterator *eolian_state_eot_files_get(const Eolian_State *state);
857 * 833 *
858 * @ingroup Eolian 834 * @ingroup Eolian
859 */ 835 */
860EAPI const Eolian_Unit *eolian_state_file_parse(Eolian_State *state, const char *filename); 836EOLIAN_API const Eolian_Unit *eolian_state_file_parse(Eolian_State *state, const char *filename);
861 837
862/* 838/*
863 * @brief Parse the given .eo or .eot file and fill the database. 839 * @brief Parse the given .eo or .eot file and fill the database.
@@ -873,7 +849,7 @@ EAPI const Eolian_Unit *eolian_state_file_parse(Eolian_State *state, const char
873 * 849 *
874 * @ingroup Eolian 850 * @ingroup Eolian
875 */ 851 */
876EAPI const Eolian_Unit *eolian_state_file_path_parse(Eolian_State *state, const char *filepath); 852EOLIAN_API const Eolian_Unit *eolian_state_file_path_parse(Eolian_State *state, const char *filepath);
877 853
878/* 854/*
879 * @brief Parse all known eo files. 855 * @brief Parse all known eo files.
@@ -887,7 +863,7 @@ EAPI const Eolian_Unit *eolian_state_file_path_parse(Eolian_State *state, const
887 * 863 *
888 * @ingroup Eolian 864 * @ingroup Eolian
889 */ 865 */
890EAPI Eina_Bool eolian_state_all_eo_files_parse(Eolian_State *state); 866EOLIAN_API Eina_Bool eolian_state_all_eo_files_parse(Eolian_State *state);
891 867
892/* 868/*
893 * @brief Parse all known eot files. 869 * @brief Parse all known eot files.
@@ -901,7 +877,7 @@ EAPI Eina_Bool eolian_state_all_eo_files_parse(Eolian_State *state);
901 * 877 *
902 * @ingroup Eolian 878 * @ingroup Eolian
903 */ 879 */
904EAPI Eina_Bool eolian_state_all_eot_files_parse(Eolian_State *state); 880EOLIAN_API Eina_Bool eolian_state_all_eot_files_parse(Eolian_State *state);
905 881
906/* 882/*
907 * @brief Perform additional checks on the state. 883 * @brief Perform additional checks on the state.
@@ -918,7 +894,7 @@ EAPI Eina_Bool eolian_state_all_eot_files_parse(Eolian_State *state);
918 * 894 *
919 * @ingroup Eolian 895 * @ingroup Eolian
920 */ 896 */
921EAPI Eina_Bool eolian_state_check(const Eolian_State *state); 897EOLIAN_API Eina_Bool eolian_state_check(const Eolian_State *state);
922 898
923/* 899/*
924 * @brief Get an Eolian unit by file name. 900 * @brief Get an Eolian unit by file name.
@@ -936,7 +912,7 @@ EAPI Eina_Bool eolian_state_check(const Eolian_State *state);
936 * 912 *
937 * @ingroup Eolian 913 * @ingroup Eolian
938 */ 914 */
939EAPI const Eolian_Unit *eolian_state_unit_by_file_get(const Eolian_State *state, const char *file_name); 915EOLIAN_API const Eolian_Unit *eolian_state_unit_by_file_get(const Eolian_State *state, const char *file_name);
940 916
941/* 917/*
942 * @brief Get an iterator to all Eolian units in a state. 918 * @brief Get an iterator to all Eolian units in a state.
@@ -947,7 +923,7 @@ EAPI const Eolian_Unit *eolian_state_unit_by_file_get(const Eolian_State *state,
947 * 923 *
948 * @ingroup Eolian 924 * @ingroup Eolian
949 */ 925 */
950EAPI Eina_Iterator *eolian_state_units_get(const Eolian_State *state); 926EOLIAN_API Eina_Iterator *eolian_state_units_get(const Eolian_State *state);
951 927
952/* 928/*
953 * @brief Get the state associated with the unit. 929 * @brief Get the state associated with the unit.
@@ -961,7 +937,7 @@ EAPI Eina_Iterator *eolian_state_units_get(const Eolian_State *state);
961 * 937 *
962 * @ingroup Eolian 938 * @ingroup Eolian
963 */ 939 */
964EAPI const Eolian_State *eolian_unit_state_get(const Eolian_Unit *unit); 940EOLIAN_API const Eolian_State *eolian_unit_state_get(const Eolian_Unit *unit);
965 941
966/* 942/*
967 * @brief Get the children (dependencies) of a unit. 943 * @brief Get the children (dependencies) of a unit.
@@ -972,7 +948,7 @@ EAPI const Eolian_State *eolian_unit_state_get(const Eolian_Unit *unit);
972 * 948 *
973 * @ingroup Eolian 949 * @ingroup Eolian
974 */ 950 */
975EAPI Eina_Iterator *eolian_unit_children_get(const Eolian_Unit *unit); 951EOLIAN_API Eina_Iterator *eolian_unit_children_get(const Eolian_Unit *unit);
976 952
977/* 953/*
978 * @brief Get the file name a unit is associated with. 954 * @brief Get the file name a unit is associated with.
@@ -986,7 +962,7 @@ EAPI Eina_Iterator *eolian_unit_children_get(const Eolian_Unit *unit);
986 * 962 *
987 * @ingroup Eolian 963 * @ingroup Eolian
988 */ 964 */
989EAPI const char *eolian_unit_file_get(const Eolian_Unit *unit); 965EOLIAN_API const char *eolian_unit_file_get(const Eolian_Unit *unit);
990 966
991/* 967/*
992 * @brief Get the full file path a unit is associated with. 968 * @brief Get the full file path a unit is associated with.
@@ -1000,7 +976,7 @@ EAPI const char *eolian_unit_file_get(const Eolian_Unit *unit);
1000 * 976 *
1001 * @ingroup Eolian 977 * @ingroup Eolian
1002 */ 978 */
1003EAPI const char *eolian_unit_file_path_get(const Eolian_Unit *unit); 979EOLIAN_API const char *eolian_unit_file_path_get(const Eolian_Unit *unit);
1004 980
1005/* 981/*
1006 * @brief Get the version of the unit. 982 * @brief Get the version of the unit.
@@ -1012,7 +988,7 @@ EAPI const char *eolian_unit_file_path_get(const Eolian_Unit *unit);
1012 * 988 *
1013 * @ingroup Eolian 989 * @ingroup Eolian
1014 */ 990 */
1015EAPI unsigned short eolian_unit_version_get(const Eolian_Unit *unit); 991EOLIAN_API unsigned short eolian_unit_version_get(const Eolian_Unit *unit);
1016 992
1017/* 993/*
1018 * @brief Get an object in a unit by name. 994 * @brief Get an object in a unit by name.
@@ -1025,7 +1001,7 @@ EAPI unsigned short eolian_unit_version_get(const Eolian_Unit *unit);
1025 * 1001 *
1026 * @ingroup Eolian 1002 * @ingroup Eolian
1027 */ 1003 */
1028EAPI const Eolian_Object *eolian_unit_object_by_name_get(const Eolian_Unit *unit, const char *name); 1004EOLIAN_API const Eolian_Object *eolian_unit_object_by_name_get(const Eolian_Unit *unit, const char *name);
1029 1005
1030/* 1006/*
1031 * @brief Get all objects in the unit. 1007 * @brief Get all objects in the unit.
@@ -1038,7 +1014,7 @@ EAPI const Eolian_Object *eolian_unit_object_by_name_get(const Eolian_Unit *unit
1038 * 1014 *
1039 * @ingroup Eolian 1015 * @ingroup Eolian
1040 */ 1016 */
1041EAPI Eina_Iterator *eolian_unit_objects_get(const Eolian_Unit *unit); 1017EOLIAN_API Eina_Iterator *eolian_unit_objects_get(const Eolian_Unit *unit);
1042 1018
1043/* 1019/*
1044 * @brief Get a class within a unit by name. 1020 * @brief Get a class within a unit by name.
@@ -1048,7 +1024,7 @@ EAPI Eina_Iterator *eolian_unit_objects_get(const Eolian_Unit *unit);
1048 * 1024 *
1049 * @ingroup Eolian 1025 * @ingroup Eolian
1050 */ 1026 */
1051EAPI const Eolian_Class *eolian_unit_class_by_name_get(const Eolian_Unit *unit, const char *class_name); 1027EOLIAN_API const Eolian_Class *eolian_unit_class_by_name_get(const Eolian_Unit *unit, const char *class_name);
1052 1028
1053/* 1029/*
1054 * @brief Get an iterator to all the classes stored into a unit. 1030 * @brief Get an iterator to all the classes stored into a unit.
@@ -1057,7 +1033,7 @@ EAPI const Eolian_Class *eolian_unit_class_by_name_get(const Eolian_Unit *unit,
1057 * 1033 *
1058 * @ingroup Eolian 1034 * @ingroup Eolian
1059 */ 1035 */
1060EAPI Eina_Iterator *eolian_unit_classes_get(const Eolian_Unit *unit); 1036EOLIAN_API Eina_Iterator *eolian_unit_classes_get(const Eolian_Unit *unit);
1061 1037
1062/* 1038/*
1063 * @brief Get a constant in a unit by name. 1039 * @brief Get a constant in a unit by name.
@@ -1067,7 +1043,7 @@ EAPI Eina_Iterator *eolian_unit_classes_get(const Eolian_Unit *unit);
1067 * 1043 *
1068 * @ingroup Eolian 1044 * @ingroup Eolian
1069 */ 1045 */
1070EAPI const Eolian_Constant *eolian_unit_constant_by_name_get(const Eolian_Unit *unit, const char *name); 1046EOLIAN_API const Eolian_Constant *eolian_unit_constant_by_name_get(const Eolian_Unit *unit, const char *name);
1071 1047
1072/* 1048/*
1073 * @brief Get an error declaration in a unit by name. 1049 * @brief Get an error declaration in a unit by name.
@@ -1077,7 +1053,7 @@ EAPI const Eolian_Constant *eolian_unit_constant_by_name_get(const Eolian_Unit *
1077 * 1053 *
1078 * @ingroup Eolian 1054 * @ingroup Eolian
1079 */ 1055 */
1080EAPI const Eolian_Error *eolian_unit_error_by_name_get(const Eolian_Unit *unit, const char *name); 1056EOLIAN_API const Eolian_Error *eolian_unit_error_by_name_get(const Eolian_Unit *unit, const char *name);
1081 1057
1082/* 1058/*
1083 * @brief Get an iterator to all constants in the Eolian database. 1059 * @brief Get an iterator to all constants in the Eolian database.
@@ -1088,7 +1064,7 @@ EAPI const Eolian_Error *eolian_unit_error_by_name_get(const Eolian_Unit *unit,
1088 * 1064 *
1089 * @ingroup Eolian 1065 * @ingroup Eolian
1090 */ 1066 */
1091EAPI Eina_Iterator *eolian_unit_constants_get(const Eolian_Unit *unit); 1067EOLIAN_API Eina_Iterator *eolian_unit_constants_get(const Eolian_Unit *unit);
1092 1068
1093/* 1069/*
1094 * @brief Get an iterator to all error declarations in the Eolian database. 1070 * @brief Get an iterator to all error declarations in the Eolian database.
@@ -1099,7 +1075,7 @@ EAPI Eina_Iterator *eolian_unit_constants_get(const Eolian_Unit *unit);
1099 * 1075 *
1100 * @ingroup Eolian 1076 * @ingroup Eolian
1101 */ 1077 */
1102EAPI Eina_Iterator *eolian_unit_errors_get(const Eolian_Unit *unit); 1078EOLIAN_API Eina_Iterator *eolian_unit_errors_get(const Eolian_Unit *unit);
1103 1079
1104/* 1080/*
1105 * @brief Get an alias type declaration within a unit by name. 1081 * @brief Get an alias type declaration within a unit by name.
@@ -1109,7 +1085,7 @@ EAPI Eina_Iterator *eolian_unit_errors_get(const Eolian_Unit *unit);
1109 * 1085 *
1110 * @ingroup Eolian 1086 * @ingroup Eolian
1111 */ 1087 */
1112EAPI const Eolian_Typedecl *eolian_unit_alias_by_name_get(const Eolian_Unit *unit, const char *name); 1088EOLIAN_API const Eolian_Typedecl *eolian_unit_alias_by_name_get(const Eolian_Unit *unit, const char *name);
1113 1089
1114/* 1090/*
1115 * @brief Get a struct declaration within a unit by name. 1091 * @brief Get a struct declaration within a unit by name.
@@ -1119,7 +1095,7 @@ EAPI const Eolian_Typedecl *eolian_unit_alias_by_name_get(const Eolian_Unit *uni
1119 * 1095 *
1120 * @ingroup Eolian 1096 * @ingroup Eolian
1121 */ 1097 */
1122EAPI const Eolian_Typedecl *eolian_unit_struct_by_name_get(const Eolian_Unit *unit, const char *name); 1098EOLIAN_API const Eolian_Typedecl *eolian_unit_struct_by_name_get(const Eolian_Unit *unit, const char *name);
1123 1099
1124/* 1100/*
1125 * @brief Get an enum declaration within a unit by name. 1101 * @brief Get an enum declaration within a unit by name.
@@ -1129,7 +1105,7 @@ EAPI const Eolian_Typedecl *eolian_unit_struct_by_name_get(const Eolian_Unit *un
1129 * 1105 *
1130 * @ingroup Eolian 1106 * @ingroup Eolian
1131 */ 1107 */
1132EAPI const Eolian_Typedecl *eolian_unit_enum_by_name_get(const Eolian_Unit *unit, const char *name); 1108EOLIAN_API const Eolian_Typedecl *eolian_unit_enum_by_name_get(const Eolian_Unit *unit, const char *name);
1133 1109
1134/* 1110/*
1135 * @brief Get an iterator to all aliases in the Eolian database. 1111 * @brief Get an iterator to all aliases in the Eolian database.
@@ -1140,7 +1116,7 @@ EAPI const Eolian_Typedecl *eolian_unit_enum_by_name_get(const Eolian_Unit *unit
1140 * 1116 *
1141 * @ingroup Eolian 1117 * @ingroup Eolian
1142 */ 1118 */
1143EAPI Eina_Iterator *eolian_unit_aliases_get(const Eolian_Unit *unit); 1119EOLIAN_API Eina_Iterator *eolian_unit_aliases_get(const Eolian_Unit *unit);
1144 1120
1145/* 1121/*
1146 * @brief Get an iterator to all structs in the Eolian database. 1122 * @brief Get an iterator to all structs in the Eolian database.
@@ -1151,7 +1127,7 @@ EAPI Eina_Iterator *eolian_unit_aliases_get(const Eolian_Unit *unit);
1151 * 1127 *
1152 * @ingroup Eolian 1128 * @ingroup Eolian
1153 */ 1129 */
1154EAPI Eina_Iterator *eolian_unit_structs_get(const Eolian_Unit *unit); 1130EOLIAN_API Eina_Iterator *eolian_unit_structs_get(const Eolian_Unit *unit);
1155 1131
1156/* 1132/*
1157 * @brief Get an iterator to all enums in the Eolian database. 1133 * @brief Get an iterator to all enums in the Eolian database.
@@ -1162,7 +1138,7 @@ EAPI Eina_Iterator *eolian_unit_structs_get(const Eolian_Unit *unit);
1162 * 1138 *
1163 * @ingroup Eolian 1139 * @ingroup Eolian
1164 */ 1140 */
1165EAPI Eina_Iterator *eolian_unit_enums_get(const Eolian_Unit *unit); 1141EOLIAN_API Eina_Iterator *eolian_unit_enums_get(const Eolian_Unit *unit);
1166 1142
1167/* 1143/*
1168 * @brief A helper function to get an object in a state by name. 1144 * @brief A helper function to get an object in a state by name.
@@ -1189,7 +1165,7 @@ eolian_state_object_by_name_get(const Eolian_State *state, const char *name)
1189 * 1165 *
1190 * @ingroup Eolian 1166 * @ingroup Eolian
1191 */ 1167 */
1192EAPI Eina_Iterator *eolian_state_objects_by_file_get(const Eolian_State *state, const char *file_name); 1168EOLIAN_API Eina_Iterator *eolian_state_objects_by_file_get(const Eolian_State *state, const char *file_name);
1193 1169
1194/* 1170/*
1195 * @brief A helper function to get all objects in a state. 1171 * @brief A helper function to get all objects in a state.
@@ -1225,7 +1201,7 @@ eolian_state_class_by_name_get(const Eolian_State *state, const char *class_name
1225 * 1201 *
1226 * @ingroup Eolian 1202 * @ingroup Eolian
1227 */ 1203 */
1228EAPI const Eolian_Class *eolian_state_class_by_file_get(const Eolian_State *state, const char *file_name); 1204EOLIAN_API const Eolian_Class *eolian_state_class_by_file_get(const Eolian_State *state, const char *file_name);
1229 1205
1230/* 1206/*
1231 * @brief A helper function to get all classes in a state. 1207 * @brief A helper function to get all classes in a state.
@@ -1277,7 +1253,7 @@ eolian_state_error_by_name_get(const Eolian_State *state, const char *name)
1277 * 1253 *
1278 * @ingroup Eolian 1254 * @ingroup Eolian
1279 */ 1255 */
1280EAPI Eina_Iterator *eolian_state_constants_by_file_get(const Eolian_State *state, const char *file_name); 1256EOLIAN_API Eina_Iterator *eolian_state_constants_by_file_get(const Eolian_State *state, const char *file_name);
1281 1257
1282/* 1258/*
1283 * @brief Get an iterator to all error declarations contained in a file. 1259 * @brief Get an iterator to all error declarations contained in a file.
@@ -1290,7 +1266,7 @@ EAPI Eina_Iterator *eolian_state_constants_by_file_get(const Eolian_State *state
1290 * 1266 *
1291 * @ingroup Eolian 1267 * @ingroup Eolian
1292 */ 1268 */
1293EAPI Eina_Iterator *eolian_state_errors_by_file_get(const Eolian_State *state, const char *file_name); 1269EOLIAN_API Eina_Iterator *eolian_state_errors_by_file_get(const Eolian_State *state, const char *file_name);
1294 1270
1295/* 1271/*
1296 * @brief A helper function to get all constants in a state. 1272 * @brief A helper function to get all constants in a state.
@@ -1367,7 +1343,7 @@ eolian_state_enum_by_name_get(const Eolian_State *state, const char *name)
1367 * 1343 *
1368 * @ingroup Eolian 1344 * @ingroup Eolian
1369 */ 1345 */
1370EAPI Eina_Iterator *eolian_state_aliases_by_file_get(const Eolian_State *state, const char *file_name); 1346EOLIAN_API Eina_Iterator *eolian_state_aliases_by_file_get(const Eolian_State *state, const char *file_name);
1371 1347
1372/* 1348/*
1373 * @brief Get an iterator to all named structs contained in a file. 1349 * @brief Get an iterator to all named structs contained in a file.
@@ -1379,7 +1355,7 @@ EAPI Eina_Iterator *eolian_state_aliases_by_file_get(const Eolian_State *state,
1379 * 1355 *
1380 * @ingroup Eolian 1356 * @ingroup Eolian
1381 */ 1357 */
1382EAPI Eina_Iterator *eolian_state_structs_by_file_get(const Eolian_State *state, const char *file_name); 1358EOLIAN_API Eina_Iterator *eolian_state_structs_by_file_get(const Eolian_State *state, const char *file_name);
1383 1359
1384/* 1360/*
1385 * @brief Get an iterator to all enums contained in a file. 1361 * @brief Get an iterator to all enums contained in a file.
@@ -1391,7 +1367,7 @@ EAPI Eina_Iterator *eolian_state_structs_by_file_get(const Eolian_State *state,
1391 * 1367 *
1392 * @ingroup Eolian 1368 * @ingroup Eolian
1393 */ 1369 */
1394EAPI Eina_Iterator *eolian_state_enums_by_file_get(const Eolian_State *state, const char *file_name); 1370EOLIAN_API Eina_Iterator *eolian_state_enums_by_file_get(const Eolian_State *state, const char *file_name);
1395 1371
1396/* 1372/*
1397 * @brief A helper function to get all aliases in a state. 1373 * @brief A helper function to get all aliases in a state.
@@ -1492,7 +1468,7 @@ eolian_class_namespaces_get(const Eolian_Class *klass)
1492 * 1468 *
1493 * @ingroup Eolian 1469 * @ingroup Eolian
1494 */ 1470 */
1495EAPI Eolian_Class_Type eolian_class_type_get(const Eolian_Class *klass); 1471EOLIAN_API Eolian_Class_Type eolian_class_type_get(const Eolian_Class *klass);
1496 1472
1497/* 1473/*
1498 * @brief Returns the documentation of a class. 1474 * @brief Returns the documentation of a class.
@@ -1502,7 +1478,7 @@ EAPI Eolian_Class_Type eolian_class_type_get(const Eolian_Class *klass);
1502 * 1478 *
1503 * @ingroup Eolian 1479 * @ingroup Eolian
1504 */ 1480 */
1505EAPI const Eolian_Documentation *eolian_class_documentation_get(const Eolian_Class *klass); 1481EOLIAN_API const Eolian_Documentation *eolian_class_documentation_get(const Eolian_Class *klass);
1506 1482
1507/* 1483/*
1508 * @brief Returns the C function prefix of a class 1484 * @brief Returns the C function prefix of a class
@@ -1512,7 +1488,7 @@ EAPI const Eolian_Documentation *eolian_class_documentation_get(const Eolian_Cla
1512 * 1488 *
1513 * @ingroup Eolian 1489 * @ingroup Eolian
1514 */ 1490 */
1515EAPI const char *eolian_class_c_prefix_get(const Eolian_Class *klass); 1491EOLIAN_API const char *eolian_class_c_prefix_get(const Eolian_Class *klass);
1516 1492
1517/* 1493/*
1518 * @brief Returns the C event prefix of a class 1494 * @brief Returns the C event prefix of a class
@@ -1522,7 +1498,7 @@ EAPI const char *eolian_class_c_prefix_get(const Eolian_Class *klass);
1522 * 1498 *
1523 * @ingroup Eolian 1499 * @ingroup Eolian
1524 */ 1500 */
1525EAPI const char *eolian_class_event_c_prefix_get(const Eolian_Class *klass); 1501EOLIAN_API const char *eolian_class_event_c_prefix_get(const Eolian_Class *klass);
1526 1502
1527/* 1503/*
1528 * @brief Returns the data type of a class 1504 * @brief Returns the data type of a class
@@ -1532,7 +1508,7 @@ EAPI const char *eolian_class_event_c_prefix_get(const Eolian_Class *klass);
1532 * 1508 *
1533 * @ingroup Eolian 1509 * @ingroup Eolian
1534 */ 1510 */
1535EAPI const char *eolian_class_data_type_get(const Eolian_Class *klass); 1511EOLIAN_API const char *eolian_class_data_type_get(const Eolian_Class *klass);
1536 1512
1537/* 1513/*
1538 * @brief Get the parent class of a class 1514 * @brief Get the parent class of a class
@@ -1548,7 +1524,7 @@ EAPI const char *eolian_class_data_type_get(const Eolian_Class *klass);
1548 * 1524 *
1549 * @ingroup Eolian 1525 * @ingroup Eolian
1550 */ 1526 */
1551EAPI const Eolian_Class *eolian_class_parent_get(const Eolian_Class *klass); 1527EOLIAN_API const Eolian_Class *eolian_class_parent_get(const Eolian_Class *klass);
1552 1528
1553/* 1529/*
1554 * @brief Returns an iterator to the required classes of this mixin 1530 * @brief Returns an iterator to the required classes of this mixin
@@ -1561,7 +1537,7 @@ EAPI const Eolian_Class *eolian_class_parent_get(const Eolian_Class *klass);
1561 * 1537 *
1562 * @ingroup Eolian 1538 * @ingroup Eolian
1563 */ 1539 */
1564EAPI Eina_Iterator *eolian_class_requires_get(const Eolian_Class *klass); 1540EOLIAN_API Eina_Iterator *eolian_class_requires_get(const Eolian_Class *klass);
1565 1541
1566/* 1542/*
1567 * @brief Returns an iterator to the class extensions 1543 * @brief Returns an iterator to the class extensions
@@ -1577,7 +1553,7 @@ EAPI Eina_Iterator *eolian_class_requires_get(const Eolian_Class *klass);
1577 * 1553 *
1578 * @ingroup Eolian 1554 * @ingroup Eolian
1579 */ 1555 */
1580EAPI Eina_Iterator *eolian_class_extensions_get(const Eolian_Class *klass); 1556EOLIAN_API Eina_Iterator *eolian_class_extensions_get(const Eolian_Class *klass);
1581 1557
1582/* 1558/*
1583 * @brief Returns an iterator to functions of a class. 1559 * @brief Returns an iterator to functions of a class.
@@ -1590,7 +1566,7 @@ EAPI Eina_Iterator *eolian_class_extensions_get(const Eolian_Class *klass);
1590 * 1566 *
1591 * @ingroup Eolian 1567 * @ingroup Eolian
1592 */ 1568 */
1593EAPI Eina_Iterator *eolian_class_functions_get(const Eolian_Class *klass, Eolian_Function_Type func_type); 1569EOLIAN_API Eina_Iterator *eolian_class_functions_get(const Eolian_Class *klass, Eolian_Function_Type func_type);
1594 1570
1595/* 1571/*
1596 * @brief Returns the type of a function 1572 * @brief Returns the type of a function
@@ -1600,7 +1576,7 @@ EAPI Eina_Iterator *eolian_class_functions_get(const Eolian_Class *klass, Eolian
1600 * 1576 *
1601 * @ingroup Eolian 1577 * @ingroup Eolian
1602 */ 1578 */
1603EAPI Eolian_Function_Type eolian_function_type_get(const Eolian_Function *function_id); 1579EOLIAN_API Eolian_Function_Type eolian_function_type_get(const Eolian_Function *function_id);
1604 1580
1605/* 1581/*
1606 * @brief Returns the scope of a function 1582 * @brief Returns the scope of a function
@@ -1613,7 +1589,7 @@ EAPI Eolian_Function_Type eolian_function_type_get(const Eolian_Function *functi
1613 * 1589 *
1614 * @ingroup Eolian 1590 * @ingroup Eolian
1615 */ 1591 */
1616EAPI Eolian_Object_Scope eolian_function_scope_get(const Eolian_Function *function_id, Eolian_Function_Type ftype); 1592EOLIAN_API Eolian_Object_Scope eolian_function_scope_get(const Eolian_Function *function_id, Eolian_Function_Type ftype);
1617 1593
1618/* 1594/*
1619 * @brief A helper function to get the name of a function. 1595 * @brief A helper function to get the name of a function.
@@ -1646,7 +1622,7 @@ eolian_function_name_get(const Eolian_Function *fid)
1646 * 1622 *
1647 * @ingroup Eolian 1623 * @ingroup Eolian
1648 */ 1624 */
1649EAPI Eina_Stringshare *eolian_function_full_c_name_get(const Eolian_Function *function_id, Eolian_Function_Type ftype); 1625EOLIAN_API Eina_Stringshare *eolian_function_full_c_name_get(const Eolian_Function *function_id, Eolian_Function_Type ftype);
1650 1626
1651/* 1627/*
1652 * @brief Get a function in a class by its name and type 1628 * @brief Get a function in a class by its name and type
@@ -1662,7 +1638,7 @@ EAPI Eina_Stringshare *eolian_function_full_c_name_get(const Eolian_Function *fu
1662 * 1638 *
1663 * @ingroup Eolian 1639 * @ingroup Eolian
1664 */ 1640 */
1665EAPI const Eolian_Function *eolian_class_function_by_name_get(const Eolian_Class *klass, const char *func_name, Eolian_Function_Type f_type); 1641EOLIAN_API const Eolian_Function *eolian_class_function_by_name_get(const Eolian_Class *klass, const char *func_name, Eolian_Function_Type f_type);
1666 1642
1667/* 1643/*
1668 * @brief Returns the implement for a function. 1644 * @brief Returns the implement for a function.
@@ -1672,7 +1648,7 @@ EAPI const Eolian_Function *eolian_class_function_by_name_get(const Eolian_Class
1672 * 1648 *
1673 * @ingroup Eolian 1649 * @ingroup Eolian
1674 */ 1650 */
1675EAPI const Eolian_Implement *eolian_function_implement_get(const Eolian_Function *function_id); 1651EOLIAN_API const Eolian_Implement *eolian_function_implement_get(const Eolian_Function *function_id);
1676 1652
1677/* 1653/*
1678 * @brief Get whether a function is a static method/property. 1654 * @brief Get whether a function is a static method/property.
@@ -1682,7 +1658,7 @@ EAPI const Eolian_Implement *eolian_function_implement_get(const Eolian_Function
1682 * 1658 *
1683 * @ingroup Eolian 1659 * @ingroup Eolian
1684 */ 1660 */
1685EAPI Eina_Bool eolian_function_is_static(const Eolian_Function *function_id); 1661EOLIAN_API Eina_Bool eolian_function_is_static(const Eolian_Function *function_id);
1686 1662
1687/* 1663/*
1688 * @brief Get whether a function is beta. 1664 * @brief Get whether a function is beta.
@@ -1706,7 +1682,7 @@ eolian_function_is_beta(const Eolian_Function *function_id)
1706 * 1682 *
1707 * @ingroup Eolian 1683 * @ingroup Eolian
1708 */ 1684 */
1709EAPI Eina_Bool eolian_function_is_constructor(const Eolian_Function *function_id, const Eolian_Class *klass); 1685EOLIAN_API Eina_Bool eolian_function_is_constructor(const Eolian_Function *function_id, const Eolian_Class *klass);
1710 1686
1711/* 1687/*
1712 * @brief Returns an iterator to the parameter handles for a method/ctor/dtor. 1688 * @brief Returns an iterator to the parameter handles for a method/ctor/dtor.
@@ -1716,7 +1692,7 @@ EAPI Eina_Bool eolian_function_is_constructor(const Eolian_Function *function_id
1716 * 1692 *
1717 * @ingroup Eolian 1693 * @ingroup Eolian
1718 */ 1694 */
1719EAPI Eina_Iterator *eolian_function_parameters_get(const Eolian_Function *function_id); 1695EOLIAN_API Eina_Iterator *eolian_function_parameters_get(const Eolian_Function *function_id);
1720 1696
1721/* 1697/*
1722 * @brief Returns an iterator to the keys params of a given function. 1698 * @brief Returns an iterator to the keys params of a given function.
@@ -1729,7 +1705,7 @@ EAPI Eina_Iterator *eolian_function_parameters_get(const Eolian_Function *functi
1729 * 1705 *
1730 * @ingroup Eolian 1706 * @ingroup Eolian
1731 */ 1707 */
1732EAPI Eina_Iterator *eolian_property_keys_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype); 1708EOLIAN_API Eina_Iterator *eolian_property_keys_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
1733 1709
1734/* 1710/*
1735 * @brief Returns an iterator to the values params of a given function. 1711 * @brief Returns an iterator to the values params of a given function.
@@ -1742,7 +1718,7 @@ EAPI Eina_Iterator *eolian_property_keys_get(const Eolian_Function *foo_id, Eoli
1742 * 1718 *
1743 * @ingroup Eolian 1719 * @ingroup Eolian
1744 */ 1720 */
1745EAPI Eina_Iterator *eolian_property_values_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype); 1721EOLIAN_API Eina_Iterator *eolian_property_values_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
1746 1722
1747/* 1723/*
1748 * @brief Get direction of a parameter 1724 * @brief Get direction of a parameter
@@ -1752,7 +1728,7 @@ EAPI Eina_Iterator *eolian_property_values_get(const Eolian_Function *foo_id, Eo
1752 * 1728 *
1753 * @ingroup Eolian 1729 * @ingroup Eolian
1754 */ 1730 */
1755EAPI Eolian_Parameter_Direction eolian_parameter_direction_get(const Eolian_Function_Parameter *param); 1731EOLIAN_API Eolian_Parameter_Direction eolian_parameter_direction_get(const Eolian_Function_Parameter *param);
1756 1732
1757/* 1733/*
1758 * @brief Get type of a parameter 1734 * @brief Get type of a parameter
@@ -1762,7 +1738,7 @@ EAPI Eolian_Parameter_Direction eolian_parameter_direction_get(const Eolian_Func
1762 * 1738 *
1763 * @ingroup Eolian 1739 * @ingroup Eolian
1764 */ 1740 */
1765EAPI const Eolian_Type *eolian_parameter_type_get(const Eolian_Function_Parameter *param); 1741EOLIAN_API const Eolian_Type *eolian_parameter_type_get(const Eolian_Function_Parameter *param);
1766 1742
1767/* 1743/*
1768 * @brief Get the default value of a parameter 1744 * @brief Get the default value of a parameter
@@ -1772,7 +1748,7 @@ EAPI const Eolian_Type *eolian_parameter_type_get(const Eolian_Function_Paramete
1772 * 1748 *
1773 * @ingroup Eolian 1749 * @ingroup Eolian
1774 */ 1750 */
1775EAPI const Eolian_Expression *eolian_parameter_default_value_get(const Eolian_Function_Parameter *param); 1751EOLIAN_API const Eolian_Expression *eolian_parameter_default_value_get(const Eolian_Function_Parameter *param);
1776 1752
1777/* 1753/*
1778 * @brief A helper function to get the name of a function parameter. 1754 * @brief A helper function to get the name of a function parameter.
@@ -1795,7 +1771,7 @@ eolian_parameter_name_get(const Eolian_Function_Parameter *param)
1795 * 1771 *
1796 * @ingroup Eolian 1772 * @ingroup Eolian
1797 */ 1773 */
1798EAPI const Eolian_Documentation *eolian_parameter_documentation_get(const Eolian_Function_Parameter *param); 1774EOLIAN_API const Eolian_Documentation *eolian_parameter_documentation_get(const Eolian_Function_Parameter *param);
1799 1775
1800/* 1776/*
1801 * @brief Indicates if a parameter is optional. 1777 * @brief Indicates if a parameter is optional.
@@ -1805,7 +1781,7 @@ EAPI const Eolian_Documentation *eolian_parameter_documentation_get(const Eolian
1805 * 1781 *
1806 * @ingroup Eolian 1782 * @ingroup Eolian
1807 */ 1783 */
1808EAPI Eina_Bool eolian_parameter_is_optional(const Eolian_Function_Parameter *param_desc); 1784EOLIAN_API Eina_Bool eolian_parameter_is_optional(const Eolian_Function_Parameter *param_desc);
1809 1785
1810/* 1786/*
1811 * @brief Get whether a parameter is by reference. 1787 * @brief Get whether a parameter is by reference.
@@ -1815,7 +1791,7 @@ EAPI Eina_Bool eolian_parameter_is_optional(const Eolian_Function_Parameter *par
1815 * 1791 *
1816 * @ingroup Eolian 1792 * @ingroup Eolian
1817 */ 1793 */
1818EAPI Eina_Bool eolian_parameter_is_by_ref(const Eolian_Function_Parameter *param_desc); 1794EOLIAN_API Eina_Bool eolian_parameter_is_by_ref(const Eolian_Function_Parameter *param_desc);
1819 1795
1820/* 1796/*
1821 * @brief Get whether a parameter is moved into the callee. 1797 * @brief Get whether a parameter is moved into the callee.
@@ -1825,7 +1801,7 @@ EAPI Eina_Bool eolian_parameter_is_by_ref(const Eolian_Function_Parameter *param
1825 * 1801 *
1826 * @ingroup Eolian 1802 * @ingroup Eolian
1827 */ 1803 */
1828EAPI Eina_Bool eolian_parameter_is_move(const Eolian_Function_Parameter *param_desc); 1804EOLIAN_API Eina_Bool eolian_parameter_is_move(const Eolian_Function_Parameter *param_desc);
1829 1805
1830/* 1806/*
1831 * @brief Get the full C type name of the given parameter. 1807 * @brief Get the full C type name of the given parameter.
@@ -1842,7 +1818,7 @@ EAPI Eina_Bool eolian_parameter_is_move(const Eolian_Function_Parameter *param_d
1842 * 1818 *
1843 * @ingroup Eolian 1819 * @ingroup Eolian
1844 */ 1820 */
1845EAPI Eina_Stringshare *eolian_parameter_c_type_get(const Eolian_Function_Parameter *param_desc, Eina_Bool as_return); 1821EOLIAN_API Eina_Stringshare *eolian_parameter_c_type_get(const Eolian_Function_Parameter *param_desc, Eina_Bool as_return);
1846 1822
1847/* 1823/*
1848 * @brief Get the return type of a function. 1824 * @brief Get the return type of a function.
@@ -1858,7 +1834,7 @@ EAPI Eina_Stringshare *eolian_parameter_c_type_get(const Eolian_Function_Paramet
1858 * 1834 *
1859 * @ingroup Eolian 1835 * @ingroup Eolian
1860 */ 1836 */
1861EAPI const Eolian_Type *eolian_function_return_type_get(const Eolian_Function *function_id, Eolian_Function_Type ftype); 1837EOLIAN_API const Eolian_Type *eolian_function_return_type_get(const Eolian_Function *function_id, Eolian_Function_Type ftype);
1862 1838
1863/* 1839/*
1864 * @brief Get the return default value of a function. 1840 * @brief Get the return default value of a function.
@@ -1875,7 +1851,7 @@ EAPI const Eolian_Type *eolian_function_return_type_get(const Eolian_Function *f
1875 * 1851 *
1876 * @ingroup Eolian 1852 * @ingroup Eolian
1877 */ 1853 */
1878EAPI const Eolian_Expression * 1854EOLIAN_API const Eolian_Expression *
1879eolian_function_return_default_value_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype); 1855eolian_function_return_default_value_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
1880 1856
1881/* 1857/*
@@ -1892,7 +1868,7 @@ eolian_function_return_default_value_get(const Eolian_Function *foo_id, Eolian_F
1892 * 1868 *
1893 * @ingroup Eolian 1869 * @ingroup Eolian
1894 */ 1870 */
1895EAPI const Eolian_Documentation *eolian_function_return_documentation_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype); 1871EOLIAN_API const Eolian_Documentation *eolian_function_return_documentation_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
1896 1872
1897/* 1873/*
1898 * @brief Indicates if a function return should allow being unused. 1874 * @brief Indicates if a function return should allow being unused.
@@ -1908,7 +1884,7 @@ EAPI const Eolian_Documentation *eolian_function_return_documentation_get(const
1908 * 1884 *
1909 * @ingroup Eolian 1885 * @ingroup Eolian
1910 */ 1886 */
1911EAPI Eina_Bool eolian_function_return_allow_unused(const Eolian_Function *foo_id, Eolian_Function_Type ftype); 1887EOLIAN_API Eina_Bool eolian_function_return_allow_unused(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
1912 1888
1913/* 1889/*
1914 * @brief Get whether a parameter is by reference. 1890 * @brief Get whether a parameter is by reference.
@@ -1924,7 +1900,7 @@ EAPI Eina_Bool eolian_function_return_allow_unused(const Eolian_Function *foo_id
1924 * 1900 *
1925 * @ingroup Eolian 1901 * @ingroup Eolian
1926 */ 1902 */
1927EAPI Eina_Bool eolian_function_return_is_by_ref(const Eolian_Function *foo_id, Eolian_Function_Type ftype); 1903EOLIAN_API Eina_Bool eolian_function_return_is_by_ref(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
1928 1904
1929/* 1905/*
1930 * @brief Get whether a parameter is moved into the callee. 1906 * @brief Get whether a parameter is moved into the callee.
@@ -1940,7 +1916,7 @@ EAPI Eina_Bool eolian_function_return_is_by_ref(const Eolian_Function *foo_id, E
1940 * 1916 *
1941 * @ingroup Eolian 1917 * @ingroup Eolian
1942 */ 1918 */
1943EAPI Eina_Bool eolian_function_return_is_move(const Eolian_Function *foo_id, Eolian_Function_Type ftype); 1919EOLIAN_API Eina_Bool eolian_function_return_is_move(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
1944 1920
1945/* 1921/*
1946 * @brief Get the full C type name of the return value. 1922 * @brief Get the full C type name of the return value.
@@ -1955,7 +1931,7 @@ EAPI Eina_Bool eolian_function_return_is_move(const Eolian_Function *foo_id, Eol
1955 * 1931 *
1956 * @ingroup Eolian 1932 * @ingroup Eolian
1957 */ 1933 */
1958EAPI Eina_Stringshare *eolian_function_return_c_type_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype); 1934EOLIAN_API Eina_Stringshare *eolian_function_return_c_type_get(const Eolian_Function *foo_id, Eolian_Function_Type ftype);
1959 1935
1960/* 1936/*
1961 * @brief Indicates if a function object is const. 1937 * @brief Indicates if a function object is const.
@@ -1965,7 +1941,7 @@ EAPI Eina_Stringshare *eolian_function_return_c_type_get(const Eolian_Function *
1965 * 1941 *
1966 * @ingroup Eolian 1942 * @ingroup Eolian
1967 */ 1943 */
1968EAPI Eina_Bool eolian_function_object_is_const(const Eolian_Function *function_id); 1944EOLIAN_API Eina_Bool eolian_function_object_is_const(const Eolian_Function *function_id);
1969 1945
1970/* 1946/*
1971 * @brief Return the Eolian class associated to the function. 1947 * @brief Return the Eolian class associated to the function.
@@ -1975,7 +1951,7 @@ EAPI Eina_Bool eolian_function_object_is_const(const Eolian_Function *function_i
1975 * 1951 *
1976 * @ingroup Eolian 1952 * @ingroup Eolian
1977 */ 1953 */
1978EAPI const Eolian_Class *eolian_function_class_get(const Eolian_Function *function_id); 1954EOLIAN_API const Eolian_Class *eolian_function_class_get(const Eolian_Function *function_id);
1979 1955
1980/* 1956/*
1981 * @brief A helper function to get the full name of an implement. 1957 * @brief A helper function to get the full name of an implement.
@@ -2004,7 +1980,7 @@ eolian_implement_name_get(const Eolian_Implement *impl)
2004 * 1980 *
2005 * @ingroup Eolian 1981 * @ingroup Eolian
2006 */ 1982 */
2007EAPI const Eolian_Class *eolian_implement_class_get(const Eolian_Implement *impl); 1983EOLIAN_API const Eolian_Class *eolian_implement_class_get(const Eolian_Implement *impl);
2008 1984
2009/* 1985/*
2010 * @brief Get the implementing class of an overriding function (implement). 1986 * @brief Get the implementing class of an overriding function (implement).
@@ -2020,7 +1996,7 @@ EAPI const Eolian_Class *eolian_implement_class_get(const Eolian_Implement *impl
2020 * 1996 *
2021 * @ingroup Eolian 1997 * @ingroup Eolian
2022 */ 1998 */
2023EAPI const Eolian_Class *eolian_implement_implementing_class_get(const Eolian_Implement *impl); 1999EOLIAN_API const Eolian_Class *eolian_implement_implementing_class_get(const Eolian_Implement *impl);
2024 2000
2025/* 2001/*
2026 * @brief Get the function of an implement. 2002 * @brief Get the function of an implement.
@@ -2031,7 +2007,7 @@ EAPI const Eolian_Class *eolian_implement_implementing_class_get(const Eolian_Im
2031 * 2007 *
2032 * @ingroup Eolian 2008 * @ingroup Eolian
2033 */ 2009 */
2034EAPI const Eolian_Function *eolian_implement_function_get(const Eolian_Implement *impl, Eolian_Function_Type *func_type); 2010EOLIAN_API const Eolian_Function *eolian_implement_function_get(const Eolian_Implement *impl, Eolian_Function_Type *func_type);
2035 2011
2036/* 2012/*
2037 * @brief Returns a documentation for an implement. 2013 * @brief Returns a documentation for an implement.
@@ -2044,7 +2020,7 @@ EAPI const Eolian_Function *eolian_implement_function_get(const Eolian_Implement
2044 * 2020 *
2045 * @ingroup Eolian 2021 * @ingroup Eolian
2046 */ 2022 */
2047EAPI const Eolian_Documentation *eolian_implement_documentation_get(const Eolian_Implement *impl, Eolian_Function_Type f_type); 2023EOLIAN_API const Eolian_Documentation *eolian_implement_documentation_get(const Eolian_Implement *impl, Eolian_Function_Type f_type);
2048 2024
2049/* 2025/*
2050 * @brief Get whether an implement is tagged with @auto. 2026 * @brief Get whether an implement is tagged with @auto.
@@ -2057,7 +2033,7 @@ EAPI const Eolian_Documentation *eolian_implement_documentation_get(const Eolian
2057 * 2033 *
2058 * @ingroup Eolian 2034 * @ingroup Eolian
2059 */ 2035 */
2060EAPI Eina_Bool eolian_implement_is_auto(const Eolian_Implement *impl, Eolian_Function_Type f_type); 2036EOLIAN_API Eina_Bool eolian_implement_is_auto(const Eolian_Implement *impl, Eolian_Function_Type f_type);
2061 2037
2062/* 2038/*
2063 * @brief Get whether an implement is tagged with @empty. 2039 * @brief Get whether an implement is tagged with @empty.
@@ -2070,7 +2046,7 @@ EAPI Eina_Bool eolian_implement_is_auto(const Eolian_Implement *impl, Eolian_Fun
2070 * 2046 *
2071 * @ingroup Eolian 2047 * @ingroup Eolian
2072 */ 2048 */
2073EAPI Eina_Bool eolian_implement_is_empty(const Eolian_Implement *impl, Eolian_Function_Type f_type); 2049EOLIAN_API Eina_Bool eolian_implement_is_empty(const Eolian_Implement *impl, Eolian_Function_Type f_type);
2074 2050
2075/* 2051/*
2076 * @brief Get whether an implement is pure virtual. 2052 * @brief Get whether an implement is pure virtual.
@@ -2083,7 +2059,7 @@ EAPI Eina_Bool eolian_implement_is_empty(const Eolian_Implement *impl, Eolian_Fu
2083 * 2059 *
2084 * @ingroup Eolian 2060 * @ingroup Eolian
2085 */ 2061 */
2086EAPI Eina_Bool eolian_implement_is_pure_virtual(const Eolian_Implement *impl, Eolian_Function_Type f_type); 2062EOLIAN_API Eina_Bool eolian_implement_is_pure_virtual(const Eolian_Implement *impl, Eolian_Function_Type f_type);
2087 2063
2088/* 2064/*
2089 * @brief Get whether an implement references a property getter. 2065 * @brief Get whether an implement references a property getter.
@@ -2093,7 +2069,7 @@ EAPI Eina_Bool eolian_implement_is_pure_virtual(const Eolian_Implement *impl, Eo
2093 * 2069 *
2094 * @ingroup Eolian 2070 * @ingroup Eolian
2095 */ 2071 */
2096EAPI Eina_Bool eolian_implement_is_prop_get(const Eolian_Implement *impl); 2072EOLIAN_API Eina_Bool eolian_implement_is_prop_get(const Eolian_Implement *impl);
2097 2073
2098/* 2074/*
2099 * @brief Get whether an implement references a property setter. 2075 * @brief Get whether an implement references a property setter.
@@ -2103,7 +2079,7 @@ EAPI Eina_Bool eolian_implement_is_prop_get(const Eolian_Implement *impl);
2103 * 2079 *
2104 * @ingroup Eolian 2080 * @ingroup Eolian
2105 */ 2081 */
2106EAPI Eina_Bool eolian_implement_is_prop_set(const Eolian_Implement *impl); 2082EOLIAN_API Eina_Bool eolian_implement_is_prop_set(const Eolian_Implement *impl);
2107 2083
2108/* 2084/*
2109 * @brief Get an iterator to implements of a class. 2085 * @brief Get an iterator to implements of a class.
@@ -2118,7 +2094,7 @@ EAPI Eina_Bool eolian_implement_is_prop_set(const Eolian_Implement *impl);
2118 * 2094 *
2119 * @ingroup Eolian 2095 * @ingroup Eolian
2120 */ 2096 */
2121EAPI Eina_Iterator *eolian_class_implements_get(const Eolian_Class *klass); 2097EOLIAN_API Eina_Iterator *eolian_class_implements_get(const Eolian_Class *klass);
2122 2098
2123/* 2099/*
2124 * @brief A helper function to get the full name of a constructor. 2100 * @brief A helper function to get the full name of a constructor.
@@ -2141,7 +2117,7 @@ eolian_constructor_name_get(const Eolian_Constructor *ctor)
2141 * 2117 *
2142 * @ingroup Eolian 2118 * @ingroup Eolian
2143 */ 2119 */
2144EAPI const Eolian_Class *eolian_constructor_class_get(const Eolian_Constructor *ctor); 2120EOLIAN_API const Eolian_Class *eolian_constructor_class_get(const Eolian_Constructor *ctor);
2145 2121
2146/* 2122/*
2147 * @brief Get the function of a constructing function. 2123 * @brief Get the function of a constructing function.
@@ -2151,7 +2127,7 @@ EAPI const Eolian_Class *eolian_constructor_class_get(const Eolian_Constructor *
2151 * 2127 *
2152 * @ingroup Eolian 2128 * @ingroup Eolian
2153 */ 2129 */
2154EAPI const Eolian_Function *eolian_constructor_function_get(const Eolian_Constructor *ctor); 2130EOLIAN_API const Eolian_Function *eolian_constructor_function_get(const Eolian_Constructor *ctor);
2155 2131
2156/* 2132/*
2157 * @brief Checks if a constructor is tagged optional. 2133 * @brief Checks if a constructor is tagged optional.
@@ -2161,7 +2137,7 @@ EAPI const Eolian_Function *eolian_constructor_function_get(const Eolian_Constru
2161 * 2137 *
2162 * @ingroup Eolian 2138 * @ingroup Eolian
2163 */ 2139 */
2164EAPI Eina_Bool eolian_constructor_is_optional(const Eolian_Constructor *ctor); 2140EOLIAN_API Eina_Bool eolian_constructor_is_optional(const Eolian_Constructor *ctor);
2165 2141
2166/* 2142/*
2167 * @brief Get an iterator to the constructing functions defined in a class. 2143 * @brief Get an iterator to the constructing functions defined in a class.
@@ -2171,7 +2147,7 @@ EAPI Eina_Bool eolian_constructor_is_optional(const Eolian_Constructor *ctor);
2171 * 2147 *
2172 * @ingroup Eolian 2148 * @ingroup Eolian
2173 */ 2149 */
2174EAPI Eina_Iterator *eolian_class_constructors_get(const Eolian_Class *klass); 2150EOLIAN_API Eina_Iterator *eolian_class_constructors_get(const Eolian_Class *klass);
2175 2151
2176/* 2152/*
2177 * @brief Get an iterator to the events defined in a class. 2153 * @brief Get an iterator to the events defined in a class.
@@ -2181,7 +2157,7 @@ EAPI Eina_Iterator *eolian_class_constructors_get(const Eolian_Class *klass);
2181 * 2157 *
2182 * @ingroup Eolian 2158 * @ingroup Eolian
2183 */ 2159 */
2184EAPI Eina_Iterator *eolian_class_events_get(const Eolian_Class *klass); 2160EOLIAN_API Eina_Iterator *eolian_class_events_get(const Eolian_Class *klass);
2185 2161
2186/* 2162/*
2187 * @brief A helper function to get the name of an event. 2163 * @brief A helper function to get the name of an event.
@@ -2204,7 +2180,7 @@ eolian_event_name_get(const Eolian_Event *event)
2204 * 2180 *
2205 * @ingroup Eolian 2181 * @ingroup Eolian
2206 */ 2182 */
2207EAPI const Eolian_Type *eolian_event_type_get(const Eolian_Event *event); 2183EOLIAN_API const Eolian_Type *eolian_event_type_get(const Eolian_Event *event);
2208 2184
2209/* 2185/*
2210 * @brief Get the class of an event. 2186 * @brief Get the class of an event.
@@ -2214,7 +2190,7 @@ EAPI const Eolian_Type *eolian_event_type_get(const Eolian_Event *event);
2214 * 2190 *
2215 * @ingroup Eolian 2191 * @ingroup Eolian
2216 */ 2192 */
2217EAPI const Eolian_Class *eolian_event_class_get(const Eolian_Event *event); 2193EOLIAN_API const Eolian_Class *eolian_event_class_get(const Eolian_Event *event);
2218 2194
2219/* 2195/*
2220 * @brief Get the documentation of an event. 2196 * @brief Get the documentation of an event.
@@ -2224,7 +2200,7 @@ EAPI const Eolian_Class *eolian_event_class_get(const Eolian_Event *event);
2224 * 2200 *
2225 * @ingroup Eolian 2201 * @ingroup Eolian
2226 */ 2202 */
2227EAPI const Eolian_Documentation *eolian_event_documentation_get(const Eolian_Event *event); 2203EOLIAN_API const Eolian_Documentation *eolian_event_documentation_get(const Eolian_Event *event);
2228 2204
2229/* 2205/*
2230 * @brief Returns the scope of an event 2206 * @brief Returns the scope of an event
@@ -2234,7 +2210,7 @@ EAPI const Eolian_Documentation *eolian_event_documentation_get(const Eolian_Eve
2234 * 2210 *
2235 * @ingroup Eolian 2211 * @ingroup Eolian
2236 */ 2212 */
2237EAPI Eolian_Object_Scope eolian_event_scope_get(const Eolian_Event *event); 2213EOLIAN_API Eolian_Object_Scope eolian_event_scope_get(const Eolian_Event *event);
2238 2214
2239/* 2215/*
2240 * @brief Get whether an event is beta. 2216 * @brief Get whether an event is beta.
@@ -2257,7 +2233,7 @@ eolian_event_is_beta(const Eolian_Event *event)
2257 * 2233 *
2258 * @ingroup Eolian 2234 * @ingroup Eolian
2259 */ 2235 */
2260EAPI Eina_Bool eolian_event_is_hot(const Eolian_Event *event); 2236EOLIAN_API Eina_Bool eolian_event_is_hot(const Eolian_Event *event);
2261 2237
2262/* 2238/*
2263 * @brief Get whether an event is a restartable event. 2239 * @brief Get whether an event is a restartable event.
@@ -2271,7 +2247,7 @@ EAPI Eina_Bool eolian_event_is_hot(const Eolian_Event *event);
2271 * 2247 *
2272 * @ingroup Eolian 2248 * @ingroup Eolian
2273 */ 2249 */
2274EAPI Eina_Bool eolian_event_is_restart(const Eolian_Event *event); 2250EOLIAN_API Eina_Bool eolian_event_is_restart(const Eolian_Event *event);
2275 2251
2276/* 2252/*
2277 * @brief Get an iterator to the parts defined in a class. 2253 * @brief Get an iterator to the parts defined in a class.
@@ -2281,7 +2257,7 @@ EAPI Eina_Bool eolian_event_is_restart(const Eolian_Event *event);
2281 * 2257 *
2282 * @ingroup Eolian 2258 * @ingroup Eolian
2283 */ 2259 */
2284EAPI Eina_Iterator *eolian_class_parts_get(const Eolian_Class *klass); 2260EOLIAN_API Eina_Iterator *eolian_class_parts_get(const Eolian_Class *klass);
2285 2261
2286/* 2262/*
2287 * @brief Returns the C macro name used to refer to an event 2263 * @brief Returns the C macro name used to refer to an event
@@ -2293,7 +2269,7 @@ EAPI Eina_Iterator *eolian_class_parts_get(const Eolian_Class *klass);
2293 * 2269 *
2294 * @ingroup Eolian 2270 * @ingroup Eolian
2295 */ 2271 */
2296EAPI Eina_Stringshare *eolian_event_c_macro_get(const Eolian_Event *event); 2272EOLIAN_API Eina_Stringshare *eolian_event_c_macro_get(const Eolian_Event *event);
2297 2273
2298/* 2274/*
2299 * @brief A helper function to get the name of a part. 2275 * @brief A helper function to get the name of a part.
@@ -2316,7 +2292,7 @@ eolian_part_name_get(const Eolian_Part *part)
2316 * 2292 *
2317 * @ingroup Eolian 2293 * @ingroup Eolian
2318 */ 2294 */
2319EAPI const Eolian_Class *eolian_part_class_get(const Eolian_Part *part); 2295EOLIAN_API const Eolian_Class *eolian_part_class_get(const Eolian_Part *part);
2320 2296
2321/* 2297/*
2322 * @brief Get the documentation of an part. 2298 * @brief Get the documentation of an part.
@@ -2326,7 +2302,7 @@ EAPI const Eolian_Class *eolian_part_class_get(const Eolian_Part *part);
2326 * 2302 *
2327 * @ingroup Eolian 2303 * @ingroup Eolian
2328 */ 2304 */
2329EAPI const Eolian_Documentation *eolian_part_documentation_get(const Eolian_Part *part); 2305EOLIAN_API const Eolian_Documentation *eolian_part_documentation_get(const Eolian_Part *part);
2330 2306
2331/* 2307/*
2332 * @brief Get whether a part is beta. 2308 * @brief Get whether a part is beta.
@@ -2350,7 +2326,7 @@ eolian_part_is_beta(const Eolian_Part *part)
2350 * 2326 *
2351 * @ingroup Eolian 2327 * @ingroup Eolian
2352 */ 2328 */
2353EAPI const Eolian_Event *eolian_class_event_by_name_get(const Eolian_Class *klass, const char *event_name); 2329EOLIAN_API const Eolian_Event *eolian_class_event_by_name_get(const Eolian_Class *klass, const char *event_name);
2354 2330
2355/* 2331/*
2356 * @brief Indicates if the class constructor has to invoke 2332 * @brief Indicates if the class constructor has to invoke
@@ -2361,7 +2337,7 @@ EAPI const Eolian_Event *eolian_class_event_by_name_get(const Eolian_Class *klas
2361 * 2337 *
2362 * @ingroup Eolian 2338 * @ingroup Eolian
2363 */ 2339 */
2364EAPI Eina_Bool eolian_class_ctor_enable_get(const Eolian_Class *klass); 2340EOLIAN_API Eina_Bool eolian_class_ctor_enable_get(const Eolian_Class *klass);
2365 2341
2366/* 2342/*
2367 * @brief Indicates if the class destructor has to invoke 2343 * @brief Indicates if the class destructor has to invoke
@@ -2372,7 +2348,7 @@ EAPI Eina_Bool eolian_class_ctor_enable_get(const Eolian_Class *klass);
2372 * 2348 *
2373 * @ingroup Eolian 2349 * @ingroup Eolian
2374 */ 2350 */
2375EAPI Eina_Bool eolian_class_dtor_enable_get(const Eolian_Class *klass); 2351EOLIAN_API Eina_Bool eolian_class_dtor_enable_get(const Eolian_Class *klass);
2376 2352
2377/* 2353/*
2378 * @brief Returns the name of the C function used to get the Efl_Class pointer. 2354 * @brief Returns the name of the C function used to get the Efl_Class pointer.
@@ -2386,7 +2362,7 @@ EAPI Eina_Bool eolian_class_dtor_enable_get(const Eolian_Class *klass);
2386 * 2362 *
2387 * @ingroup Eolian 2363 * @ingroup Eolian
2388 */ 2364 */
2389EAPI Eina_Stringshare *eolian_class_c_get_function_name_get(const Eolian_Class *klass); 2365EOLIAN_API Eina_Stringshare *eolian_class_c_get_function_name_get(const Eolian_Class *klass);
2390 2366
2391/* 2367/*
2392 * @brief Get the C macro of the class. 2368 * @brief Get the C macro of the class.
@@ -2402,7 +2378,7 @@ EAPI Eina_Stringshare *eolian_class_c_get_function_name_get(const Eolian_Class *
2402 * 2378 *
2403 * @ingroup Eolian 2379 * @ingroup Eolian
2404 */ 2380 */
2405EAPI Eina_Stringshare *eolian_class_c_macro_get(const Eolian_Class *klass); 2381EOLIAN_API Eina_Stringshare *eolian_class_c_macro_get(const Eolian_Class *klass);
2406 2382
2407/* 2383/*
2408 * @brief Get the C data type of the class. 2384 * @brief Get the C data type of the class.
@@ -2420,7 +2396,7 @@ EAPI Eina_Stringshare *eolian_class_c_macro_get(const Eolian_Class *klass);
2420 * 2396 *
2421 * @ingroup Eolian 2397 * @ingroup Eolian
2422 */ 2398 */
2423EAPI Eina_Stringshare *eolian_class_c_data_type_get(const Eolian_Class *klass); 2399EOLIAN_API Eina_Stringshare *eolian_class_c_data_type_get(const Eolian_Class *klass);
2424 2400
2425/* 2401/*
2426 * @brief Get whether a class is beta. 2402 * @brief Get whether a class is beta.
@@ -2443,7 +2419,7 @@ eolian_class_is_beta(const Eolian_Class *klass)
2443 * 2419 *
2444 * @ingroup Eolian 2420 * @ingroup Eolian
2445 */ 2421 */
2446EAPI Eolian_Typedecl_Type eolian_typedecl_type_get(const Eolian_Typedecl *tp); 2422EOLIAN_API Eolian_Typedecl_Type eolian_typedecl_type_get(const Eolian_Typedecl *tp);
2447 2423
2448/* 2424/*
2449 * @brief Get an iterator to all fields of a struct type. 2425 * @brief Get an iterator to all fields of a struct type.
@@ -2453,7 +2429,7 @@ EAPI Eolian_Typedecl_Type eolian_typedecl_type_get(const Eolian_Typedecl *tp);
2453 * 2429 *
2454 * @ingroup Eolian 2430 * @ingroup Eolian
2455 */ 2431 */
2456EAPI Eina_Iterator *eolian_typedecl_struct_fields_get(const Eolian_Typedecl *tp); 2432EOLIAN_API Eina_Iterator *eolian_typedecl_struct_fields_get(const Eolian_Typedecl *tp);
2457 2433
2458/* 2434/*
2459 * @brief Get a field of a struct type. 2435 * @brief Get a field of a struct type.
@@ -2465,7 +2441,7 @@ EAPI Eina_Iterator *eolian_typedecl_struct_fields_get(const Eolian_Typedecl *tp)
2465 * 2441 *
2466 * @ingroup Eolian 2442 * @ingroup Eolian
2467 */ 2443 */
2468EAPI const Eolian_Struct_Type_Field *eolian_typedecl_struct_field_get(const Eolian_Typedecl *tp, const char *field); 2444EOLIAN_API const Eolian_Struct_Type_Field *eolian_typedecl_struct_field_get(const Eolian_Typedecl *tp, const char *field);
2469 2445
2470/* 2446/*
2471 * @brief A helper function to get the name of a struct field. 2447 * @brief A helper function to get the name of a struct field.
@@ -2488,7 +2464,7 @@ eolian_typedecl_struct_field_name_get(const Eolian_Struct_Type_Field *field)
2488 * 2464 *
2489 * @ingroup Eolian 2465 * @ingroup Eolian
2490 */ 2466 */
2491EAPI const Eolian_Documentation *eolian_typedecl_struct_field_documentation_get(const Eolian_Struct_Type_Field *fl); 2467EOLIAN_API const Eolian_Documentation *eolian_typedecl_struct_field_documentation_get(const Eolian_Struct_Type_Field *fl);
2492 2468
2493/* 2469/*
2494 * @brief Get the type of a field of a struct type. 2470 * @brief Get the type of a field of a struct type.
@@ -2498,7 +2474,7 @@ EAPI const Eolian_Documentation *eolian_typedecl_struct_field_documentation_get(
2498 * 2474 *
2499 * @ingroup Eolian 2475 * @ingroup Eolian
2500 */ 2476 */
2501EAPI const Eolian_Type *eolian_typedecl_struct_field_type_get(const Eolian_Struct_Type_Field *fl); 2477EOLIAN_API const Eolian_Type *eolian_typedecl_struct_field_type_get(const Eolian_Struct_Type_Field *fl);
2502 2478
2503/* 2479/*
2504 * @brief Get whether a struct field is by reference. 2480 * @brief Get whether a struct field is by reference.
@@ -2508,7 +2484,7 @@ EAPI const Eolian_Type *eolian_typedecl_struct_field_type_get(const Eolian_Struc
2508 * 2484 *
2509 * @ingroup Eolian 2485 * @ingroup Eolian
2510 */ 2486 */
2511EAPI Eina_Bool eolian_typedecl_struct_field_is_by_ref(const Eolian_Struct_Type_Field *fl); 2487EOLIAN_API Eina_Bool eolian_typedecl_struct_field_is_by_ref(const Eolian_Struct_Type_Field *fl);
2512 2488
2513/* 2489/*
2514 * @brief Get whether a struct field is moved with the struct. 2490 * @brief Get whether a struct field is moved with the struct.
@@ -2518,7 +2494,7 @@ EAPI Eina_Bool eolian_typedecl_struct_field_is_by_ref(const Eolian_Struct_Type_F
2518 * 2494 *
2519 * @ingroup Eolian 2495 * @ingroup Eolian
2520 */ 2496 */
2521EAPI Eina_Bool eolian_typedecl_struct_field_is_move(const Eolian_Struct_Type_Field *fl); 2497EOLIAN_API Eina_Bool eolian_typedecl_struct_field_is_move(const Eolian_Struct_Type_Field *fl);
2522 2498
2523/* 2499/*
2524 * @brief Get the full C type name of the struct field. 2500 * @brief Get the full C type name of the struct field.
@@ -2532,7 +2508,7 @@ EAPI Eina_Bool eolian_typedecl_struct_field_is_move(const Eolian_Struct_Type_Fie
2532 * 2508 *
2533 * @ingroup Eolian 2509 * @ingroup Eolian
2534 */ 2510 */
2535EAPI Eina_Stringshare *eolian_typedecl_struct_field_c_type_get(const Eolian_Struct_Type_Field *fl); 2511EOLIAN_API Eina_Stringshare *eolian_typedecl_struct_field_c_type_get(const Eolian_Struct_Type_Field *fl);
2536 2512
2537/* 2513/*
2538 * @brief Get an iterator to all fields of an enum type. 2514 * @brief Get an iterator to all fields of an enum type.
@@ -2542,7 +2518,7 @@ EAPI Eina_Stringshare *eolian_typedecl_struct_field_c_type_get(const Eolian_Stru
2542 * 2518 *
2543 * @ingroup Eolian 2519 * @ingroup Eolian
2544 */ 2520 */
2545EAPI Eina_Iterator *eolian_typedecl_enum_fields_get(const Eolian_Typedecl *tp); 2521EOLIAN_API Eina_Iterator *eolian_typedecl_enum_fields_get(const Eolian_Typedecl *tp);
2546 2522
2547/* 2523/*
2548 * @brief Get a field of an enum type. 2524 * @brief Get a field of an enum type.
@@ -2557,7 +2533,7 @@ EAPI Eina_Iterator *eolian_typedecl_enum_fields_get(const Eolian_Typedecl *tp);
2557 * 2533 *
2558 * @ingroup Eolian 2534 * @ingroup Eolian
2559 */ 2535 */
2560EAPI const Eolian_Enum_Type_Field *eolian_typedecl_enum_field_get(const Eolian_Typedecl *tp, const char *field); 2536EOLIAN_API const Eolian_Enum_Type_Field *eolian_typedecl_enum_field_get(const Eolian_Typedecl *tp, const char *field);
2561 2537
2562/* 2538/*
2563 * @brief A helper function to get the name of an enum field. 2539 * @brief A helper function to get the name of an enum field.
@@ -2582,7 +2558,7 @@ eolian_typedecl_enum_field_name_get(const Eolian_Enum_Type_Field *field)
2582 * 2558 *
2583 * @ingroup Eolian 2559 * @ingroup Eolian
2584 */ 2560 */
2585EAPI Eina_Stringshare *eolian_typedecl_enum_field_c_constant_get(const Eolian_Enum_Type_Field *fl); 2561EOLIAN_API Eina_Stringshare *eolian_typedecl_enum_field_c_constant_get(const Eolian_Enum_Type_Field *fl);
2586 2562
2587/* 2563/*
2588 * @brief Get the documentation of a field of an enum type. 2564 * @brief Get the documentation of a field of an enum type.
@@ -2592,7 +2568,7 @@ EAPI Eina_Stringshare *eolian_typedecl_enum_field_c_constant_get(const Eolian_En
2592 * 2568 *
2593 * @ingroup Eolian 2569 * @ingroup Eolian
2594 */ 2570 */
2595EAPI const Eolian_Documentation *eolian_typedecl_enum_field_documentation_get(const Eolian_Enum_Type_Field *fl); 2571EOLIAN_API const Eolian_Documentation *eolian_typedecl_enum_field_documentation_get(const Eolian_Enum_Type_Field *fl);
2596 2572
2597/* 2573/*
2598 * @brief Get the value of a field of an enum type. 2574 * @brief Get the value of a field of an enum type.
@@ -2607,7 +2583,7 @@ EAPI const Eolian_Documentation *eolian_typedecl_enum_field_documentation_get(co
2607 * 2583 *
2608 * @ingroup Eolian 2584 * @ingroup Eolian
2609 */ 2585 */
2610EAPI const Eolian_Expression *eolian_typedecl_enum_field_value_get(const Eolian_Enum_Type_Field *fl, Eina_Bool force); 2586EOLIAN_API const Eolian_Expression *eolian_typedecl_enum_field_value_get(const Eolian_Enum_Type_Field *fl, Eina_Bool force);
2611 2587
2612/* 2588/*
2613 * @brief Get the documentation of a struct/alias type. 2589 * @brief Get the documentation of a struct/alias type.
@@ -2618,7 +2594,7 @@ EAPI const Eolian_Expression *eolian_typedecl_enum_field_value_get(const Eolian_
2618 * 2594 *
2619 * @ingroup Eolian 2595 * @ingroup Eolian
2620 */ 2596 */
2621EAPI const Eolian_Documentation *eolian_typedecl_documentation_get(const Eolian_Typedecl *tp); 2597EOLIAN_API const Eolian_Documentation *eolian_typedecl_documentation_get(const Eolian_Typedecl *tp);
2622 2598
2623/* 2599/*
2624 * @brief Get the base type of an alias declaration. 2600 * @brief Get the base type of an alias declaration.
@@ -2628,7 +2604,7 @@ EAPI const Eolian_Documentation *eolian_typedecl_documentation_get(const Eolian_
2628 * 2604 *
2629 * @ingroup Eolian 2605 * @ingroup Eolian
2630 */ 2606 */
2631EAPI const Eolian_Type *eolian_typedecl_base_type_get(const Eolian_Typedecl *tp); 2607EOLIAN_API const Eolian_Type *eolian_typedecl_base_type_get(const Eolian_Typedecl *tp);
2632 2608
2633/* 2609/*
2634 * @brief Get the lowest base type of an alias stack. 2610 * @brief Get the lowest base type of an alias stack.
@@ -2641,7 +2617,7 @@ EAPI const Eolian_Type *eolian_typedecl_base_type_get(const Eolian_Typedecl *tp)
2641 * 2617 *
2642 * @ingroup Eolian 2618 * @ingroup Eolian
2643 */ 2619 */
2644EAPI const Eolian_Type *eolian_typedecl_aliased_base_get(const Eolian_Typedecl *tp); 2620EOLIAN_API const Eolian_Type *eolian_typedecl_aliased_base_get(const Eolian_Typedecl *tp);
2645 2621
2646/* 2622/*
2647 * @brief Check if a struct or alias type declaration is extern. 2623 * @brief Check if a struct or alias type declaration is extern.
@@ -2651,7 +2627,7 @@ EAPI const Eolian_Type *eolian_typedecl_aliased_base_get(const Eolian_Typedecl *
2651 * 2627 *
2652 * @ingroup Eolian 2628 * @ingroup Eolian
2653 */ 2629 */
2654EAPI Eina_Bool eolian_typedecl_is_extern(const Eolian_Typedecl *tp); 2630EOLIAN_API Eina_Bool eolian_typedecl_is_extern(const Eolian_Typedecl *tp);
2655 2631
2656/* 2632/*
2657 * @brief Get whether a typedecl is beta. 2633 * @brief Get whether a typedecl is beta.
@@ -2678,7 +2654,7 @@ eolian_typedecl_is_beta(const Eolian_Typedecl *tp)
2678 * 2654 *
2679 * @ingroup Eolian 2655 * @ingroup Eolian
2680 */ 2656 */
2681EAPI Eina_Stringshare *eolian_typedecl_c_type_get(const Eolian_Typedecl *tp); 2657EOLIAN_API Eina_Stringshare *eolian_typedecl_c_type_get(const Eolian_Typedecl *tp);
2682 2658
2683/* 2659/*
2684 * @brief A helper function to get the full name of a typedecl. 2660 * @brief A helper function to get the full name of a typedecl.
@@ -2740,7 +2716,7 @@ eolian_typedecl_namespaces_get(const Eolian_Typedecl *tp)
2740 * 2716 *
2741 * @ingroup Eolian 2717 * @ingroup Eolian
2742 */ 2718 */
2743EAPI const char *eolian_typedecl_free_func_get(const Eolian_Typedecl *tp); 2719EOLIAN_API const char *eolian_typedecl_free_func_get(const Eolian_Typedecl *tp);
2744 2720
2745/* 2721/*
2746 * @brief Get the function object for this function pointer type. 2722 * @brief Get the function object for this function pointer type.
@@ -2750,7 +2726,7 @@ EAPI const char *eolian_typedecl_free_func_get(const Eolian_Typedecl *tp);
2750 * 2726 *
2751 * @ingroup Eolian 2727 * @ingroup Eolian
2752 */ 2728 */
2753EAPI const Eolian_Function *eolian_typedecl_function_pointer_get(const Eolian_Typedecl *tp); 2729EOLIAN_API const Eolian_Function *eolian_typedecl_function_pointer_get(const Eolian_Typedecl *tp);
2754 2730
2755/* 2731/*
2756 * @brief Get the type of a type. 2732 * @brief Get the type of a type.
@@ -2760,7 +2736,7 @@ EAPI const Eolian_Function *eolian_typedecl_function_pointer_get(const Eolian_Ty
2760 * 2736 *
2761 * @ingroup Eolian 2737 * @ingroup Eolian
2762 */ 2738 */
2763EAPI Eolian_Type_Type eolian_type_type_get(const Eolian_Type *tp); 2739EOLIAN_API Eolian_Type_Type eolian_type_type_get(const Eolian_Type *tp);
2764 2740
2765/* 2741/*
2766 * @brief Get the builtin type of a type. 2742 * @brief Get the builtin type of a type.
@@ -2773,7 +2749,7 @@ EAPI Eolian_Type_Type eolian_type_type_get(const Eolian_Type *tp);
2773 * 2749 *
2774 * @ingroup Eolian 2750 * @ingroup Eolian
2775 */ 2751 */
2776EAPI Eolian_Type_Builtin_Type eolian_type_builtin_type_get(const Eolian_Type *tp); 2752EOLIAN_API Eolian_Type_Builtin_Type eolian_type_builtin_type_get(const Eolian_Type *tp);
2777 2753
2778/* 2754/*
2779 * @brief Get the base type of a type. 2755 * @brief Get the base type of a type.
@@ -2786,7 +2762,7 @@ EAPI Eolian_Type_Builtin_Type eolian_type_builtin_type_get(const Eolian_Type *tp
2786 * 2762 *
2787 * @ingroup Eolian 2763 * @ingroup Eolian
2788 */ 2764 */
2789EAPI const Eolian_Type *eolian_type_base_type_get(const Eolian_Type *tp); 2765EOLIAN_API const Eolian_Type *eolian_type_base_type_get(const Eolian_Type *tp);
2790 2766
2791/* 2767/*
2792 * @brief Get the next inner type of a complex type. 2768 * @brief Get the next inner type of a complex type.
@@ -2801,7 +2777,7 @@ EAPI const Eolian_Type *eolian_type_base_type_get(const Eolian_Type *tp);
2801 * 2777 *
2802 * @ingroup Eolian 2778 * @ingroup Eolian
2803 */ 2779 */
2804EAPI const Eolian_Type *eolian_type_next_type_get(const Eolian_Type *tp); 2780EOLIAN_API const Eolian_Type *eolian_type_next_type_get(const Eolian_Type *tp);
2805 2781
2806/* 2782/*
2807 * @brief Get the declaration a regular type points to. 2783 * @brief Get the declaration a regular type points to.
@@ -2813,7 +2789,7 @@ EAPI const Eolian_Type *eolian_type_next_type_get(const Eolian_Type *tp);
2813 * 2789 *
2814 * @ingroup Eolian 2790 * @ingroup Eolian
2815 */ 2791 */
2816EAPI const Eolian_Typedecl *eolian_type_typedecl_get(const Eolian_Type *tp); 2792EOLIAN_API const Eolian_Typedecl *eolian_type_typedecl_get(const Eolian_Type *tp);
2817 2793
2818/* 2794/*
2819 * @brief Get the lowest base type of an alias stack. 2795 * @brief Get the lowest base type of an alias stack.
@@ -2830,7 +2806,7 @@ EAPI const Eolian_Typedecl *eolian_type_typedecl_get(const Eolian_Type *tp);
2830 * 2806 *
2831 * @ingroup Eolian 2807 * @ingroup Eolian
2832 */ 2808 */
2833EAPI const Eolian_Type *eolian_type_aliased_base_get(const Eolian_Type *tp); 2809EOLIAN_API const Eolian_Type *eolian_type_aliased_base_get(const Eolian_Type *tp);
2834 2810
2835/* 2811/*
2836 * @brief Get the class associated with an EOLIAN_TYPE_CLASS type. 2812 * @brief Get the class associated with an EOLIAN_TYPE_CLASS type.
@@ -2840,7 +2816,7 @@ EAPI const Eolian_Type *eolian_type_aliased_base_get(const Eolian_Type *tp);
2840 * 2816 *
2841 * @ingroup Eolian 2817 * @ingroup Eolian
2842 */ 2818 */
2843EAPI const Eolian_Class *eolian_type_class_get(const Eolian_Type *tp); 2819EOLIAN_API const Eolian_Class *eolian_type_class_get(const Eolian_Type *tp);
2844 2820
2845/* 2821/*
2846 * @brief Get the error declaration associated with an EOLIAN_TYPE_ERROR type. 2822 * @brief Get the error declaration associated with an EOLIAN_TYPE_ERROR type.
@@ -2850,7 +2826,7 @@ EAPI const Eolian_Class *eolian_type_class_get(const Eolian_Type *tp);
2850 * 2826 *
2851 * @ingroup Eolian 2827 * @ingroup Eolian
2852 */ 2828 */
2853EAPI const Eolian_Error *eolian_type_error_get(const Eolian_Type *tp); 2829EOLIAN_API const Eolian_Error *eolian_type_error_get(const Eolian_Type *tp);
2854 2830
2855/* 2831/*
2856 * @brief Get whether the given type is moved with its parent type. 2832 * @brief Get whether the given type is moved with its parent type.
@@ -2865,7 +2841,7 @@ EAPI const Eolian_Error *eolian_type_error_get(const Eolian_Type *tp);
2865 * 2841 *
2866 * @ingroup Eolian 2842 * @ingroup Eolian
2867 */ 2843 */
2868EAPI Eina_Bool eolian_type_is_move(const Eolian_Type *tp); 2844EOLIAN_API Eina_Bool eolian_type_is_move(const Eolian_Type *tp);
2869 2845
2870/* 2846/*
2871 * @brief Get whether the given type is const. 2847 * @brief Get whether the given type is const.
@@ -2875,7 +2851,7 @@ EAPI Eina_Bool eolian_type_is_move(const Eolian_Type *tp);
2875 * 2851 *
2876 * @ingroup Eolian 2852 * @ingroup Eolian
2877 */ 2853 */
2878EAPI Eina_Bool eolian_type_is_const(const Eolian_Type *tp); 2854EOLIAN_API Eina_Bool eolian_type_is_const(const Eolian_Type *tp);
2879 2855
2880/* 2856/*
2881 * @brief Get the full C type name of the given type. 2857 * @brief Get the full C type name of the given type.
@@ -2889,7 +2865,7 @@ EAPI Eina_Bool eolian_type_is_const(const Eolian_Type *tp);
2889 * 2865 *
2890 * @ingroup Eolian 2866 * @ingroup Eolian
2891 */ 2867 */
2892EAPI Eina_Stringshare *eolian_type_c_type_get(const Eolian_Type *tp); 2868EOLIAN_API Eina_Stringshare *eolian_type_c_type_get(const Eolian_Type *tp);
2893 2869
2894/* 2870/*
2895 * @brief A helper function to get the full name of a type. 2871 * @brief A helper function to get the full name of a type.
@@ -2955,7 +2931,7 @@ eolian_type_namespaces_get(const Eolian_Type *tp)
2955 * 2931 *
2956 * @ingroup Eolian 2932 * @ingroup Eolian
2957 */ 2933 */
2958EAPI Eolian_Value eolian_expression_eval(const Eolian_Expression *expr, Eolian_Expression_Mask m); 2934EOLIAN_API Eolian_Value eolian_expression_eval(const Eolian_Expression *expr, Eolian_Expression_Mask m);
2959 2935
2960/* 2936/*
2961 * @brief Evaluate an Eolian expression into an out-param. 2937 * @brief Evaluate an Eolian expression into an out-param.
@@ -2973,7 +2949,7 @@ EAPI Eolian_Value eolian_expression_eval(const Eolian_Expression *expr, Eolian_E
2973 * 2949 *
2974 * @ingroup Eolian 2950 * @ingroup Eolian
2975 */ 2951 */
2976EAPI Eina_Bool eolian_expression_eval_fill(const Eolian_Expression *expr, Eolian_Expression_Mask m, Eolian_Value *val); 2952EOLIAN_API Eina_Bool eolian_expression_eval_fill(const Eolian_Expression *expr, Eolian_Expression_Mask m, Eolian_Value *val);
2977 2953
2978/* 2954/*
2979 * @brief Convert the result of expression evaluation to a literal as in how 2955 * @brief Convert the result of expression evaluation to a literal as in how
@@ -2991,7 +2967,7 @@ EAPI Eina_Bool eolian_expression_eval_fill(const Eolian_Expression *expr, Eolian
2991 * 2967 *
2992 * @ingroup Eolian 2968 * @ingroup Eolian
2993 */ 2969 */
2994EAPI Eina_Stringshare *eolian_expression_value_to_literal(const Eolian_Value *v); 2970EOLIAN_API Eina_Stringshare *eolian_expression_value_to_literal(const Eolian_Value *v);
2995 2971
2996/* 2972/*
2997 * @brief Serialize an expression. 2973 * @brief Serialize an expression.
@@ -3007,7 +2983,7 @@ EAPI Eina_Stringshare *eolian_expression_value_to_literal(const Eolian_Value *v)
3007 * 2983 *
3008 * @ingroup Eolian 2984 * @ingroup Eolian
3009 */ 2985 */
3010EAPI Eina_Stringshare *eolian_expression_serialize(const Eolian_Expression *expr); 2986EOLIAN_API Eina_Stringshare *eolian_expression_serialize(const Eolian_Expression *expr);
3011 2987
3012/* 2988/*
3013 * @brief Get the type of an expression. 2989 * @brief Get the type of an expression.
@@ -3017,7 +2993,7 @@ EAPI Eina_Stringshare *eolian_expression_serialize(const Eolian_Expression *expr
3017 * 2993 *
3018 * @ingroup Eolian 2994 * @ingroup Eolian
3019 */ 2995 */
3020EAPI Eolian_Expression_Type eolian_expression_type_get(const Eolian_Expression *expr); 2996EOLIAN_API Eolian_Expression_Type eolian_expression_type_get(const Eolian_Expression *expr);
3021 2997
3022/* 2998/*
3023 * @brief Get the binary operator of an expression. 2999 * @brief Get the binary operator of an expression.
@@ -3030,7 +3006,7 @@ EAPI Eolian_Expression_Type eolian_expression_type_get(const Eolian_Expression *
3030 * 3006 *
3031 * @ingroup Eolian 3007 * @ingroup Eolian
3032 */ 3008 */
3033EAPI Eolian_Binary_Operator eolian_expression_binary_operator_get(const Eolian_Expression *expr); 3009EOLIAN_API Eolian_Binary_Operator eolian_expression_binary_operator_get(const Eolian_Expression *expr);
3034 3010
3035/* 3011/*
3036 * @brief Get the lhs (left hand side) of a binary expression. 3012 * @brief Get the lhs (left hand side) of a binary expression.
@@ -3042,7 +3018,7 @@ EAPI Eolian_Binary_Operator eolian_expression_binary_operator_get(const Eolian_E
3042 * 3018 *
3043 * @ingroup Eolian 3019 * @ingroup Eolian
3044 */ 3020 */
3045EAPI const Eolian_Expression *eolian_expression_binary_lhs_get(const Eolian_Expression *expr); 3021EOLIAN_API const Eolian_Expression *eolian_expression_binary_lhs_get(const Eolian_Expression *expr);
3046 3022
3047/* 3023/*
3048 * @brief Get the rhs (right hand side) of a binary expression. 3024 * @brief Get the rhs (right hand side) of a binary expression.
@@ -3054,7 +3030,7 @@ EAPI const Eolian_Expression *eolian_expression_binary_lhs_get(const Eolian_Expr
3054 * 3030 *
3055 * @ingroup Eolian 3031 * @ingroup Eolian
3056 */ 3032 */
3057EAPI const Eolian_Expression *eolian_expression_binary_rhs_get(const Eolian_Expression *expr); 3033EOLIAN_API const Eolian_Expression *eolian_expression_binary_rhs_get(const Eolian_Expression *expr);
3058 3034
3059/* 3035/*
3060 * @brief Get the unary operator of an expression. 3036 * @brief Get the unary operator of an expression.
@@ -3067,7 +3043,7 @@ EAPI const Eolian_Expression *eolian_expression_binary_rhs_get(const Eolian_Expr
3067 * 3043 *
3068 * @ingroup Eolian 3044 * @ingroup Eolian
3069 */ 3045 */
3070EAPI Eolian_Unary_Operator eolian_expression_unary_operator_get(const Eolian_Expression *expr); 3046EOLIAN_API Eolian_Unary_Operator eolian_expression_unary_operator_get(const Eolian_Expression *expr);
3071 3047
3072/* 3048/*
3073 * @brief Get the expression of an unary expression. 3049 * @brief Get the expression of an unary expression.
@@ -3079,7 +3055,7 @@ EAPI Eolian_Unary_Operator eolian_expression_unary_operator_get(const Eolian_Exp
3079 * 3055 *
3080 * @ingroup Eolian 3056 * @ingroup Eolian
3081 */ 3057 */
3082EAPI const Eolian_Expression *eolian_expression_unary_expression_get(const Eolian_Expression *expr); 3058EOLIAN_API const Eolian_Expression *eolian_expression_unary_expression_get(const Eolian_Expression *expr);
3083 3059
3084/* 3060/*
3085 * @brief Get the value of an expression. 3061 * @brief Get the value of an expression.
@@ -3095,7 +3071,7 @@ EAPI const Eolian_Expression *eolian_expression_unary_expression_get(const Eolia
3095 * 3071 *
3096 * @ingroup Eolian 3072 * @ingroup Eolian
3097 */ 3073 */
3098EAPI Eolian_Value eolian_expression_value_get(const Eolian_Expression *expr); 3074EOLIAN_API Eolian_Value eolian_expression_value_get(const Eolian_Expression *expr);
3099 3075
3100/* 3076/*
3101 * @brief Get the value of an expression into an out-param. 3077 * @brief Get the value of an expression into an out-param.
@@ -3111,7 +3087,7 @@ EAPI Eolian_Value eolian_expression_value_get(const Eolian_Expression *expr);
3111 * 3087 *
3112 * @ingroup Eolian 3088 * @ingroup Eolian
3113 */ 3089 */
3114EAPI Eina_Bool eolian_expression_value_get_fill(const Eolian_Expression *expr, Eolian_Value *val); 3090EOLIAN_API Eina_Bool eolian_expression_value_get_fill(const Eolian_Expression *expr, Eolian_Value *val);
3115 3091
3116/* 3092/*
3117 * @brief Get the documentation of a constant. 3093 * @brief Get the documentation of a constant.
@@ -3121,7 +3097,7 @@ EAPI Eina_Bool eolian_expression_value_get_fill(const Eolian_Expression *expr, E
3121 * 3097 *
3122 * @ingroup Eolian 3098 * @ingroup Eolian
3123 */ 3099 */
3124EAPI const Eolian_Documentation *eolian_constant_documentation_get(const Eolian_Constant *var); 3100EOLIAN_API const Eolian_Documentation *eolian_constant_documentation_get(const Eolian_Constant *var);
3125 3101
3126/* 3102/*
3127 * @brief Get the base type of a constant. 3103 * @brief Get the base type of a constant.
@@ -3131,7 +3107,7 @@ EAPI const Eolian_Documentation *eolian_constant_documentation_get(const Eolian_
3131 * 3107 *
3132 * @ingroup Eolian 3108 * @ingroup Eolian
3133 */ 3109 */
3134EAPI const Eolian_Type *eolian_constant_type_get(const Eolian_Constant *var); 3110EOLIAN_API const Eolian_Type *eolian_constant_type_get(const Eolian_Constant *var);
3135 3111
3136/* 3112/*
3137 * @brief Get the value of a constant. 3113 * @brief Get the value of a constant.
@@ -3141,7 +3117,7 @@ EAPI const Eolian_Type *eolian_constant_type_get(const Eolian_Constant *var);
3141 * 3117 *
3142 * @ingroup Eolian 3118 * @ingroup Eolian
3143 */ 3119 */
3144EAPI const Eolian_Expression *eolian_constant_value_get(const Eolian_Constant *var); 3120EOLIAN_API const Eolian_Expression *eolian_constant_value_get(const Eolian_Constant *var);
3145 3121
3146/* 3122/*
3147 * @brief A helper function to get the full name of a constant. 3123 * @brief A helper function to get the full name of a constant.
@@ -3203,7 +3179,7 @@ eolian_constant_namespaces_get(const Eolian_Constant *tp)
3203 * 3179 *
3204 * @ingroup Eolian 3180 * @ingroup Eolian
3205 */ 3181 */
3206EAPI Eina_Bool eolian_constant_is_extern(const Eolian_Constant *var); 3182EOLIAN_API Eina_Bool eolian_constant_is_extern(const Eolian_Constant *var);
3207 3183
3208/* 3184/*
3209 * @brief Get whether a constant is beta. 3185 * @brief Get whether a constant is beta.
@@ -3226,7 +3202,7 @@ eolian_constant_is_beta(const Eolian_Constant *var)
3226 * 3202 *
3227 * @ingroup Eolian 3203 * @ingroup Eolian
3228 */ 3204 */
3229EAPI const char *eolian_error_message_get(const Eolian_Error *err); 3205EOLIAN_API const char *eolian_error_message_get(const Eolian_Error *err);
3230 3206
3231/* 3207/*
3232 * @brief Get the documentation of an error declaration. 3208 * @brief Get the documentation of an error declaration.
@@ -3236,7 +3212,7 @@ EAPI const char *eolian_error_message_get(const Eolian_Error *err);
3236 * 3212 *
3237 * @ingroup Eolian 3213 * @ingroup Eolian
3238 */ 3214 */
3239EAPI const Eolian_Documentation *eolian_error_documentation_get(const Eolian_Error *err); 3215EOLIAN_API const Eolian_Documentation *eolian_error_documentation_get(const Eolian_Error *err);
3240 3216
3241/* 3217/*
3242 * @brief A helper function to get the full name of an error declaration. 3218 * @brief A helper function to get the full name of an error declaration.
@@ -3311,7 +3287,7 @@ eolian_error_is_beta(const Eolian_Error *err)
3311 * 3287 *
3312 * @ingroup Eolian 3288 * @ingroup Eolian
3313 */ 3289 */
3314EAPI Eina_Bool eolian_error_is_extern(const Eolian_Error *err); 3290EOLIAN_API Eina_Bool eolian_error_is_extern(const Eolian_Error *err);
3315 3291
3316/* 3292/*
3317 * @brief Get the summary of the documentation. 3293 * @brief Get the summary of the documentation.
@@ -3323,7 +3299,7 @@ EAPI Eina_Bool eolian_error_is_extern(const Eolian_Error *err);
3323 * 3299 *
3324 * @ingroup Eolian 3300 * @ingroup Eolian
3325 */ 3301 */
3326EAPI const char *eolian_documentation_summary_get(const Eolian_Documentation *doc); 3302EOLIAN_API const char *eolian_documentation_summary_get(const Eolian_Documentation *doc);
3327 3303
3328/* 3304/*
3329 * @brief Get the description of the documentation. 3305 * @brief Get the description of the documentation.
@@ -3336,7 +3312,7 @@ EAPI const char *eolian_documentation_summary_get(const Eolian_Documentation *do
3336 * 3312 *
3337 * @ingroup Eolian 3313 * @ingroup Eolian
3338 */ 3314 */
3339EAPI const char *eolian_documentation_description_get(const Eolian_Documentation *doc); 3315EOLIAN_API const char *eolian_documentation_description_get(const Eolian_Documentation *doc);
3340 3316
3341/* 3317/*
3342 * @brief Get the "since" tag of the documentation. 3318 * @brief Get the "since" tag of the documentation.
@@ -3349,7 +3325,7 @@ EAPI const char *eolian_documentation_description_get(const Eolian_Documentation
3349 * 3325 *
3350 * @ingroup Eolian 3326 * @ingroup Eolian
3351 */ 3327 */
3352EAPI const char *eolian_documentation_since_get(const Eolian_Documentation *doc); 3328EOLIAN_API const char *eolian_documentation_since_get(const Eolian_Documentation *doc);
3353 3329
3354/* 3330/*
3355 * @brief Split a documentation string into individual paragraphs. 3331 * @brief Split a documentation string into individual paragraphs.
@@ -3361,7 +3337,7 @@ EAPI const char *eolian_documentation_since_get(const Eolian_Documentation *doc)
3361 * 3337 *
3362 * @ingroup Eolian 3338 * @ingroup Eolian
3363 */ 3339 */
3364EAPI Eina_List *eolian_documentation_string_split(const char *doc); 3340EOLIAN_API Eina_List *eolian_documentation_string_split(const char *doc);
3365 3341
3366/* 3342/*
3367 * @brief Tokenize a documentation paragraph. 3343 * @brief Tokenize a documentation paragraph.
@@ -3386,7 +3362,7 @@ EAPI Eina_List *eolian_documentation_string_split(const char *doc);
3386 * 3362 *
3387 * @ingroup Eolian 3363 * @ingroup Eolian
3388 */ 3364 */
3389EAPI const char *eolian_documentation_tokenize(const char *doc, Eolian_Doc_Token *ret); 3365EOLIAN_API const char *eolian_documentation_tokenize(const char *doc, Eolian_Doc_Token *ret);
3390 3366
3391/* 3367/*
3392 * @brief Initialize a documentation token into an empty state. 3368 * @brief Initialize a documentation token into an empty state.
@@ -3394,7 +3370,7 @@ EAPI const char *eolian_documentation_tokenize(const char *doc, Eolian_Doc_Token
3394 * @param[in] tok the token 3370 * @param[in] tok the token
3395 * @return the token type 3371 * @return the token type
3396 */ 3372 */
3397EAPI void eolian_doc_token_init(Eolian_Doc_Token *tok); 3373EOLIAN_API void eolian_doc_token_init(Eolian_Doc_Token *tok);
3398 3374
3399/* 3375/*
3400 * @brief Get the type of a documentation token. 3376 * @brief Get the type of a documentation token.
@@ -3402,7 +3378,7 @@ EAPI void eolian_doc_token_init(Eolian_Doc_Token *tok);
3402 * @param[in] tok the token 3378 * @param[in] tok the token
3403 * @return the token type 3379 * @return the token type
3404 */ 3380 */
3405EAPI Eolian_Doc_Token_Type eolian_doc_token_type_get(const Eolian_Doc_Token *tok); 3381EOLIAN_API Eolian_Doc_Token_Type eolian_doc_token_type_get(const Eolian_Doc_Token *tok);
3406 3382
3407/* 3383/*
3408 * @brief Get the text of a documentation token. 3384 * @brief Get the text of a documentation token.
@@ -3415,7 +3391,7 @@ EAPI Eolian_Doc_Token_Type eolian_doc_token_type_get(const Eolian_Doc_Token *tok
3415 * @param[in] tok the token 3391 * @param[in] tok the token
3416 * @return the token text 3392 * @return the token text
3417 */ 3393 */
3418EAPI char *eolian_doc_token_text_get(const Eolian_Doc_Token *tok); 3394EOLIAN_API char *eolian_doc_token_text_get(const Eolian_Doc_Token *tok);
3419 3395
3420/* 3396/*
3421 * @brief Get the thing that a reference token references. 3397 * @brief Get the thing that a reference token references.
@@ -3435,7 +3411,7 @@ EAPI char *eolian_doc_token_text_get(const Eolian_Doc_Token *tok);
3435 * @param[out] data2 the secondary data 3411 * @param[out] data2 the secondary data
3436 * @return the kind of reference this is 3412 * @return the kind of reference this is
3437 */ 3413 */
3438EAPI Eolian_Object_Type eolian_doc_token_ref_resolve(const Eolian_Doc_Token *tok, const Eolian_State *state, const Eolian_Object **data, const Eolian_Object **data2); 3414EOLIAN_API Eolian_Object_Type eolian_doc_token_ref_resolve(const Eolian_Doc_Token *tok, const Eolian_State *state, const Eolian_Object **data, const Eolian_Object **data2);
3439 3415
3440#ifdef EFL_BETA_API_SUPPORT 3416#ifdef EFL_BETA_API_SUPPORT
3441 3417
@@ -3448,7 +3424,7 @@ EAPI Eolian_Object_Type eolian_doc_token_ref_resolve(const Eolian_Doc_Token *tok
3448 * 3424 *
3449 * @ingroup Eolian 3425 * @ingroup Eolian
3450 */ 3426 */
3451EAPI const char *eolian_typedecl_enum_legacy_prefix_get(const Eolian_Typedecl *tp); 3427EOLIAN_API const char *eolian_typedecl_enum_legacy_prefix_get(const Eolian_Typedecl *tp);
3452 3428
3453/* 3429/*
3454 * @brief Get whether the given type is a reference. 3430 * @brief Get whether the given type is a reference.
@@ -3458,7 +3434,7 @@ EAPI const char *eolian_typedecl_enum_legacy_prefix_get(const Eolian_Typedecl *t
3458 * 3434 *
3459 * @ingroup Eolian 3435 * @ingroup Eolian
3460 */ 3436 */
3461EAPI Eina_Bool eolian_type_is_ptr(const Eolian_Type *tp); 3437EOLIAN_API Eina_Bool eolian_type_is_ptr(const Eolian_Type *tp);
3462 3438
3463#endif /* EFL_BETA_API_SUPPORT */ 3439#endif /* EFL_BETA_API_SUPPORT */
3464 3440
@@ -3470,7 +3446,4 @@ EAPI Eina_Bool eolian_type_is_ptr(const Eolian_Type *tp);
3470} // extern "C" { 3446} // extern "C" {
3471#endif 3447#endif
3472 3448
3473#undef EAPI
3474#define EAPI
3475
3476#endif 3449#endif
diff --git a/src/lib/eolian/Eolian_Aux.h b/src/lib/eolian/Eolian_Aux.h
index b98759ef8f..ea83d39814 100644
--- a/src/lib/eolian/Eolian_Aux.h
+++ b/src/lib/eolian/Eolian_Aux.h
@@ -3,32 +3,6 @@
3 3
4#include <Eolian.h> 4#include <Eolian.h>
5 5
6#ifdef EAPI
7# undef EAPI
8#endif
9
10#ifdef _WIN32
11# ifdef EFL_BUILD
12# ifdef DLL_EXPORT
13# define EAPI __declspec(dllexport)
14# else
15# define EAPI
16# endif
17# else
18# define EAPI __declspec(dllimport)
19# endif
20#else
21# ifdef __GNUC__
22# if __GNUC__ >= 4
23# define EAPI __attribute__ ((visibility("default")))
24# else
25# define EAPI
26# endif
27# else
28# define EAPI
29# endif
30#endif
31
32#ifdef __cplusplus 6#ifdef __cplusplus
33extern "C" { 7extern "C" {
34#endif 8#endif
@@ -73,7 +47,7 @@ extern "C" {
73 * 47 *
74 * @ingroup Eolian 48 * @ingroup Eolian
75 */ 49 */
76EAPI Eina_Hash *eolian_aux_state_class_children_find(const Eolian_State *state); 50EOLIAN_API Eina_Hash *eolian_aux_state_class_children_find(const Eolian_State *state);
77 51
78/** 52/**
79 * @brief Get all APIs that are usable on the class. 53 * @brief Get all APIs that are usable on the class.
@@ -100,7 +74,7 @@ EAPI Eina_Hash *eolian_aux_state_class_children_find(const Eolian_State *state);
100 * 74 *
101 * @ingroup Eolian 75 * @ingroup Eolian
102 */ 76 */
103EAPI size_t eolian_aux_class_callables_get(const Eolian_Class *klass, Eina_List **funcs, Eina_List **events, size_t *ownfuncs, size_t *ownevs); 77EOLIAN_API size_t eolian_aux_class_callables_get(const Eolian_Class *klass, Eina_List **funcs, Eina_List **events, size_t *ownfuncs, size_t *ownevs);
104 78
105/** 79/**
106 * @brief Get all implementations of a function in a state. 80 * @brief Get all implementations of a function in a state.
@@ -117,7 +91,7 @@ EAPI size_t eolian_aux_class_callables_get(const Eolian_Class *klass, Eina_List
117 * 91 *
118 * @ingroup Eolian 92 * @ingroup Eolian
119 */ 93 */
120EAPI Eina_List *eolian_aux_function_all_implements_get(const Eolian_Function *func, Eina_Hash *class_children); 94EOLIAN_API Eina_List *eolian_aux_function_all_implements_get(const Eolian_Function *func, Eina_Hash *class_children);
121 95
122/** 96/**
123 * @brief Get previous implementation in the inheritance hierarchy. 97 * @brief Get previous implementation in the inheritance hierarchy.
@@ -131,7 +105,7 @@ EAPI Eina_List *eolian_aux_function_all_implements_get(const Eolian_Function *fu
131 * 105 *
132 * @ingroup Eolian 106 * @ingroup Eolian
133 */ 107 */
134EAPI const Eolian_Implement *eolian_aux_implement_parent_get(const Eolian_Implement *impl); 108EOLIAN_API const Eolian_Implement *eolian_aux_implement_parent_get(const Eolian_Implement *impl);
135 109
136/** 110/**
137 * @brief Get documentation for an implementation. 111 * @brief Get documentation for an implementation.
@@ -147,7 +121,7 @@ EAPI const Eolian_Implement *eolian_aux_implement_parent_get(const Eolian_Implem
147 * 121 *
148 * @ingroup Eolian 122 * @ingroup Eolian
149 */ 123 */
150EAPI const Eolian_Documentation *eolian_aux_implement_documentation_get(const Eolian_Implement *impl, Eolian_Function_Type ftype); 124EOLIAN_API const Eolian_Documentation *eolian_aux_implement_documentation_get(const Eolian_Implement *impl, Eolian_Function_Type ftype);
151 125
152/** 126/**
153 * @brief Get documentation fallback for an implementation. 127 * @brief Get documentation fallback for an implementation.
@@ -162,7 +136,7 @@ EAPI const Eolian_Documentation *eolian_aux_implement_documentation_get(const Eo
162 * 136 *
163 * @ingroup Eolian 137 * @ingroup Eolian
164 */ 138 */
165EAPI const Eolian_Documentation *eolian_aux_implement_documentation_fallback_get(const Eolian_Implement *impl); 139EOLIAN_API const Eolian_Documentation *eolian_aux_implement_documentation_fallback_get(const Eolian_Implement *impl);
166 140
167#endif 141#endif
168 142
@@ -174,7 +148,4 @@ EAPI const Eolian_Documentation *eolian_aux_implement_documentation_fallback_get
174} // extern "C" { 148} // extern "C" {
175#endif 149#endif
176 150
177#undef EAPI
178#define EAPI
179
180#endif 151#endif
diff --git a/src/lib/eolian/database_class_api.c b/src/lib/eolian/database_class_api.c
index 971c0bacb1..2860eaf49c 100644
--- a/src/lib/eolian/database_class_api.c
+++ b/src/lib/eolian/database_class_api.c
@@ -6,76 +6,76 @@
6#include "eolian_database.h" 6#include "eolian_database.h"
7#include "eolian_priv.h" 7#include "eolian_priv.h"
8 8
9EAPI Eolian_Class_Type 9EOLIAN_API Eolian_Class_Type
10eolian_class_type_get(const Eolian_Class *cl) 10eolian_class_type_get(const Eolian_Class *cl)
11{ 11{
12 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EOLIAN_CLASS_UNKNOWN_TYPE); 12 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EOLIAN_CLASS_UNKNOWN_TYPE);
13 return cl->type; 13 return cl->type;
14} 14}
15 15
16EAPI const Eolian_Documentation * 16EOLIAN_API const Eolian_Documentation *
17eolian_class_documentation_get(const Eolian_Class *cl) 17eolian_class_documentation_get(const Eolian_Class *cl)
18{ 18{
19 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 19 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
20 return cl->doc; 20 return cl->doc;
21} 21}
22 22
23EAPI const char * 23EOLIAN_API const char *
24eolian_class_c_prefix_get(const Eolian_Class *cl) 24eolian_class_c_prefix_get(const Eolian_Class *cl)
25{ 25{
26 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 26 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
27 return cl->c_prefix; 27 return cl->c_prefix;
28} 28}
29 29
30EAPI const char * 30EOLIAN_API const char *
31eolian_class_event_c_prefix_get(const Eolian_Class *cl) 31eolian_class_event_c_prefix_get(const Eolian_Class *cl)
32{ 32{
33 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 33 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
34 return cl->ev_prefix; 34 return cl->ev_prefix;
35} 35}
36 36
37EAPI const char * 37EOLIAN_API const char *
38eolian_class_data_type_get(const Eolian_Class *cl) 38eolian_class_data_type_get(const Eolian_Class *cl)
39{ 39{
40 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 40 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
41 return cl->data_type; 41 return cl->data_type;
42} 42}
43 43
44EAPI const Eolian_Class * 44EOLIAN_API const Eolian_Class *
45eolian_class_parent_get(const Eolian_Class *cl) 45eolian_class_parent_get(const Eolian_Class *cl)
46{ 46{
47 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 47 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
48 return cl->parent; 48 return cl->parent;
49} 49}
50 50
51EAPI Eina_Iterator * 51EOLIAN_API Eina_Iterator *
52eolian_class_requires_get(const Eolian_Class *cl) 52eolian_class_requires_get(const Eolian_Class *cl)
53{ 53{
54 return eina_list_iterator_new(cl->requires); 54 return eina_list_iterator_new(cl->requires);
55} 55}
56 56
57EAPI Eina_Iterator * 57EOLIAN_API Eina_Iterator *
58eolian_class_extensions_get(const Eolian_Class *cl) 58eolian_class_extensions_get(const Eolian_Class *cl)
59{ 59{
60 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 60 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
61 return (cl->extends ? eina_list_iterator_new(cl->extends) : NULL); 61 return (cl->extends ? eina_list_iterator_new(cl->extends) : NULL);
62} 62}
63 63
64EAPI Eina_Iterator * 64EOLIAN_API Eina_Iterator *
65eolian_class_implements_get(const Eolian_Class *cl) 65eolian_class_implements_get(const Eolian_Class *cl)
66{ 66{
67 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 67 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
68 return (cl->implements ? eina_list_iterator_new(cl->implements) : NULL); 68 return (cl->implements ? eina_list_iterator_new(cl->implements) : NULL);
69} 69}
70 70
71EAPI Eina_Iterator * 71EOLIAN_API Eina_Iterator *
72eolian_class_constructors_get(const Eolian_Class *cl) 72eolian_class_constructors_get(const Eolian_Class *cl)
73{ 73{
74 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 74 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
75 return (cl->constructors ? eina_list_iterator_new(cl->constructors) : NULL); 75 return (cl->constructors ? eina_list_iterator_new(cl->constructors) : NULL);
76} 76}
77 77
78EAPI const Eolian_Function * 78EOLIAN_API const Eolian_Function *
79eolian_class_function_by_name_get(const Eolian_Class *cl, const char *func_name, Eolian_Function_Type f_type) 79eolian_class_function_by_name_get(const Eolian_Class *cl, const char *func_name, Eolian_Function_Type f_type)
80{ 80{
81 Eina_List *itr; 81 Eina_List *itr;
@@ -106,7 +106,7 @@ eolian_class_function_by_name_get(const Eolian_Class *cl, const char *func_name,
106 return NULL; 106 return NULL;
107} 107}
108 108
109EAPI Eina_Iterator * 109EOLIAN_API Eina_Iterator *
110eolian_class_functions_get(const Eolian_Class *cl, Eolian_Function_Type foo_type) 110eolian_class_functions_get(const Eolian_Class *cl, Eolian_Function_Type foo_type)
111{ 111{
112 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 112 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
@@ -120,35 +120,35 @@ eolian_class_functions_get(const Eolian_Class *cl, Eolian_Function_Type foo_type
120 } 120 }
121} 121}
122 122
123EAPI Eina_Iterator * 123EOLIAN_API Eina_Iterator *
124eolian_class_events_get(const Eolian_Class *cl) 124eolian_class_events_get(const Eolian_Class *cl)
125{ 125{
126 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 126 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
127 return (cl->events ? eina_list_iterator_new(cl->events) : NULL); 127 return (cl->events ? eina_list_iterator_new(cl->events) : NULL);
128} 128}
129 129
130EAPI Eina_Iterator * 130EOLIAN_API Eina_Iterator *
131eolian_class_parts_get(const Eolian_Class *cl) 131eolian_class_parts_get(const Eolian_Class *cl)
132{ 132{
133 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 133 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
134 return (cl->parts ? eina_list_iterator_new(cl->parts) : NULL); 134 return (cl->parts ? eina_list_iterator_new(cl->parts) : NULL);
135} 135}
136 136
137EAPI Eina_Bool 137EOLIAN_API Eina_Bool
138eolian_class_ctor_enable_get(const Eolian_Class *cl) 138eolian_class_ctor_enable_get(const Eolian_Class *cl)
139{ 139{
140 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EINA_FALSE); 140 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EINA_FALSE);
141 return cl->class_ctor_enable; 141 return cl->class_ctor_enable;
142} 142}
143 143
144EAPI Eina_Bool 144EOLIAN_API Eina_Bool
145eolian_class_dtor_enable_get(const Eolian_Class *cl) 145eolian_class_dtor_enable_get(const Eolian_Class *cl)
146{ 146{
147 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EINA_FALSE); 147 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, EINA_FALSE);
148 return cl->class_dtor_enable; 148 return cl->class_dtor_enable;
149} 149}
150 150
151EAPI Eina_Stringshare * 151EOLIAN_API Eina_Stringshare *
152eolian_class_c_get_function_name_get(const Eolian_Class *cl) 152eolian_class_c_get_function_name_get(const Eolian_Class *cl)
153{ 153{
154 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 154 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
@@ -176,7 +176,7 @@ eolian_class_c_get_function_name_get(const Eolian_Class *cl)
176 return ret; 176 return ret;
177} 177}
178 178
179EAPI Eina_Stringshare * 179EOLIAN_API Eina_Stringshare *
180eolian_class_c_macro_get(const Eolian_Class *cl) 180eolian_class_c_macro_get(const Eolian_Class *cl)
181{ 181{
182 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL); 182 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, NULL);
@@ -204,7 +204,7 @@ eolian_class_c_macro_get(const Eolian_Class *cl)
204 return ret; 204 return ret;
205} 205}
206 206
207EAPI Eina_Stringshare * 207EOLIAN_API Eina_Stringshare *
208eolian_class_c_data_type_get(const Eolian_Class *cl) 208eolian_class_c_data_type_get(const Eolian_Class *cl)
209{ 209{
210 char buf[512]; 210 char buf[512];
diff --git a/src/lib/eolian/database_constructor_api.c b/src/lib/eolian/database_constructor_api.c
index bedf9ab7da..f1794df409 100644
--- a/src/lib/eolian/database_constructor_api.c
+++ b/src/lib/eolian/database_constructor_api.c
@@ -5,14 +5,14 @@
5#include <Eina.h> 5#include <Eina.h>
6#include "eolian_database.h" 6#include "eolian_database.h"
7 7
8EAPI const Eolian_Class * 8EOLIAN_API const Eolian_Class *
9eolian_constructor_class_get(const Eolian_Constructor *ctor) 9eolian_constructor_class_get(const Eolian_Constructor *ctor)
10{ 10{
11 EINA_SAFETY_ON_NULL_RETURN_VAL(ctor, NULL); 11 EINA_SAFETY_ON_NULL_RETURN_VAL(ctor, NULL);
12 return ctor->klass; 12 return ctor->klass;
13} 13}
14 14
15EAPI const Eolian_Function * 15EOLIAN_API const Eolian_Function *
16eolian_constructor_function_get(const Eolian_Constructor *ctor) 16eolian_constructor_function_get(const Eolian_Constructor *ctor)
17{ 17{
18 EINA_SAFETY_ON_NULL_RETURN_VAL(ctor, NULL); 18 EINA_SAFETY_ON_NULL_RETURN_VAL(ctor, NULL);
@@ -23,7 +23,7 @@ eolian_constructor_function_get(const Eolian_Constructor *ctor)
23 ctor->base.name + strlen(klass->base.name) + 1, EOLIAN_UNRESOLVED); 23 ctor->base.name + strlen(klass->base.name) + 1, EOLIAN_UNRESOLVED);
24} 24}
25 25
26EAPI Eina_Bool 26EOLIAN_API Eina_Bool
27eolian_constructor_is_optional(const Eolian_Constructor *ctor) 27eolian_constructor_is_optional(const Eolian_Constructor *ctor)
28{ 28{
29 EINA_SAFETY_ON_NULL_RETURN_VAL(ctor, EINA_FALSE); 29 EINA_SAFETY_ON_NULL_RETURN_VAL(ctor, EINA_FALSE);
diff --git a/src/lib/eolian/database_event_api.c b/src/lib/eolian/database_event_api.c
index 2c0647d5c9..cde812fdc8 100644
--- a/src/lib/eolian/database_event_api.c
+++ b/src/lib/eolian/database_event_api.c
@@ -5,7 +5,7 @@
5#include <Eina.h> 5#include <Eina.h>
6#include "eolian_database.h" 6#include "eolian_database.h"
7 7
8EAPI const Eolian_Type * 8EOLIAN_API const Eolian_Type *
9eolian_event_type_get(const Eolian_Event *event) 9eolian_event_type_get(const Eolian_Event *event)
10{ 10{
11 EINA_SAFETY_ON_NULL_RETURN_VAL(event, NULL); 11 EINA_SAFETY_ON_NULL_RETURN_VAL(event, NULL);
@@ -14,42 +14,42 @@ eolian_event_type_get(const Eolian_Event *event)
14 return event->type; 14 return event->type;
15} 15}
16 16
17EAPI const Eolian_Class * 17EOLIAN_API const Eolian_Class *
18eolian_event_class_get(const Eolian_Event *event) 18eolian_event_class_get(const Eolian_Event *event)
19{ 19{
20 EINA_SAFETY_ON_NULL_RETURN_VAL(event, NULL); 20 EINA_SAFETY_ON_NULL_RETURN_VAL(event, NULL);
21 return event->klass; 21 return event->klass;
22} 22}
23 23
24EAPI const Eolian_Documentation * 24EOLIAN_API const Eolian_Documentation *
25eolian_event_documentation_get(const Eolian_Event *event) 25eolian_event_documentation_get(const Eolian_Event *event)
26{ 26{
27 EINA_SAFETY_ON_NULL_RETURN_VAL(event, NULL); 27 EINA_SAFETY_ON_NULL_RETURN_VAL(event, NULL);
28 return event->doc; 28 return event->doc;
29} 29}
30 30
31EAPI Eolian_Object_Scope 31EOLIAN_API Eolian_Object_Scope
32eolian_event_scope_get(const Eolian_Event *event) 32eolian_event_scope_get(const Eolian_Event *event)
33{ 33{
34 EINA_SAFETY_ON_NULL_RETURN_VAL(event, EOLIAN_SCOPE_UNKNOWN); 34 EINA_SAFETY_ON_NULL_RETURN_VAL(event, EOLIAN_SCOPE_UNKNOWN);
35 return event->scope; 35 return event->scope;
36} 36}
37 37
38EAPI Eina_Bool 38EOLIAN_API Eina_Bool
39eolian_event_is_hot(const Eolian_Event *event) 39eolian_event_is_hot(const Eolian_Event *event)
40{ 40{
41 EINA_SAFETY_ON_NULL_RETURN_VAL(event, EINA_FALSE); 41 EINA_SAFETY_ON_NULL_RETURN_VAL(event, EINA_FALSE);
42 return event->is_hot; 42 return event->is_hot;
43} 43}
44 44
45EAPI Eina_Bool 45EOLIAN_API Eina_Bool
46eolian_event_is_restart(const Eolian_Event *event) 46eolian_event_is_restart(const Eolian_Event *event)
47{ 47{
48 EINA_SAFETY_ON_NULL_RETURN_VAL(event, EINA_FALSE); 48 EINA_SAFETY_ON_NULL_RETURN_VAL(event, EINA_FALSE);
49 return event->is_restart; 49 return event->is_restart;
50} 50}
51 51
52EAPI Eina_Stringshare * 52EOLIAN_API Eina_Stringshare *
53eolian_event_c_macro_get(const Eolian_Event *event) 53eolian_event_c_macro_get(const Eolian_Event *event)
54{ 54{
55 char buf[512]; 55 char buf[512];
@@ -63,7 +63,7 @@ eolian_event_c_macro_get(const Eolian_Event *event)
63 return eina_stringshare_add(buf); 63 return eina_stringshare_add(buf);
64} 64}
65 65
66EAPI const Eolian_Event * 66EOLIAN_API const Eolian_Event *
67eolian_class_event_by_name_get(const Eolian_Class *klass, const char *event_name) 67eolian_class_event_by_name_get(const Eolian_Class *klass, const char *event_name)
68{ 68{
69 Eina_List *itr; 69 Eina_List *itr;
diff --git a/src/lib/eolian/database_expr_api.c b/src/lib/eolian/database_expr_api.c
index 83cfbc52ac..2917107c6d 100644
--- a/src/lib/eolian/database_expr_api.c
+++ b/src/lib/eolian/database_expr_api.c
@@ -6,7 +6,7 @@
6 6
7#include "eolian_database.h" 7#include "eolian_database.h"
8 8
9EAPI Eolian_Value 9EOLIAN_API Eolian_Value
10eolian_expression_eval(const Eolian_Expression *expr, Eolian_Expression_Mask m) 10eolian_expression_eval(const Eolian_Expression *expr, Eolian_Expression_Mask m)
11{ 11{
12 Eolian_Value err; 12 Eolian_Value err;
@@ -15,7 +15,7 @@ eolian_expression_eval(const Eolian_Expression *expr, Eolian_Expression_Mask m)
15 return database_expr_eval(NULL, (Eolian_Expression *)expr, m, NULL, NULL); 15 return database_expr_eval(NULL, (Eolian_Expression *)expr, m, NULL, NULL);
16} 16}
17 17
18EAPI Eina_Bool 18EOLIAN_API Eina_Bool
19eolian_expression_eval_fill(const Eolian_Expression *expr, 19eolian_expression_eval_fill(const Eolian_Expression *expr,
20 Eolian_Expression_Mask m, Eolian_Value *val) 20 Eolian_Expression_Mask m, Eolian_Value *val)
21{ 21{
@@ -80,7 +80,7 @@ _number_to_str(const Eolian_Value *v, Eina_Strbuf *buf)
80 } 80 }
81} 81}
82 82
83EAPI Eina_Stringshare * 83EOLIAN_API Eina_Stringshare *
84eolian_expression_value_to_literal(const Eolian_Value *val) 84eolian_expression_value_to_literal(const Eolian_Value *val)
85{ 85{
86 EINA_SAFETY_ON_NULL_RETURN_VAL(val, NULL); 86 EINA_SAFETY_ON_NULL_RETURN_VAL(val, NULL);
@@ -205,7 +205,7 @@ _expr_serialize(const Eolian_Expression *expr, Eina_Strbuf *buf, Eina_Bool outer
205 return EINA_TRUE; 205 return EINA_TRUE;
206} 206}
207 207
208EAPI Eina_Stringshare * 208EOLIAN_API Eina_Stringshare *
209eolian_expression_serialize(const Eolian_Expression *expr) 209eolian_expression_serialize(const Eolian_Expression *expr)
210{ 210{
211 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, NULL); 211 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, NULL);
@@ -220,14 +220,14 @@ eolian_expression_serialize(const Eolian_Expression *expr)
220 return ret; 220 return ret;
221} 221}
222 222
223EAPI Eolian_Expression_Type 223EOLIAN_API Eolian_Expression_Type
224eolian_expression_type_get(const Eolian_Expression *expr) 224eolian_expression_type_get(const Eolian_Expression *expr)
225{ 225{
226 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, EOLIAN_EXPR_UNKNOWN); 226 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, EOLIAN_EXPR_UNKNOWN);
227 return expr->type; 227 return expr->type;
228} 228}
229 229
230EAPI Eolian_Binary_Operator 230EOLIAN_API Eolian_Binary_Operator
231eolian_expression_binary_operator_get(const Eolian_Expression *expr) 231eolian_expression_binary_operator_get(const Eolian_Expression *expr)
232{ 232{
233 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, EOLIAN_BINOP_INVALID); 233 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, EOLIAN_BINOP_INVALID);
@@ -236,7 +236,7 @@ eolian_expression_binary_operator_get(const Eolian_Expression *expr)
236 return expr->binop; 236 return expr->binop;
237} 237}
238 238
239EAPI const Eolian_Expression * 239EOLIAN_API const Eolian_Expression *
240eolian_expression_binary_lhs_get(const Eolian_Expression *expr) 240eolian_expression_binary_lhs_get(const Eolian_Expression *expr)
241{ 241{
242 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, NULL); 242 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, NULL);
@@ -244,7 +244,7 @@ eolian_expression_binary_lhs_get(const Eolian_Expression *expr)
244 return expr->lhs; 244 return expr->lhs;
245} 245}
246 246
247EAPI const Eolian_Expression * 247EOLIAN_API const Eolian_Expression *
248eolian_expression_binary_rhs_get(const Eolian_Expression *expr) 248eolian_expression_binary_rhs_get(const Eolian_Expression *expr)
249{ 249{
250 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, NULL); 250 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, NULL);
@@ -252,7 +252,7 @@ eolian_expression_binary_rhs_get(const Eolian_Expression *expr)
252 return expr->rhs; 252 return expr->rhs;
253} 253}
254 254
255EAPI Eolian_Unary_Operator 255EOLIAN_API Eolian_Unary_Operator
256eolian_expression_unary_operator_get(const Eolian_Expression *expr) 256eolian_expression_unary_operator_get(const Eolian_Expression *expr)
257{ 257{
258 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, EOLIAN_UNOP_INVALID); 258 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, EOLIAN_UNOP_INVALID);
@@ -261,7 +261,7 @@ eolian_expression_unary_operator_get(const Eolian_Expression *expr)
261 return expr->unop; 261 return expr->unop;
262} 262}
263 263
264EAPI const Eolian_Expression * 264EOLIAN_API const Eolian_Expression *
265eolian_expression_unary_expression_get(const Eolian_Expression *expr) 265eolian_expression_unary_expression_get(const Eolian_Expression *expr)
266{ 266{
267 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, NULL); 267 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, NULL);
@@ -269,7 +269,7 @@ eolian_expression_unary_expression_get(const Eolian_Expression *expr)
269 return expr->expr; 269 return expr->expr;
270} 270}
271 271
272EAPI Eolian_Value 272EOLIAN_API Eolian_Value
273eolian_expression_value_get(const Eolian_Expression *expr) 273eolian_expression_value_get(const Eolian_Expression *expr)
274{ 274{
275 Eolian_Value v; 275 Eolian_Value v;
@@ -283,7 +283,7 @@ eolian_expression_value_get(const Eolian_Expression *expr)
283 return v; 283 return v;
284} 284}
285 285
286EAPI Eina_Bool 286EOLIAN_API Eina_Bool
287eolian_expression_value_get_fill(const Eolian_Expression *expr, Eolian_Value *val) 287eolian_expression_value_get_fill(const Eolian_Expression *expr, Eolian_Value *val)
288{ 288{
289 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, EINA_FALSE); 289 EINA_SAFETY_ON_NULL_RETURN_VAL(expr, EINA_FALSE);
diff --git a/src/lib/eolian/database_function_api.c b/src/lib/eolian/database_function_api.c
index ca9454449b..9fa41bf73b 100644
--- a/src/lib/eolian/database_function_api.c
+++ b/src/lib/eolian/database_function_api.c
@@ -5,7 +5,7 @@
5#include <Eina.h> 5#include <Eina.h>
6#include "eolian_database.h" 6#include "eolian_database.h"
7 7
8EAPI Eolian_Object_Scope 8EOLIAN_API Eolian_Object_Scope
9eolian_function_scope_get(const Eolian_Function *fid, Eolian_Function_Type ftype) 9eolian_function_scope_get(const Eolian_Function *fid, Eolian_Function_Type ftype)
10{ 10{
11 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EOLIAN_SCOPE_UNKNOWN); 11 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EOLIAN_SCOPE_UNKNOWN);
@@ -30,7 +30,7 @@ eolian_function_scope_get(const Eolian_Function *fid, Eolian_Function_Type ftype
30 } 30 }
31} 31}
32 32
33EAPI Eolian_Function_Type 33EOLIAN_API Eolian_Function_Type
34eolian_function_type_get(const Eolian_Function *fid) 34eolian_function_type_get(const Eolian_Function *fid)
35{ 35{
36 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EOLIAN_UNRESOLVED); 36 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EOLIAN_UNRESOLVED);
@@ -80,7 +80,7 @@ _get_abbreviated_name(const char *prefix, const char *fname)
80 return ret; 80 return ret;
81} 81}
82 82
83EAPI Eina_Stringshare * 83EOLIAN_API Eina_Stringshare *
84eolian_function_full_c_name_get(const Eolian_Function *foo_id, 84eolian_function_full_c_name_get(const Eolian_Function *foo_id,
85 Eolian_Function_Type ftype) 85 Eolian_Function_Type ftype)
86{ 86{
@@ -109,21 +109,21 @@ eolian_function_full_c_name_get(const Eolian_Function *foo_id,
109 return ret; 109 return ret;
110} 110}
111 111
112EAPI const Eolian_Implement * 112EOLIAN_API const Eolian_Implement *
113eolian_function_implement_get(const Eolian_Function *fid) 113eolian_function_implement_get(const Eolian_Function *fid)
114{ 114{
115 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL); 115 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL);
116 return fid->impl; 116 return fid->impl;
117} 117}
118 118
119EAPI Eina_Bool 119EOLIAN_API Eina_Bool
120eolian_function_is_static(const Eolian_Function *fid) 120eolian_function_is_static(const Eolian_Function *fid)
121{ 121{
122 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EINA_FALSE); 122 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EINA_FALSE);
123 return fid->is_static; 123 return fid->is_static;
124} 124}
125 125
126EAPI Eina_Bool 126EOLIAN_API Eina_Bool
127eolian_function_is_constructor(const Eolian_Function *fid, const Eolian_Class *klass) 127eolian_function_is_constructor(const Eolian_Function *fid, const Eolian_Class *klass)
128{ 128{
129 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EINA_FALSE); 129 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EINA_FALSE);
@@ -152,7 +152,7 @@ _get_prop_values(const Eolian_Function *fid, Eolian_Function_Type ftype)
152 return l; 152 return l;
153} 153}
154 154
155EAPI Eina_Iterator * 155EOLIAN_API Eina_Iterator *
156eolian_property_keys_get(const Eolian_Function *fid, Eolian_Function_Type ftype) 156eolian_property_keys_get(const Eolian_Function *fid, Eolian_Function_Type ftype)
157{ 157{
158 Eina_List *l = NULL; 158 Eina_List *l = NULL;
@@ -163,7 +163,7 @@ eolian_property_keys_get(const Eolian_Function *fid, Eolian_Function_Type ftype)
163 return (l ? eina_list_iterator_new(l) : NULL); 163 return (l ? eina_list_iterator_new(l) : NULL);
164} 164}
165 165
166EAPI Eina_Iterator * 166EOLIAN_API Eina_Iterator *
167eolian_property_values_get(const Eolian_Function *fid, Eolian_Function_Type ftype) 167eolian_property_values_get(const Eolian_Function *fid, Eolian_Function_Type ftype)
168{ 168{
169 Eina_List *l = NULL; 169 Eina_List *l = NULL;
@@ -174,7 +174,7 @@ eolian_property_values_get(const Eolian_Function *fid, Eolian_Function_Type ftyp
174 return (l ? eina_list_iterator_new(l) : NULL); 174 return (l ? eina_list_iterator_new(l) : NULL);
175} 175}
176 176
177EAPI Eina_Iterator * 177EOLIAN_API Eina_Iterator *
178eolian_function_parameters_get(const Eolian_Function *fid) 178eolian_function_parameters_get(const Eolian_Function *fid)
179{ 179{
180 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL); 180 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL);
@@ -183,7 +183,7 @@ eolian_function_parameters_get(const Eolian_Function *fid)
183 return (fid->params ? eina_list_iterator_new(fid->params) : NULL); 183 return (fid->params ? eina_list_iterator_new(fid->params) : NULL);
184} 184}
185 185
186EAPI const Eolian_Type * 186EOLIAN_API const Eolian_Type *
187eolian_function_return_type_get(const Eolian_Function *fid, Eolian_Function_Type ftype) 187eolian_function_return_type_get(const Eolian_Function *fid, Eolian_Function_Type ftype)
188{ 188{
189 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL); 189 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL);
@@ -209,7 +209,7 @@ eolian_function_return_type_get(const Eolian_Function *fid, Eolian_Function_Type
209 } 209 }
210} 210}
211 211
212EAPI const Eolian_Expression * 212EOLIAN_API const Eolian_Expression *
213eolian_function_return_default_value_get(const Eolian_Function *fid, Eolian_Function_Type ftype) 213eolian_function_return_default_value_get(const Eolian_Function *fid, Eolian_Function_Type ftype)
214{ 214{
215 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL); 215 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL);
@@ -235,7 +235,7 @@ eolian_function_return_default_value_get(const Eolian_Function *fid, Eolian_Func
235 } 235 }
236} 236}
237 237
238EAPI const Eolian_Documentation * 238EOLIAN_API const Eolian_Documentation *
239eolian_function_return_documentation_get(const Eolian_Function *fid, Eolian_Function_Type ftype) 239eolian_function_return_documentation_get(const Eolian_Function *fid, Eolian_Function_Type ftype)
240{ 240{
241 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL); 241 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL);
@@ -261,7 +261,7 @@ eolian_function_return_documentation_get(const Eolian_Function *fid, Eolian_Func
261 } 261 }
262} 262}
263 263
264EAPI Eina_Bool 264EOLIAN_API Eina_Bool
265eolian_function_return_allow_unused(const Eolian_Function *fid, 265eolian_function_return_allow_unused(const Eolian_Function *fid,
266 Eolian_Function_Type ftype) 266 Eolian_Function_Type ftype)
267{ 267{
@@ -288,7 +288,7 @@ eolian_function_return_allow_unused(const Eolian_Function *fid,
288 } 288 }
289} 289}
290 290
291EAPI Eina_Bool 291EOLIAN_API Eina_Bool
292eolian_function_return_is_by_ref(const Eolian_Function *fid, 292eolian_function_return_is_by_ref(const Eolian_Function *fid,
293 Eolian_Function_Type ftype) 293 Eolian_Function_Type ftype)
294{ 294{
@@ -315,7 +315,7 @@ eolian_function_return_is_by_ref(const Eolian_Function *fid,
315 } 315 }
316} 316}
317 317
318EAPI Eina_Bool 318EOLIAN_API Eina_Bool
319eolian_function_return_is_move(const Eolian_Function *fid, 319eolian_function_return_is_move(const Eolian_Function *fid,
320 Eolian_Function_Type ftype) 320 Eolian_Function_Type ftype)
321{ 321{
@@ -342,7 +342,7 @@ eolian_function_return_is_move(const Eolian_Function *fid,
342 } 342 }
343} 343}
344 344
345EAPI Eina_Stringshare * 345EOLIAN_API Eina_Stringshare *
346eolian_function_return_c_type_get(const Eolian_Function *fid, 346eolian_function_return_c_type_get(const Eolian_Function *fid,
347 Eolian_Function_Type ftype) 347 Eolian_Function_Type ftype)
348{ 348{
@@ -382,14 +382,14 @@ eolian_function_return_c_type_get(const Eolian_Function *fid,
382 return ret; 382 return ret;
383} 383}
384 384
385EAPI Eina_Bool 385EOLIAN_API Eina_Bool
386eolian_function_object_is_const(const Eolian_Function *fid) 386eolian_function_object_is_const(const Eolian_Function *fid)
387{ 387{
388 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EINA_FALSE); 388 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, EINA_FALSE);
389 return fid->obj_is_const; 389 return fid->obj_is_const;
390} 390}
391 391
392EAPI const Eolian_Class * 392EOLIAN_API const Eolian_Class *
393eolian_function_class_get(const Eolian_Function *fid) 393eolian_function_class_get(const Eolian_Function *fid)
394{ 394{
395 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL); 395 EINA_SAFETY_ON_NULL_RETURN_VAL(fid, NULL);
diff --git a/src/lib/eolian/database_function_parameter_api.c b/src/lib/eolian/database_function_parameter_api.c
index f3b03388d8..80d7dbf7f3 100644
--- a/src/lib/eolian/database_function_parameter_api.c
+++ b/src/lib/eolian/database_function_parameter_api.c
@@ -5,56 +5,56 @@
5#include <Eina.h> 5#include <Eina.h>
6#include "eolian_database.h" 6#include "eolian_database.h"
7 7
8EAPI Eolian_Parameter_Direction 8EOLIAN_API Eolian_Parameter_Direction
9eolian_parameter_direction_get(const Eolian_Function_Parameter *param) 9eolian_parameter_direction_get(const Eolian_Function_Parameter *param)
10{ 10{
11 EINA_SAFETY_ON_NULL_RETURN_VAL(param, EOLIAN_PARAMETER_UNKNOWN); 11 EINA_SAFETY_ON_NULL_RETURN_VAL(param, EOLIAN_PARAMETER_UNKNOWN);
12 return param->param_dir; 12 return param->param_dir;
13} 13}
14 14
15EAPI const Eolian_Type * 15EOLIAN_API const Eolian_Type *
16eolian_parameter_type_get(const Eolian_Function_Parameter *param) 16eolian_parameter_type_get(const Eolian_Function_Parameter *param)
17{ 17{
18 EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL); 18 EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL);
19 return param->type; 19 return param->type;
20} 20}
21 21
22EAPI const Eolian_Expression * 22EOLIAN_API const Eolian_Expression *
23eolian_parameter_default_value_get(const Eolian_Function_Parameter *param) 23eolian_parameter_default_value_get(const Eolian_Function_Parameter *param)
24{ 24{
25 EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL); 25 EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL);
26 return param->value; 26 return param->value;
27} 27}
28 28
29EAPI const Eolian_Documentation * 29EOLIAN_API const Eolian_Documentation *
30eolian_parameter_documentation_get(const Eolian_Function_Parameter *param) 30eolian_parameter_documentation_get(const Eolian_Function_Parameter *param)
31{ 31{
32 EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL); 32 EINA_SAFETY_ON_NULL_RETURN_VAL(param, NULL);
33 return param->doc; 33 return param->doc;
34} 34}
35 35
36EAPI Eina_Bool 36EOLIAN_API Eina_Bool
37eolian_parameter_is_optional(const Eolian_Function_Parameter *param) 37eolian_parameter_is_optional(const Eolian_Function_Parameter *param)
38{ 38{
39 EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE); 39 EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE);
40 return param->optional; 40 return param->optional;
41} 41}
42 42
43EAPI Eina_Bool 43EOLIAN_API Eina_Bool
44eolian_parameter_is_move(const Eolian_Function_Parameter *param) 44eolian_parameter_is_move(const Eolian_Function_Parameter *param)
45{ 45{
46 EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE); 46 EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE);
47 return param->move; 47 return param->move;
48} 48}
49 49
50EAPI Eina_Bool 50EOLIAN_API Eina_Bool
51eolian_parameter_is_by_ref(const Eolian_Function_Parameter *param) 51eolian_parameter_is_by_ref(const Eolian_Function_Parameter *param)
52{ 52{
53 EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE); 53 EINA_SAFETY_ON_NULL_RETURN_VAL(param, EINA_FALSE);
54 return param->by_ref; 54 return param->by_ref;
55} 55}
56 56
57EAPI Eina_Stringshare * 57EOLIAN_API Eina_Stringshare *
58eolian_parameter_c_type_get(const Eolian_Function_Parameter *param_desc, 58eolian_parameter_c_type_get(const Eolian_Function_Parameter *param_desc,
59 Eina_Bool as_return) 59 Eina_Bool as_return)
60{ 60{
diff --git a/src/lib/eolian/database_implement_api.c b/src/lib/eolian/database_implement_api.c
index a373a77911..6f7ce79f0a 100644
--- a/src/lib/eolian/database_implement_api.c
+++ b/src/lib/eolian/database_implement_api.c
@@ -5,21 +5,21 @@
5#include <Eina.h> 5#include <Eina.h>
6#include "eolian_database.h" 6#include "eolian_database.h"
7 7
8EAPI const Eolian_Class * 8EOLIAN_API const Eolian_Class *
9eolian_implement_class_get(const Eolian_Implement *impl) 9eolian_implement_class_get(const Eolian_Implement *impl)
10{ 10{
11 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, NULL); 11 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, NULL);
12 return impl->klass; 12 return impl->klass;
13} 13}
14 14
15EAPI const Eolian_Class * 15EOLIAN_API const Eolian_Class *
16eolian_implement_implementing_class_get(const Eolian_Implement *impl) 16eolian_implement_implementing_class_get(const Eolian_Implement *impl)
17{ 17{
18 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, NULL); 18 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, NULL);
19 return impl->implklass; 19 return impl->implklass;
20} 20}
21 21
22EAPI const Eolian_Function * 22EOLIAN_API const Eolian_Function *
23eolian_implement_function_get(const Eolian_Implement *impl, 23eolian_implement_function_get(const Eolian_Implement *impl,
24 Eolian_Function_Type *func_type) 24 Eolian_Function_Type *func_type)
25{ 25{
@@ -43,7 +43,7 @@ eolian_implement_function_get(const Eolian_Implement *impl,
43 return impl->foo_id; 43 return impl->foo_id;
44} 44}
45 45
46EAPI const Eolian_Documentation * 46EOLIAN_API const Eolian_Documentation *
47eolian_implement_documentation_get(const Eolian_Implement *impl, 47eolian_implement_documentation_get(const Eolian_Implement *impl,
48 Eolian_Function_Type ftype) 48 Eolian_Function_Type ftype)
49{ 49{
@@ -56,7 +56,7 @@ eolian_implement_documentation_get(const Eolian_Implement *impl,
56 } 56 }
57} 57}
58 58
59EAPI Eina_Bool 59EOLIAN_API Eina_Bool
60eolian_implement_is_auto(const Eolian_Implement *impl, Eolian_Function_Type ftype) 60eolian_implement_is_auto(const Eolian_Implement *impl, Eolian_Function_Type ftype)
61{ 61{
62 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, EINA_FALSE); 62 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, EINA_FALSE);
@@ -75,7 +75,7 @@ eolian_implement_is_auto(const Eolian_Implement *impl, Eolian_Function_Type ftyp
75 } 75 }
76} 76}
77 77
78EAPI Eina_Bool 78EOLIAN_API Eina_Bool
79eolian_implement_is_empty(const Eolian_Implement *impl, Eolian_Function_Type ftype) 79eolian_implement_is_empty(const Eolian_Implement *impl, Eolian_Function_Type ftype)
80{ 80{
81 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, EINA_FALSE); 81 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, EINA_FALSE);
@@ -94,7 +94,7 @@ eolian_implement_is_empty(const Eolian_Implement *impl, Eolian_Function_Type fty
94 } 94 }
95} 95}
96 96
97EAPI Eina_Bool 97EOLIAN_API Eina_Bool
98eolian_implement_is_pure_virtual(const Eolian_Implement *impl, Eolian_Function_Type ftype) 98eolian_implement_is_pure_virtual(const Eolian_Implement *impl, Eolian_Function_Type ftype)
99{ 99{
100 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, EINA_FALSE); 100 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, EINA_FALSE);
@@ -113,14 +113,14 @@ eolian_implement_is_pure_virtual(const Eolian_Implement *impl, Eolian_Function_T
113 } 113 }
114} 114}
115 115
116EAPI Eina_Bool 116EOLIAN_API Eina_Bool
117eolian_implement_is_prop_get(const Eolian_Implement *impl) 117eolian_implement_is_prop_get(const Eolian_Implement *impl)
118{ 118{
119 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, EINA_FALSE); 119 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, EINA_FALSE);
120 return impl->is_prop_get; 120 return impl->is_prop_get;
121} 121}
122 122
123EAPI Eina_Bool 123EOLIAN_API Eina_Bool
124eolian_implement_is_prop_set(const Eolian_Implement *impl) 124eolian_implement_is_prop_set(const Eolian_Implement *impl)
125{ 125{
126 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, EINA_FALSE); 126 EINA_SAFETY_ON_NULL_RETURN_VAL(impl, EINA_FALSE);
diff --git a/src/lib/eolian/database_part_api.c b/src/lib/eolian/database_part_api.c
index 4fcd7c63fd..0b6225f275 100644
--- a/src/lib/eolian/database_part_api.c
+++ b/src/lib/eolian/database_part_api.c
@@ -5,14 +5,14 @@
5#include <Eina.h> 5#include <Eina.h>
6#include "eolian_database.h" 6#include "eolian_database.h"
7 7
8EAPI const Eolian_Class * 8EOLIAN_API const Eolian_Class *
9eolian_part_class_get(const Eolian_Part *part) 9eolian_part_class_get(const Eolian_Part *part)
10{ 10{
11 EINA_SAFETY_ON_NULL_RETURN_VAL(part, NULL); 11 EINA_SAFETY_ON_NULL_RETURN_VAL(part, NULL);
12 return part->klass; 12 return part->klass;
13} 13}
14 14
15EAPI const Eolian_Documentation * 15EOLIAN_API const Eolian_Documentation *
16eolian_part_documentation_get(const Eolian_Part *part) 16eolian_part_documentation_get(const Eolian_Part *part)
17{ 17{
18 EINA_SAFETY_ON_NULL_RETURN_VAL(part, NULL); 18 EINA_SAFETY_ON_NULL_RETURN_VAL(part, NULL);
diff --git a/src/lib/eolian/database_type_api.c b/src/lib/eolian/database_type_api.c
index ab2a591349..14f1b088ab 100644
--- a/src/lib/eolian/database_type_api.c
+++ b/src/lib/eolian/database_type_api.c
@@ -6,28 +6,28 @@
6#include "eolian_database.h" 6#include "eolian_database.h"
7#include "eo_lexer.h" 7#include "eo_lexer.h"
8 8
9EAPI Eolian_Type_Type 9EOLIAN_API Eolian_Type_Type
10eolian_type_type_get(const Eolian_Type *tp) 10eolian_type_type_get(const Eolian_Type *tp)
11{ 11{
12 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EOLIAN_TYPE_UNKNOWN_TYPE); 12 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EOLIAN_TYPE_UNKNOWN_TYPE);
13 return tp->type; 13 return tp->type;
14} 14}
15 15
16EAPI Eolian_Type_Builtin_Type 16EOLIAN_API Eolian_Type_Builtin_Type
17eolian_type_builtin_type_get(const Eolian_Type *tp) 17eolian_type_builtin_type_get(const Eolian_Type *tp)
18{ 18{
19 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EOLIAN_TYPE_BUILTIN_INVALID); 19 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EOLIAN_TYPE_BUILTIN_INVALID);
20 return tp->btype; 20 return tp->btype;
21} 21}
22 22
23EAPI Eolian_Typedecl_Type 23EOLIAN_API Eolian_Typedecl_Type
24eolian_typedecl_type_get(const Eolian_Typedecl *tp) 24eolian_typedecl_type_get(const Eolian_Typedecl *tp)
25{ 25{
26 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EOLIAN_TYPEDECL_UNKNOWN); 26 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EOLIAN_TYPEDECL_UNKNOWN);
27 return tp->type; 27 return tp->type;
28} 28}
29 29
30EAPI Eina_Iterator * 30EOLIAN_API Eina_Iterator *
31eolian_typedecl_struct_fields_get(const Eolian_Typedecl *tp) 31eolian_typedecl_struct_fields_get(const Eolian_Typedecl *tp)
32{ 32{
33 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 33 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
@@ -36,7 +36,7 @@ eolian_typedecl_struct_fields_get(const Eolian_Typedecl *tp)
36 return eina_list_iterator_new(tp->field_list); 36 return eina_list_iterator_new(tp->field_list);
37} 37}
38 38
39EAPI const Eolian_Struct_Type_Field * 39EOLIAN_API const Eolian_Struct_Type_Field *
40eolian_typedecl_struct_field_get(const Eolian_Typedecl *tp, const char *field) 40eolian_typedecl_struct_field_get(const Eolian_Typedecl *tp, const char *field)
41{ 41{
42 Eolian_Struct_Type_Field *sf = NULL; 42 Eolian_Struct_Type_Field *sf = NULL;
@@ -49,35 +49,35 @@ eolian_typedecl_struct_field_get(const Eolian_Typedecl *tp, const char *field)
49 return sf; 49 return sf;
50} 50}
51 51
52EAPI const Eolian_Documentation * 52EOLIAN_API const Eolian_Documentation *
53eolian_typedecl_struct_field_documentation_get(const Eolian_Struct_Type_Field *fl) 53eolian_typedecl_struct_field_documentation_get(const Eolian_Struct_Type_Field *fl)
54{ 54{
55 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, NULL); 55 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, NULL);
56 return fl->doc; 56 return fl->doc;
57} 57}
58 58
59EAPI const Eolian_Type * 59EOLIAN_API const Eolian_Type *
60eolian_typedecl_struct_field_type_get(const Eolian_Struct_Type_Field *fl) 60eolian_typedecl_struct_field_type_get(const Eolian_Struct_Type_Field *fl)
61{ 61{
62 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, NULL); 62 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, NULL);
63 return fl->type; 63 return fl->type;
64} 64}
65 65
66EAPI Eina_Bool 66EOLIAN_API Eina_Bool
67eolian_typedecl_struct_field_is_by_ref(const Eolian_Struct_Type_Field *fl) 67eolian_typedecl_struct_field_is_by_ref(const Eolian_Struct_Type_Field *fl)
68{ 68{
69 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, EINA_FALSE); 69 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, EINA_FALSE);
70 return fl->by_ref; 70 return fl->by_ref;
71} 71}
72 72
73EAPI Eina_Bool 73EOLIAN_API Eina_Bool
74eolian_typedecl_struct_field_is_move(const Eolian_Struct_Type_Field *fl) 74eolian_typedecl_struct_field_is_move(const Eolian_Struct_Type_Field *fl)
75{ 75{
76 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, EINA_FALSE); 76 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, EINA_FALSE);
77 return fl->move; 77 return fl->move;
78} 78}
79 79
80EAPI Eina_Stringshare * 80EOLIAN_API Eina_Stringshare *
81eolian_typedecl_struct_field_c_type_get(const Eolian_Struct_Type_Field *fl) 81eolian_typedecl_struct_field_c_type_get(const Eolian_Struct_Type_Field *fl)
82{ 82{
83 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, NULL); 83 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, NULL);
@@ -88,7 +88,7 @@ eolian_typedecl_struct_field_c_type_get(const Eolian_Struct_Type_Field *fl)
88 return ret; 88 return ret;
89} 89}
90 90
91EAPI Eina_Iterator * 91EOLIAN_API Eina_Iterator *
92eolian_typedecl_enum_fields_get(const Eolian_Typedecl *tp) 92eolian_typedecl_enum_fields_get(const Eolian_Typedecl *tp)
93{ 93{
94 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 94 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
@@ -97,7 +97,7 @@ eolian_typedecl_enum_fields_get(const Eolian_Typedecl *tp)
97 return eina_list_iterator_new(tp->field_list); 97 return eina_list_iterator_new(tp->field_list);
98} 98}
99 99
100EAPI const Eolian_Enum_Type_Field * 100EOLIAN_API const Eolian_Enum_Type_Field *
101eolian_typedecl_enum_field_get(const Eolian_Typedecl *tp, const char *field) 101eolian_typedecl_enum_field_get(const Eolian_Typedecl *tp, const char *field)
102{ 102{
103 Eolian_Enum_Type_Field *ef = NULL; 103 Eolian_Enum_Type_Field *ef = NULL;
@@ -110,7 +110,7 @@ eolian_typedecl_enum_field_get(const Eolian_Typedecl *tp, const char *field)
110 return ef; 110 return ef;
111} 111}
112 112
113EAPI Eina_Stringshare * 113EOLIAN_API Eina_Stringshare *
114eolian_typedecl_enum_field_c_constant_get(const Eolian_Enum_Type_Field *fl) 114eolian_typedecl_enum_field_c_constant_get(const Eolian_Enum_Type_Field *fl)
115{ 115{
116 Eina_Stringshare *ret; 116 Eina_Stringshare *ret;
@@ -133,14 +133,14 @@ eolian_typedecl_enum_field_c_constant_get(const Eolian_Enum_Type_Field *fl)
133 return ret; 133 return ret;
134} 134}
135 135
136EAPI const Eolian_Documentation * 136EOLIAN_API const Eolian_Documentation *
137eolian_typedecl_enum_field_documentation_get(const Eolian_Enum_Type_Field *fl) 137eolian_typedecl_enum_field_documentation_get(const Eolian_Enum_Type_Field *fl)
138{ 138{
139 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, NULL); 139 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, NULL);
140 return fl->doc; 140 return fl->doc;
141} 141}
142 142
143EAPI const Eolian_Expression * 143EOLIAN_API const Eolian_Expression *
144eolian_typedecl_enum_field_value_get(const Eolian_Enum_Type_Field *fl, Eina_Bool force) 144eolian_typedecl_enum_field_value_get(const Eolian_Enum_Type_Field *fl, Eina_Bool force)
145{ 145{
146 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, NULL); 146 EINA_SAFETY_ON_NULL_RETURN_VAL(fl, NULL);
@@ -148,7 +148,7 @@ eolian_typedecl_enum_field_value_get(const Eolian_Enum_Type_Field *fl, Eina_Bool
148 return fl->value; 148 return fl->value;
149} 149}
150 150
151EAPI const char * 151EOLIAN_API const char *
152eolian_typedecl_enum_legacy_prefix_get(const Eolian_Typedecl *tp) 152eolian_typedecl_enum_legacy_prefix_get(const Eolian_Typedecl *tp)
153{ 153{
154 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 154 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
@@ -157,28 +157,28 @@ eolian_typedecl_enum_legacy_prefix_get(const Eolian_Typedecl *tp)
157 return tp->legacy; 157 return tp->legacy;
158} 158}
159 159
160EAPI const Eolian_Documentation * 160EOLIAN_API const Eolian_Documentation *
161eolian_typedecl_documentation_get(const Eolian_Typedecl *tp) 161eolian_typedecl_documentation_get(const Eolian_Typedecl *tp)
162{ 162{
163 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 163 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
164 return tp->doc; 164 return tp->doc;
165} 165}
166 166
167EAPI const Eolian_Type * 167EOLIAN_API const Eolian_Type *
168eolian_type_base_type_get(const Eolian_Type *tp) 168eolian_type_base_type_get(const Eolian_Type *tp)
169{ 169{
170 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 170 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
171 return tp->base_type; 171 return tp->base_type;
172} 172}
173 173
174EAPI const Eolian_Type * 174EOLIAN_API const Eolian_Type *
175eolian_type_next_type_get(const Eolian_Type *tp) 175eolian_type_next_type_get(const Eolian_Type *tp)
176{ 176{
177 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 177 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
178 return tp->next_type; 178 return tp->next_type;
179} 179}
180 180
181EAPI const Eolian_Typedecl * 181EOLIAN_API const Eolian_Typedecl *
182eolian_type_typedecl_get(const Eolian_Type *tp) 182eolian_type_typedecl_get(const Eolian_Type *tp)
183{ 183{
184 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 184 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
@@ -187,14 +187,14 @@ eolian_type_typedecl_get(const Eolian_Type *tp)
187 return tp->tdecl; 187 return tp->tdecl;
188} 188}
189 189
190EAPI const Eolian_Type * 190EOLIAN_API const Eolian_Type *
191eolian_typedecl_base_type_get(const Eolian_Typedecl *tp) 191eolian_typedecl_base_type_get(const Eolian_Typedecl *tp)
192{ 192{
193 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 193 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
194 return tp->base_type; 194 return tp->base_type;
195} 195}
196 196
197EAPI const Eolian_Type * 197EOLIAN_API const Eolian_Type *
198eolian_type_aliased_base_get(const Eolian_Type *tp) 198eolian_type_aliased_base_get(const Eolian_Type *tp)
199{ 199{
200 if (!tp || tp->type != EOLIAN_TYPE_REGULAR || tp->is_ptr) 200 if (!tp || tp->type != EOLIAN_TYPE_REGULAR || tp->is_ptr)
@@ -205,7 +205,7 @@ eolian_type_aliased_base_get(const Eolian_Type *tp)
205 return tp; 205 return tp;
206} 206}
207 207
208EAPI const Eolian_Type * 208EOLIAN_API const Eolian_Type *
209eolian_typedecl_aliased_base_get(const Eolian_Typedecl *tp) 209eolian_typedecl_aliased_base_get(const Eolian_Typedecl *tp)
210{ 210{
211 if (!tp || tp->type != EOLIAN_TYPEDECL_ALIAS) 211 if (!tp || tp->type != EOLIAN_TYPEDECL_ALIAS)
@@ -213,7 +213,7 @@ eolian_typedecl_aliased_base_get(const Eolian_Typedecl *tp)
213 return eolian_type_aliased_base_get(tp->base_type); 213 return eolian_type_aliased_base_get(tp->base_type);
214} 214}
215 215
216EAPI const Eolian_Class * 216EOLIAN_API const Eolian_Class *
217eolian_type_class_get(const Eolian_Type *tp) 217eolian_type_class_get(const Eolian_Type *tp)
218{ 218{
219 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 219 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
@@ -222,7 +222,7 @@ eolian_type_class_get(const Eolian_Type *tp)
222 return tp->klass; 222 return tp->klass;
223} 223}
224 224
225EAPI const Eolian_Error * 225EOLIAN_API const Eolian_Error *
226eolian_type_error_get(const Eolian_Type *tp) 226eolian_type_error_get(const Eolian_Type *tp)
227{ 227{
228 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 228 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
@@ -231,35 +231,35 @@ eolian_type_error_get(const Eolian_Type *tp)
231 return tp->error; 231 return tp->error;
232} 232}
233 233
234EAPI Eina_Bool 234EOLIAN_API Eina_Bool
235eolian_type_is_move(const Eolian_Type *tp) 235eolian_type_is_move(const Eolian_Type *tp)
236{ 236{
237 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EINA_FALSE); 237 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EINA_FALSE);
238 return tp->move; 238 return tp->move;
239} 239}
240 240
241EAPI Eina_Bool 241EOLIAN_API Eina_Bool
242eolian_type_is_const(const Eolian_Type *tp) 242eolian_type_is_const(const Eolian_Type *tp)
243{ 243{
244 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EINA_FALSE); 244 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EINA_FALSE);
245 return tp->is_const; 245 return tp->is_const;
246} 246}
247 247
248EAPI Eina_Bool 248EOLIAN_API Eina_Bool
249eolian_type_is_ptr(const Eolian_Type *tp) 249eolian_type_is_ptr(const Eolian_Type *tp)
250{ 250{
251 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EINA_FALSE); 251 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EINA_FALSE);
252 return tp->is_ptr; 252 return tp->is_ptr;
253} 253}
254 254
255EAPI Eina_Bool 255EOLIAN_API Eina_Bool
256eolian_typedecl_is_extern(const Eolian_Typedecl *tp) 256eolian_typedecl_is_extern(const Eolian_Typedecl *tp)
257{ 257{
258 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EINA_FALSE); 258 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, EINA_FALSE);
259 return tp->is_extern; 259 return tp->is_extern;
260} 260}
261 261
262EAPI Eina_Stringshare * 262EOLIAN_API Eina_Stringshare *
263eolian_type_c_type_get(const Eolian_Type *tp) 263eolian_type_c_type_get(const Eolian_Type *tp)
264{ 264{
265 Eina_Stringshare *ret; 265 Eina_Stringshare *ret;
@@ -272,7 +272,7 @@ eolian_type_c_type_get(const Eolian_Type *tp)
272 return ret; 272 return ret;
273} 273}
274 274
275EAPI Eina_Stringshare * 275EOLIAN_API Eina_Stringshare *
276eolian_typedecl_c_type_get(const Eolian_Typedecl *tp) 276eolian_typedecl_c_type_get(const Eolian_Typedecl *tp)
277{ 277{
278 Eina_Stringshare *ret; 278 Eina_Stringshare *ret;
@@ -285,14 +285,14 @@ eolian_typedecl_c_type_get(const Eolian_Typedecl *tp)
285 return ret; 285 return ret;
286} 286}
287 287
288EAPI const char * 288EOLIAN_API const char *
289eolian_typedecl_free_func_get(const Eolian_Typedecl *tp) 289eolian_typedecl_free_func_get(const Eolian_Typedecl *tp)
290{ 290{
291 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 291 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
292 return tp->freefunc; 292 return tp->freefunc;
293} 293}
294 294
295EAPI const Eolian_Function * 295EOLIAN_API const Eolian_Function *
296eolian_typedecl_function_pointer_get(const Eolian_Typedecl *tp) 296eolian_typedecl_function_pointer_get(const Eolian_Typedecl *tp)
297{ 297{
298 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL); 298 EINA_SAFETY_ON_NULL_RETURN_VAL(tp, NULL);
diff --git a/src/lib/eolian/database_var_api.c b/src/lib/eolian/database_var_api.c
index b6f2d1f1bc..18eaa69e21 100644
--- a/src/lib/eolian/database_var_api.c
+++ b/src/lib/eolian/database_var_api.c
@@ -5,28 +5,28 @@
5#include <Eina.h> 5#include <Eina.h>
6#include "eolian_database.h" 6#include "eolian_database.h"
7 7
8EAPI const Eolian_Documentation * 8EOLIAN_API const Eolian_Documentation *
9eolian_constant_documentation_get(const Eolian_Constant *var) 9eolian_constant_documentation_get(const Eolian_Constant *var)
10{ 10{
11 EINA_SAFETY_ON_NULL_RETURN_VAL(var, NULL); 11 EINA_SAFETY_ON_NULL_RETURN_VAL(var, NULL);
12 return var->doc; 12 return var->doc;
13} 13}
14 14
15EAPI const Eolian_Type * 15EOLIAN_API const Eolian_Type *
16eolian_constant_type_get(const Eolian_Constant *var) 16eolian_constant_type_get(const Eolian_Constant *var)
17{ 17{
18 EINA_SAFETY_ON_NULL_RETURN_VAL(var, NULL); 18 EINA_SAFETY_ON_NULL_RETURN_VAL(var, NULL);
19 return var->base_type; 19 return var->base_type;
20} 20}
21 21
22EAPI const Eolian_Expression * 22EOLIAN_API const Eolian_Expression *
23eolian_constant_value_get(const Eolian_Constant *var) 23eolian_constant_value_get(const Eolian_Constant *var)
24{ 24{
25 EINA_SAFETY_ON_NULL_RETURN_VAL(var, NULL); 25 EINA_SAFETY_ON_NULL_RETURN_VAL(var, NULL);
26 return var->value; 26 return var->value;
27} 27}
28 28
29EAPI Eina_Bool 29EOLIAN_API Eina_Bool
30eolian_constant_is_extern(const Eolian_Constant *var) 30eolian_constant_is_extern(const Eolian_Constant *var)
31{ 31{
32 EINA_SAFETY_ON_NULL_RETURN_VAL(var, EINA_FALSE); 32 EINA_SAFETY_ON_NULL_RETURN_VAL(var, EINA_FALSE);
diff --git a/src/lib/eolian/eo_parser.h b/src/lib/eolian/eo_parser.h
index 52029138fc..084d8b822b 100644
--- a/src/lib/eolian/eo_parser.h
+++ b/src/lib/eolian/eo_parser.h
@@ -1,8 +1,9 @@
1#ifndef __EO_PARSER_H__ 1#ifndef __EO_PARSER_H__
2#define __EO_PARSER_H__ 2#define __EO_PARSER_H__
3 3
4#include "eolian_api.h"
4#include "eo_lexer.h" 5#include "eo_lexer.h"
5 6
6Eolian_Unit *eo_parser_database_fill(Eolian_Unit *parent, const char *filename, Eina_Bool eot); 7Eolian_Unit *eo_parser_database_fill(Eolian_Unit *parent, const char *filename, Eina_Bool eot);
7 8
8#endif /* __EO_PARSER_H__ */ \ No newline at end of file 9#endif /* __EO_PARSER_H__ */
diff --git a/src/lib/eolian/eolian.c b/src/lib/eolian/eolian.c
index 81067ebf44..00a96a5ce3 100644
--- a/src/lib/eolian/eolian.c
+++ b/src/lib/eolian/eolian.c
@@ -9,7 +9,7 @@ static int _eolian_init_counter = 0;
9int _eolian_log_dom = -1; 9int _eolian_log_dom = -1;
10Eina_Prefix *_eolian_prefix = NULL; 10Eina_Prefix *_eolian_prefix = NULL;
11 11
12EAPI int eolian_init(void) 12EOLIAN_API int eolian_init(void)
13{ 13{
14 const char *log_dom = "eolian"; 14 const char *log_dom = "eolian";
15 if (_eolian_init_counter > 0) return ++_eolian_init_counter; 15 if (_eolian_init_counter > 0) return ++_eolian_init_counter;
@@ -40,7 +40,7 @@ EAPI int eolian_init(void)
40 return ++_eolian_init_counter; 40 return ++_eolian_init_counter;
41} 41}
42 42
43EAPI int eolian_shutdown(void) 43EOLIAN_API int eolian_shutdown(void)
44{ 44{
45 if (_eolian_init_counter <= 0) 45 if (_eolian_init_counter <= 0)
46 { 46 {
@@ -68,7 +68,7 @@ EAPI int eolian_shutdown(void)
68 return _eolian_init_counter; 68 return _eolian_init_counter;
69} 69}
70 70
71EAPI unsigned short eolian_file_format_version_get(void) 71EOLIAN_API unsigned short eolian_file_format_version_get(void)
72{ 72{
73 return EOLIAN_FILE_FORMAT_VERSION; 73 return EOLIAN_FILE_FORMAT_VERSION;
74} 74}
diff --git a/src/lib/eolian/eolian_api.h b/src/lib/eolian/eolian_api.h
new file mode 100644
index 0000000000..e2cfa7a524
--- /dev/null
+++ b/src/lib/eolian/eolian_api.h
@@ -0,0 +1,34 @@
1#ifndef _EFL_EOLIAN_API_H
2#define _EFL_EOLIAN_API_H
3
4#ifdef EOLIAN_API
5#error EOLIAN_API should not be already defined
6#endif
7
8#ifdef _WIN32
9# ifndef EOLIAN_STATIC
10# ifdef EOLIAN_BUILD
11# define EOLIAN_API __declspec(dllexport)
12# else
13# define EOLIAN_API __declspec(dllimport)
14# endif
15# else
16# define EOLIAN_API
17# endif
18# define EOLIAN_API_WEAK
19#else
20# ifdef __GNUC__
21# if __GNUC__ >= 4
22# define EOLIAN_API __attribute__ ((visibility("default")))
23# define EOLIAN_API_WEAK __attribute__ ((weak))
24# else
25# define EOLIAN_API
26# define EOLIAN_API_WEAK
27# endif
28# else
29# define EOLIAN_API
30# define EOLIAN_API_WEAK
31# endif
32#endif
33
34#endif
diff --git a/src/lib/eolian/eolian_aux.c b/src/lib/eolian/eolian_aux.c
index 400a82ac1c..6e592706d0 100644
--- a/src/lib/eolian/eolian_aux.c
+++ b/src/lib/eolian/eolian_aux.c
@@ -10,7 +10,7 @@ _hashlist_free(void *ptr)
10 eina_list_free((Eina_List *)ptr); 10 eina_list_free((Eina_List *)ptr);
11} 11}
12 12
13EAPI Eina_Hash * 13EOLIAN_API Eina_Hash *
14eolian_aux_state_class_children_find(const Eolian_State *state) 14eolian_aux_state_class_children_find(const Eolian_State *state)
15{ 15{
16 if (!state) 16 if (!state)
@@ -105,7 +105,7 @@ _callables_find(const Eolian_Class *cl, Eina_List **funcs,
105 return total; 105 return total;
106} 106}
107 107
108EAPI size_t 108EOLIAN_API size_t
109eolian_aux_class_callables_get(const Eolian_Class *klass, 109eolian_aux_class_callables_get(const Eolian_Class *klass,
110 Eina_List **funcs, Eina_List **events, 110 Eina_List **funcs, Eina_List **events,
111 size_t *ownfuncs, size_t *ownevs) 111 size_t *ownfuncs, size_t *ownevs)
@@ -178,7 +178,7 @@ _all_impls_find(Eina_List **l, const Eolian_Class *cl,
178 _all_impls_find(l, icl, func, got, children); 178 _all_impls_find(l, icl, func, got, children);
179} 179}
180 180
181EAPI Eina_List * 181EOLIAN_API Eina_List *
182eolian_aux_function_all_implements_get(const Eolian_Function *func, 182eolian_aux_function_all_implements_get(const Eolian_Function *func,
183 Eina_Hash *class_children) 183 Eina_Hash *class_children)
184{ 184{
@@ -239,7 +239,7 @@ _parent_impl_find(const char *fulln, const Eolian_Class *cl)
239 return NULL; 239 return NULL;
240} 240}
241 241
242EAPI const Eolian_Implement * 242EOLIAN_API const Eolian_Implement *
243eolian_aux_implement_parent_get(const Eolian_Implement *impl) 243eolian_aux_implement_parent_get(const Eolian_Implement *impl)
244{ 244{
245 return _parent_impl_find(eolian_implement_name_get(impl), 245 return _parent_impl_find(eolian_implement_name_get(impl),
@@ -262,7 +262,7 @@ _parent_documentation_find(const Eolian_Implement *impl,
262 return pdoc; 262 return pdoc;
263} 263}
264 264
265EAPI const Eolian_Documentation * 265EOLIAN_API const Eolian_Documentation *
266eolian_aux_implement_documentation_get(const Eolian_Implement *impl, 266eolian_aux_implement_documentation_get(const Eolian_Implement *impl,
267 Eolian_Function_Type ftype) 267 Eolian_Function_Type ftype)
268{ 268{
@@ -286,7 +286,7 @@ eolian_aux_implement_documentation_get(const Eolian_Implement *impl,
286 return _parent_documentation_find(impl, ftype); 286 return _parent_documentation_find(impl, ftype);
287} 287}
288 288
289EAPI const Eolian_Documentation * 289EOLIAN_API const Eolian_Documentation *
290eolian_aux_implement_documentation_fallback_get(const Eolian_Implement *impl) 290eolian_aux_implement_documentation_fallback_get(const Eolian_Implement *impl)
291{ 291{
292 Eina_Bool ig = eolian_implement_is_prop_get(impl), 292 Eina_Bool ig = eolian_implement_is_prop_get(impl),
diff --git a/src/lib/eolian/eolian_database.c b/src/lib/eolian/eolian_database.c
index 14b0a9a4cc..b2542434a3 100644
--- a/src/lib/eolian/eolian_database.c
+++ b/src/lib/eolian/eolian_database.c
@@ -18,49 +18,49 @@ database_object_add(Eolian_Unit *unit, const Eolian_Object *obj)
18 ((Eina_List *)eina_hash_find(unit->state->staging.objects_f, obj->file), obj)); 18 ((Eina_List *)eina_hash_find(unit->state->staging.objects_f, obj->file), obj));
19} 19}
20 20
21EAPI Eolian_Object_Type 21EOLIAN_API Eolian_Object_Type
22eolian_object_type_get(const Eolian_Object *obj) 22eolian_object_type_get(const Eolian_Object *obj)
23{ 23{
24 if (!obj) return EOLIAN_OBJECT_UNKNOWN; 24 if (!obj) return EOLIAN_OBJECT_UNKNOWN;
25 return obj->type; 25 return obj->type;
26} 26}
27 27
28EAPI const Eolian_Unit * 28EOLIAN_API const Eolian_Unit *
29eolian_object_unit_get(const Eolian_Object *obj) 29eolian_object_unit_get(const Eolian_Object *obj)
30{ 30{
31 if (!obj) return NULL; 31 if (!obj) return NULL;
32 return obj->unit; 32 return obj->unit;
33} 33}
34 34
35EAPI const char * 35EOLIAN_API const char *
36eolian_object_file_get(const Eolian_Object *obj) 36eolian_object_file_get(const Eolian_Object *obj)
37{ 37{
38 if (!obj) return NULL; 38 if (!obj) return NULL;
39 return obj->file; 39 return obj->file;
40} 40}
41 41
42EAPI int 42EOLIAN_API int
43eolian_object_line_get(const Eolian_Object *obj) 43eolian_object_line_get(const Eolian_Object *obj)
44{ 44{
45 if (!obj) return 0; 45 if (!obj) return 0;
46 return obj->line; 46 return obj->line;
47} 47}
48 48
49EAPI int 49EOLIAN_API int
50eolian_object_column_get(const Eolian_Object *obj) 50eolian_object_column_get(const Eolian_Object *obj)
51{ 51{
52 if (!obj) return 0; 52 if (!obj) return 0;
53 return obj->column; 53 return obj->column;
54} 54}
55 55
56EAPI const char * 56EOLIAN_API const char *
57eolian_object_name_get(const Eolian_Object *obj) 57eolian_object_name_get(const Eolian_Object *obj)
58{ 58{
59 if (!obj) return NULL; 59 if (!obj) return NULL;
60 return obj->name; 60 return obj->name;
61} 61}
62 62
63EAPI const char * 63EOLIAN_API const char *
64eolian_object_c_name_get(const Eolian_Object *obj) 64eolian_object_c_name_get(const Eolian_Object *obj)
65{ 65{
66 if (!obj) return NULL; 66 if (!obj) return NULL;
@@ -95,7 +95,7 @@ _nmsp_container_get(Eina_Iterator *it EINA_UNUSED)
95 return NULL; 95 return NULL;
96} 96}
97 97
98EAPI const char * 98EOLIAN_API const char *
99eolian_object_short_name_get(const Eolian_Object *obj) 99eolian_object_short_name_get(const Eolian_Object *obj)
100{ 100{
101 if (!obj || !obj->name) return NULL; 101 if (!obj || !obj->name) return NULL;
@@ -105,7 +105,7 @@ eolian_object_short_name_get(const Eolian_Object *obj)
105 return obj->name; 105 return obj->name;
106} 106}
107 107
108EAPI Eina_Iterator * 108EOLIAN_API Eina_Iterator *
109eolian_object_namespaces_get(const Eolian_Object *obj) 109eolian_object_namespaces_get(const Eolian_Object *obj)
110{ 110{
111 if (!obj || !obj->name || !strchr(obj->name, '.')) return NULL; 111 if (!obj || !obj->name || !strchr(obj->name, '.')) return NULL;
@@ -126,7 +126,7 @@ eolian_object_namespaces_get(const Eolian_Object *obj)
126 return &it->itr; 126 return &it->itr;
127} 127}
128 128
129EAPI Eina_Bool 129EOLIAN_API Eina_Bool
130eolian_object_is_beta(const Eolian_Object *obj) 130eolian_object_is_beta(const Eolian_Object *obj)
131{ 131{
132 if (!obj) return EINA_FALSE; 132 if (!obj) return EINA_FALSE;
@@ -143,28 +143,28 @@ void database_doc_del(Eolian_Documentation *doc)
143 free(doc); 143 free(doc);
144} 144}
145 145
146EAPI const char * 146EOLIAN_API const char *
147eolian_documentation_summary_get(const Eolian_Documentation *doc) 147eolian_documentation_summary_get(const Eolian_Documentation *doc)
148{ 148{
149 EINA_SAFETY_ON_NULL_RETURN_VAL(doc, NULL); 149 EINA_SAFETY_ON_NULL_RETURN_VAL(doc, NULL);
150 return doc->summary; 150 return doc->summary;
151} 151}
152 152
153EAPI const char * 153EOLIAN_API const char *
154eolian_documentation_description_get(const Eolian_Documentation *doc) 154eolian_documentation_description_get(const Eolian_Documentation *doc)
155{ 155{
156 EINA_SAFETY_ON_NULL_RETURN_VAL(doc, NULL); 156 EINA_SAFETY_ON_NULL_RETURN_VAL(doc, NULL);
157 return doc->description; 157 return doc->description;
158} 158}
159 159
160EAPI const char * 160EOLIAN_API const char *
161eolian_documentation_since_get(const Eolian_Documentation *doc) 161eolian_documentation_since_get(const Eolian_Documentation *doc)
162{ 162{
163 EINA_SAFETY_ON_NULL_RETURN_VAL(doc, NULL); 163 EINA_SAFETY_ON_NULL_RETURN_VAL(doc, NULL);
164 return doc->since; 164 return doc->since;
165} 165}
166 166
167EAPI Eina_List * 167EOLIAN_API Eina_List *
168eolian_documentation_string_split(const char *doc) 168eolian_documentation_string_split(const char *doc)
169{ 169{
170 EINA_SAFETY_ON_NULL_RETURN_VAL(doc, NULL); 170 EINA_SAFETY_ON_NULL_RETURN_VAL(doc, NULL);
@@ -259,7 +259,7 @@ _get_ref_token(const char *doc, const char **doc_end)
259 return EOLIAN_DOC_TOKEN_REF; 259 return EOLIAN_DOC_TOKEN_REF;
260} 260}
261 261
262EAPI const char * 262EOLIAN_API const char *
263eolian_documentation_tokenize(const char *doc, Eolian_Doc_Token *ret) 263eolian_documentation_tokenize(const char *doc, Eolian_Doc_Token *ret)
264{ 264{
265 /* token is used for statekeeping, so force it */ 265 /* token is used for statekeeping, so force it */
@@ -393,7 +393,7 @@ mloop:
393 return ret->text_end; 393 return ret->text_end;
394} 394}
395 395
396EAPI void 396EOLIAN_API void
397eolian_doc_token_init(Eolian_Doc_Token *tok) 397eolian_doc_token_init(Eolian_Doc_Token *tok)
398{ 398{
399 if (!tok) 399 if (!tok)
@@ -402,14 +402,14 @@ eolian_doc_token_init(Eolian_Doc_Token *tok)
402 tok->text = tok->text_end = NULL; 402 tok->text = tok->text_end = NULL;
403} 403}
404 404
405EAPI Eolian_Doc_Token_Type 405EOLIAN_API Eolian_Doc_Token_Type
406eolian_doc_token_type_get(const Eolian_Doc_Token *tok) 406eolian_doc_token_type_get(const Eolian_Doc_Token *tok)
407{ 407{
408 EINA_SAFETY_ON_NULL_RETURN_VAL(tok, EOLIAN_DOC_TOKEN_UNKNOWN); 408 EINA_SAFETY_ON_NULL_RETURN_VAL(tok, EOLIAN_DOC_TOKEN_UNKNOWN);
409 return tok->type; 409 return tok->type;
410} 410}
411 411
412EAPI char * 412EOLIAN_API char *
413eolian_doc_token_text_get(const Eolian_Doc_Token *tok) 413eolian_doc_token_text_get(const Eolian_Doc_Token *tok)
414{ 414{
415 EINA_SAFETY_ON_NULL_RETURN_VAL(tok, NULL); 415 EINA_SAFETY_ON_NULL_RETURN_VAL(tok, NULL);
@@ -574,7 +574,7 @@ database_doc_token_ref_resolve(const Eolian_Doc_Token *tok,
574 return EOLIAN_OBJECT_FUNCTION; 574 return EOLIAN_OBJECT_FUNCTION;
575} 575}
576 576
577EAPI Eolian_Object_Type 577EOLIAN_API Eolian_Object_Type
578eolian_doc_token_ref_resolve(const Eolian_Doc_Token *tok, const Eolian_State *state, 578eolian_doc_token_ref_resolve(const Eolian_Doc_Token *tok, const Eolian_State *state,
579 const Eolian_Object **data, const Eolian_Object **data2) 579 const Eolian_Object **data, const Eolian_Object **data2)
580{ 580{
@@ -704,7 +704,7 @@ _default_error_cb(const Eolian_Object *obj, const char *msg, void *data EINA_UNU
704 _eolian_log(msg); 704 _eolian_log(msg);
705} 705}
706 706
707EAPI Eolian_State * 707EOLIAN_API Eolian_State *
708eolian_state_new(void) 708eolian_state_new(void)
709{ 709{
710 Eolian_State *state = calloc(1, sizeof(Eolian_State)); 710 Eolian_State *state = calloc(1, sizeof(Eolian_State));
@@ -733,7 +733,7 @@ eolian_state_new(void)
733 return state; 733 return state;
734} 734}
735 735
736EAPI void 736EOLIAN_API void
737eolian_state_free(Eolian_State *state) 737eolian_state_free(Eolian_State *state)
738{ 738{
739 if (!state) 739 if (!state)
@@ -750,7 +750,7 @@ eolian_state_free(Eolian_State *state)
750 free(state); 750 free(state);
751} 751}
752 752
753EAPI Eolian_Panic_Cb 753EOLIAN_API Eolian_Panic_Cb
754eolian_state_panic_cb_set(Eolian_State *state, Eolian_Panic_Cb cb) 754eolian_state_panic_cb_set(Eolian_State *state, Eolian_Panic_Cb cb)
755{ 755{
756 Eolian_Panic_Cb old_cb = state->panic; 756 Eolian_Panic_Cb old_cb = state->panic;
@@ -758,7 +758,7 @@ eolian_state_panic_cb_set(Eolian_State *state, Eolian_Panic_Cb cb)
758 return old_cb; 758 return old_cb;
759} 759}
760 760
761EAPI Eolian_Error_Cb 761EOLIAN_API Eolian_Error_Cb
762eolian_state_error_cb_set(Eolian_State *state, Eolian_Error_Cb cb) 762eolian_state_error_cb_set(Eolian_State *state, Eolian_Error_Cb cb)
763{ 763{
764 Eolian_Error_Cb old_cb = state->error; 764 Eolian_Error_Cb old_cb = state->error;
@@ -766,7 +766,7 @@ eolian_state_error_cb_set(Eolian_State *state, Eolian_Error_Cb cb)
766 return old_cb; 766 return old_cb;
767} 767}
768 768
769EAPI void * 769EOLIAN_API void *
770eolian_state_error_data_set(Eolian_State *state, void *data) 770eolian_state_error_data_set(Eolian_State *state, void *data)
771{ 771{
772 void *old_data = state->error_data; 772 void *old_data = state->error_data;
@@ -822,7 +822,7 @@ _scan_cb(const char *name, const char *path, void *data)
822 eina_hash_add(fh, name, newpath); 822 eina_hash_add(fh, name, newpath);
823} 823}
824 824
825EAPI Eina_Bool 825EOLIAN_API Eina_Bool
826eolian_state_directory_add(Eolian_State *state, const char *dir) 826eolian_state_directory_add(Eolian_State *state, const char *dir)
827{ 827{
828 if (!dir || !state) return EINA_FALSE; 828 if (!dir || !state) return EINA_FALSE;
@@ -830,7 +830,7 @@ eolian_state_directory_add(Eolian_State *state, const char *dir)
830 return eina_file_dir_list