summaryrefslogtreecommitdiff
path: root/src/bindings/cxx/eina_cxx/eina_lists_auxiliary.hh
blob: 60e81bacbc171933de3cb88c9063fa38e1873e89 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/*
 * Copyright 2019 by its authors. See AUTHORS.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
#ifndef _EINA_LISTS_AUXILIARY_HH
#define _EINA_LISTS_AUXILIARY_HH

#include <Eina.h>

/**
 * @addtogroup Eina_Cxx_Containers_Group
 *
 * @{
 */

namespace efl { namespace eina {

/**
 * @internal
 */
inline Eina_List* _eina_list_prepend_relative_list(Eina_List* list, const void* data, Eina_List* relative) EINA_ARG_NONNULL(2)
{
  if(relative)
    return ::eina_list_prepend_relative_list(list, data, relative);
  else
    return ::eina_list_append(list, data);
}

/**
 * @internal
 */
inline Eina_Inlist *_eina_inlist_prepend_relative(Eina_Inlist *in_list,
                                                  Eina_Inlist *in_item,
                                                  Eina_Inlist *in_relative) EINA_ARG_NONNULL(2)
{
  if(in_relative)
    return ::eina_inlist_prepend_relative(in_list, in_item, in_relative);
  else
    return ::eina_inlist_append(in_list, in_item);
}

} }

/**
 * @}
 */

#endif