1 2 // Copyright Ahmet Sait Koçak 2020. 3 // Distributed under the Boost Software License, Version 1.0. 4 // (See accompanying file LICENSE_1_0.txt or copy at 5 // https://www.boost.org/LICENSE_1_0.txt) 6 7 module bindbc.hb.bind.shape; 8 9 import bindbc.hb.bind.buffer; 10 import bindbc.hb.bind.common; 11 import bindbc.hb.bind.font; 12 13 extern(C) @nogc nothrow: 14 15 version(BindHB_Static) 16 void hb_shape ( 17 hb_font_t* font, 18 hb_buffer_t* buffer, 19 const(hb_feature_t)* features, 20 uint num_features); 21 else 22 { 23 private alias fp_hb_shape = void function ( 24 hb_font_t* font, 25 hb_buffer_t* buffer, 26 const(hb_feature_t)* features, 27 uint num_features); 28 __gshared fp_hb_shape hb_shape; 29 } 30 31 version(BindHB_Static) 32 hb_bool_t hb_shape_full ( 33 hb_font_t* font, 34 hb_buffer_t* buffer, 35 const(hb_feature_t)* features, 36 uint num_features, 37 const(char*)* shaper_list); 38 else 39 { 40 private alias fp_hb_shape_full = hb_bool_t function ( 41 hb_font_t* font, 42 hb_buffer_t* buffer, 43 const(hb_feature_t)* features, 44 uint num_features, 45 const(char*)* shaper_list); 46 __gshared fp_hb_shape_full hb_shape_full; 47 } 48 49 version(BindHB_Static) 50 const(char*)* hb_shape_list_shapers (); 51 else 52 { 53 private alias fp_hb_shape_list_shapers = const(char*)* function (); 54 __gshared fp_hb_shape_list_shapers hb_shape_list_shapers; 55 }