// Copyright 2019 - 2021 Michael D. Parker // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) module bindbc.freetype.bind.ftlist; import bindbc.freetype.config; import bindbc.freetype.bind.ftsystem, bindbc.freetype.bind.fttypes; extern(C) nothrow { alias FT_List_Iterator = FT_Error function(FT_ListNode, void*); alias FT_List_Destructor = void function(FT_Memory, void*, void*); } static if(staticBinding) { extern(C) @nogc nothrow { FT_ListNode FT_List_Find(FT_List list, void* data); void FT_List_Add(FT_List list, FT_ListNode node); void FT_List_Insert(FT_List list, FT_ListNode node); void FT_List_Remove(FT_List list, FT_ListNode node); void FT_List_Up(FT_List list, FT_ListNode node); FT_Error FT_List_Iterate(FT_List list, FT_List_Iterator iterator, void* user); void FT_List_Finalize(FT_List list, FT_List_Destructor destroy, FT_Memory memory, void* user);; } } else { extern(C) @nogc nothrow { alias da_FT_List_Find = FT_ListNode function(FT_List,void*); alias da_FT_List_Add = void function(FT_List list,FT_ListNode node); alias da_FT_List_Insert = void function(FT_List list, FT_ListNode node); alias da_FT_List_Remove = void function(FT_List list, FT_ListNode node); alias da_FT_List_Up = void function(FT_List list, FT_ListNode node); alias da_FT_List_Iterate = FT_Error function(FT_List list, FT_List_Iterator iterator, void* user); alias da_FT_List_Finalize = void function(FT_List list, FT_List_Destructor destroy, FT_Memory memory, void* user); } __gshared { da_FT_List_Find FT_List_Find; da_FT_List_Add FT_List_Add; da_FT_List_Insert FT_List_Insert; da_FT_List_Remove FT_List_Remove; da_FT_List_Up FT_List_Up; da_FT_List_Iterate FT_List_Iterate; da_FT_List_Finalize FT_List_Finalize; } }