EAPI EAPI_WEAK EFL_FUNC_BODYV(efl_pack_table, Eina_Bool, 0, EFL_FUNC_CALL(subobj, col, row, colspan, rowspan), Efl_Gfx_Entity *subobj, int col, int row, int colspan, int rowspan);
EAPI EAPI_WEAK EFL_FUNC_BODYV(efl_pack_table_contents_get, Eina_Iterator *, NULL, EFL_FUNC_CALL(col, row, below), int col, int row, Eina_Bool below);
EAPI EAPI_WEAK EFL_FUNC_BODYV(efl_pack_table_content_get, Efl_Gfx_Entity *, NULL, EFL_FUNC_CALL(col, row), int col, int row);
EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_pack_table_cell_column_set, EFL_FUNC_CALL(subobj, col, colspan), Efl_Gfx_Entity *subobj, int col, int colspan);
EAPI EAPI_WEAK EFL_FUNC_BODYV_CONST(efl_pack_table_cell_column_get, Eina_Bool, 0, EFL_FUNC_CALL(subobj, col, colspan), Efl_Gfx_Entity *subobj, int *col, int *colspan);
EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_pack_table_cell_row_set, EFL_FUNC_CALL(subobj, row, rowspan), Efl_Gfx_Entity *subobj, int row, int rowspan);
EAPI EAPI_WEAK EFL_FUNC_BODYV_CONST(efl_pack_table_cell_row_get, Eina_Bool, 0, EFL_FUNC_CALL(subobj, row, rowspan), Efl_Gfx_Entity *subobj, int *row, int *rowspan);
EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_pack_table_size_set, EFL_FUNC_CALL(cols, rows), int cols, int rows);
EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV_CONST(efl_pack_table_size_get, EFL_FUNC_CALL(cols, rows), int *cols, int *rows);

static Eina_Error
__eolian_efl_pack_table_table_columns_set_reflect(Eo *obj, Eina_Value val)
{
   Eina_Error r = 0;   int cval;
   if (!eina_value_int_convert(&val, &cval))
      {
         r = EINA_ERROR_VALUE_FAILED;
         goto end;
      }
   efl_pack_table_columns_set(obj, cval);
 end:
   eina_value_flush(&val);
   return r;
}

EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_pack_table_columns_set, EFL_FUNC_CALL(cols), int cols);

static Eina_Value
__eolian_efl_pack_table_table_columns_get_reflect(const Eo *obj)
{
   int val = efl_pack_table_columns_get(obj);
   return eina_value_int_init(val);
}

EAPI EAPI_WEAK EFL_FUNC_BODY_CONST(efl_pack_table_columns_get, int, 0);

static Eina_Error
__eolian_efl_pack_table_table_rows_set_reflect(Eo *obj, Eina_Value val)
{
   Eina_Error r = 0;   int cval;
   if (!eina_value_int_convert(&val, &cval))
      {
         r = EINA_ERROR_VALUE_FAILED;
         goto end;
      }
   efl_pack_table_rows_set(obj, cval);
 end:
   eina_value_flush(&val);
   return r;
}

EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_pack_table_rows_set, EFL_FUNC_CALL(rows), int rows);

static Eina_Value
__eolian_efl_pack_table_table_rows_get_reflect(const Eo *obj)
{
   int val = efl_pack_table_rows_get(obj);
   return eina_value_int_init(val);
}

EAPI EAPI_WEAK EFL_FUNC_BODY_CONST(efl_pack_table_rows_get, int, 0);

static Eina_Bool
_efl_pack_table_class_initializer(Efl_Class *klass)
{
   const Efl_Object_Ops *opsp = NULL;

   const Efl_Object_Property_Reflection_Ops *ropsp = NULL;

#ifndef EFL_PACK_TABLE_EXTRA_OPS
#define EFL_PACK_TABLE_EXTRA_OPS
#endif

   EFL_OPS_DEFINE(ops,
      EFL_OBJECT_OP_FUNC(efl_pack_table, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_contents_get, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_content_get, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_cell_column_set, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_cell_column_get, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_cell_row_set, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_cell_row_get, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_size_set, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_size_get, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_columns_set, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_columns_get, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_rows_set, NULL),
      EFL_OBJECT_OP_FUNC(efl_pack_table_rows_get, NULL),
      EFL_PACK_TABLE_EXTRA_OPS
   );
   opsp = &ops;

   static const Efl_Object_Property_Reflection refl_table[] = {
      {"table_columns", __eolian_efl_pack_table_table_columns_set_reflect, __eolian_efl_pack_table_table_columns_get_reflect},
      {"table_rows", __eolian_efl_pack_table_table_rows_set_reflect, __eolian_efl_pack_table_table_rows_get_reflect},
   };
   static const Efl_Object_Property_Reflection_Ops rops = {
      refl_table, EINA_C_ARRAY_LENGTH(refl_table)
   };
   ropsp = &rops;

   return efl_class_functions_set(klass, opsp, ropsp);
}

static const Efl_Class_Description _efl_pack_table_class_desc = {
   EO_VERSION,
   "Efl.Pack_Table",
   EFL_CLASS_TYPE_INTERFACE,
   0,
   _efl_pack_table_class_initializer,
   NULL,
   NULL
};

EFL_DEFINE_CLASS(efl_pack_table_interface_get, &_efl_pack_table_class_desc, NULL, EFL_PACK_INTERFACE, NULL);
