1 module libxlsxd.xlsxwrap; 2 3 4 import core.stdc.config; 5 import core.stdc.stdarg: va_list; 6 static import core.simd; 7 8 struct Int128 { long lower; long upper; } 9 struct UInt128 { ulong lower; ulong upper; } 10 11 struct __locale_data { int dummy; } 12 13 alias _Bool = bool; 14 struct dpp { 15 static struct Move(T) { 16 T* ptr; 17 } 18 19 static auto move(T)(ref T value) { 20 return Move!T(&value); 21 } 22 mixin template EnumD(string name, T, string prefix) if(is(T == enum)) { 23 private static string _memberMixinStr(string member) { 24 import std.conv: text; 25 import std.array: replace; 26 return text(` `, member.replace(prefix, ""), ` = `, T.stringof, `.`, member, `,`); 27 } 28 private static string _enumMixinStr() { 29 import std.array: join; 30 string[] ret; 31 ret ~= "enum " ~ name ~ "{"; 32 static foreach(member; __traits(allMembers, T)) { 33 ret ~= _memberMixinStr(member); 34 } 35 ret ~= "}"; 36 return ret.join("\n"); 37 } 38 mixin(_enumMixinStr()); 39 } 40 } 41 42 extern(C) 43 { 44 int gzvprintf(gzFile, const(char)*, va_list) @nogc nothrow; 45 int deflateResetKeep(z_streamp) @nogc nothrow; 46 int inflateResetKeep(z_streamp) @nogc nothrow; 47 c_ulong inflateCodesUsed(z_streamp) @nogc nothrow; 48 int inflateValidate(z_streamp, int) @nogc nothrow; 49 int inflateUndermine(z_streamp, int) @nogc nothrow; 50 const(z_crc_t)* get_crc_table() @nogc nothrow; 51 int inflateSyncPoint(z_streamp) @nogc nothrow; 52 const(char)* zError(int) @nogc nothrow; 53 uLong crc32_combine(uLong, uLong, off_t) @nogc nothrow; 54 uLong adler32_combine(uLong, uLong, off_t) @nogc nothrow; 55 off_t gzoffset(gzFile) @nogc nothrow; 56 off_t gztell(gzFile) @nogc nothrow; 57 off_t gzseek(gzFile, off_t, int) @nogc nothrow; 58 gzFile gzopen(const(char)*, const(char)*) @nogc nothrow; 59 int gzgetc_(gzFile) @nogc nothrow; 60 int inflateBackInit_(z_streamp, int, ubyte*, const(char)*, int) @nogc nothrow; 61 int inflateInit2_(z_streamp, int, const(char)*, int) @nogc nothrow; 62 int deflateInit2_(z_streamp, int, int, int, int, int, const(char)*, int) @nogc nothrow; 63 int inflateInit_(z_streamp, const(char)*, int) @nogc nothrow; 64 int deflateInit_(z_streamp, int, const(char)*, int) @nogc nothrow; 65 uLong crc32_z(uLong, const(Bytef)*, z_size_t) @nogc nothrow; 66 uLong crc32(uLong, const(Bytef)*, uInt) @nogc nothrow; 67 uLong adler32_z(uLong, const(Bytef)*, z_size_t) @nogc nothrow; 68 uLong adler32(uLong, const(Bytef)*, uInt) @nogc nothrow; 69 void gzclearerr(gzFile) @nogc nothrow; 70 const(char)* gzerror(gzFile, int*) @nogc nothrow; 71 int gzclose_w(gzFile) @nogc nothrow; 72 int gzclose_r(gzFile) @nogc nothrow; 73 int gzclose(gzFile) @nogc nothrow; 74 int gzdirect(gzFile) @nogc nothrow; 75 int gzeof(gzFile) @nogc nothrow; 76 int gzrewind(gzFile) @nogc nothrow; 77 int gzflush(gzFile, int) @nogc nothrow; 78 int gzungetc(int, gzFile) @nogc nothrow; 79 pragma(mangle, "gzgetc") int gzgetc_(gzFile) @nogc nothrow; 80 int gzputc(gzFile, int) @nogc nothrow; 81 char* gzgets(gzFile, char*, int) @nogc nothrow; 82 int gzputs(gzFile, const(char)*) @nogc nothrow; 83 int gzprintf(gzFile, const(char)*, ...) @nogc nothrow; 84 z_size_t gzfwrite(voidpc, z_size_t, z_size_t, gzFile) @nogc nothrow; 85 int gzwrite(gzFile, voidpc, uint) @nogc nothrow; 86 z_size_t gzfread(voidp, z_size_t, z_size_t, gzFile) @nogc nothrow; 87 int gzread(gzFile, voidp, uint) @nogc nothrow; 88 int gzsetparams(gzFile, int, int) @nogc nothrow; 89 int gzbuffer(gzFile, uint) @nogc nothrow; 90 gzFile gzdopen(int, const(char)*) @nogc nothrow; 91 struct gzFile_s 92 { 93 uint have; 94 ubyte* next; 95 off_t pos; 96 } 97 alias gzFile = gzFile_s*; 98 int uncompress2(Bytef*, uLongf*, const(Bytef)*, uLong*) @nogc nothrow; 99 int uncompress(Bytef*, uLongf*, const(Bytef)*, uLong) @nogc nothrow; 100 uLong compressBound(uLong) @nogc nothrow; 101 int compress2(Bytef*, uLongf*, const(Bytef)*, uLong, int) @nogc nothrow; 102 int compress(Bytef*, uLongf*, const(Bytef)*, uLong) @nogc nothrow; 103 uLong zlibCompileFlags() @nogc nothrow; 104 int inflateBackEnd(z_streamp) @nogc nothrow; 105 int inflateBack(z_streamp, in_func, void*, out_func, void*) @nogc nothrow; 106 alias out_func = int function(void*, ubyte*, uint) @nogc nothrow; 107 alias in_func = uint function(void*, ubyte**) @nogc nothrow; 108 int inflateGetHeader(z_streamp, gz_headerp) @nogc nothrow; 109 c_long inflateMark(z_streamp) @nogc nothrow; 110 int inflatePrime(z_streamp, int, int) @nogc nothrow; 111 int inflateReset2(z_streamp, int) @nogc nothrow; 112 int inflateReset(z_streamp) @nogc nothrow; 113 int inflateCopy(z_streamp, z_streamp) @nogc nothrow; 114 int inflateSync(z_streamp) @nogc nothrow; 115 int inflateGetDictionary(z_streamp, Bytef*, uInt*) @nogc nothrow; 116 int inflateSetDictionary(z_streamp, const(Bytef)*, uInt) @nogc nothrow; 117 int deflateSetHeader(z_streamp, gz_headerp) @nogc nothrow; 118 int deflatePrime(z_streamp, int, int) @nogc nothrow; 119 int deflatePending(z_streamp, uint*, int*) @nogc nothrow; 120 uLong deflateBound(z_streamp, uLong) @nogc nothrow; 121 int deflateTune(z_streamp, int, int, int, int) @nogc nothrow; 122 int deflateParams(z_streamp, int, int) @nogc nothrow; 123 int deflateReset(z_streamp) @nogc nothrow; 124 int deflateCopy(z_streamp, z_streamp) @nogc nothrow; 125 int deflateGetDictionary(z_streamp, Bytef*, uInt*) @nogc nothrow; 126 int deflateSetDictionary(z_streamp, const(Bytef)*, uInt) @nogc nothrow; 127 int inflateEnd(z_streamp) @nogc nothrow; 128 int inflate(z_streamp, int) @nogc nothrow; 129 int deflateEnd(z_streamp) @nogc nothrow; 130 int deflate(z_streamp, int) @nogc nothrow; 131 const(char)* zlibVersion() @nogc nothrow; 132 alias gz_headerp = gz_header_s*; 133 struct gz_header_s 134 { 135 int text; 136 uLong time; 137 int xflags; 138 int os; 139 Bytef* extra; 140 uInt extra_len; 141 uInt extra_max; 142 Bytef* name; 143 uInt name_max; 144 Bytef* comment; 145 uInt comm_max; 146 int hcrc; 147 int done; 148 } 149 alias gz_header = gz_header_s; 150 alias z_streamp = z_stream_s*; 151 struct lxw_heading_pair 152 { 153 char* key; 154 char* value; 155 static struct _Anonymous_0 156 { 157 lxw_heading_pair* stqe_next; 158 } 159 _Anonymous_0 list_pointers; 160 } 161 struct lxw_heading_pairs 162 { 163 lxw_heading_pair* stqh_first; 164 lxw_heading_pair** stqh_last; 165 } 166 struct lxw_part_name 167 { 168 char* name; 169 static struct _Anonymous_1 170 { 171 lxw_part_name* stqe_next; 172 } 173 _Anonymous_1 list_pointers; 174 } 175 struct lxw_part_names 176 { 177 lxw_part_name* stqh_first; 178 lxw_part_name** stqh_last; 179 } 180 struct lxw_app 181 { 182 FILE* file; 183 lxw_heading_pairs* heading_pairs; 184 lxw_part_names* part_names; 185 lxw_doc_properties* properties; 186 uint32_t num_heading_pairs; 187 uint32_t num_part_names; 188 } 189 lxw_app* lxw_app_new() @nogc nothrow; 190 void lxw_app_free(lxw_app*) @nogc nothrow; 191 void lxw_app_assemble_xml_file(lxw_app*) @nogc nothrow; 192 void lxw_app_add_part_name(lxw_app*, const(char)*) @nogc nothrow; 193 void lxw_app_add_heading_pair(lxw_app*, const(char)*, const(char)*) @nogc nothrow; 194 struct lxw_chart_series 195 { 196 lxw_series_range* categories; 197 lxw_series_range* values; 198 lxw_chart_title title; 199 lxw_chart_line* line; 200 lxw_chart_fill* fill; 201 lxw_chart_pattern* pattern; 202 lxw_chart_marker* marker; 203 lxw_chart_point* points; 204 uint16_t point_count; 205 uint8_t smooth; 206 uint8_t invert_if_negative; 207 uint8_t has_labels; 208 uint8_t show_labels_value; 209 uint8_t show_labels_category; 210 uint8_t show_labels_name; 211 uint8_t show_labels_leader; 212 uint8_t show_labels_legend; 213 uint8_t show_labels_percent; 214 uint8_t label_position; 215 uint8_t label_separator; 216 uint8_t default_label_position; 217 char* label_num_format; 218 lxw_chart_font* label_font; 219 lxw_series_error_bars* x_error_bars; 220 lxw_series_error_bars* y_error_bars; 221 uint8_t has_trendline; 222 uint8_t has_trendline_forecast; 223 uint8_t has_trendline_equation; 224 uint8_t has_trendline_r_squared; 225 uint8_t has_trendline_intercept; 226 uint8_t trendline_type; 227 uint8_t trendline_value; 228 double trendline_forward; 229 double trendline_backward; 230 uint8_t trendline_value_type; 231 char* trendline_name; 232 lxw_chart_line* trendline_line; 233 double trendline_intercept; 234 static struct _Anonymous_2 235 { 236 lxw_chart_series* stqe_next; 237 } 238 _Anonymous_2 list_pointers; 239 } 240 struct lxw_chart_series_list 241 { 242 lxw_chart_series* stqh_first; 243 lxw_chart_series** stqh_last; 244 } 245 struct lxw_series_data_points 246 { 247 lxw_series_data_point* stqh_first; 248 lxw_series_data_point** stqh_last; 249 } 250 struct lxw_series_data_point 251 { 252 uint8_t is_string; 253 double number; 254 char* string; 255 uint8_t no_data; 256 static struct _Anonymous_3 257 { 258 lxw_series_data_point* stqe_next; 259 } 260 _Anonymous_3 list_pointers; 261 } 262 struct z_stream_s 263 { 264 Bytef* next_in; 265 uInt avail_in; 266 uLong total_in; 267 Bytef* next_out; 268 uInt avail_out; 269 uLong total_out; 270 char* msg; 271 internal_state* state; 272 alloc_func zalloc; 273 free_func zfree; 274 voidpf opaque; 275 int data_type; 276 uLong adler; 277 uLong reserved; 278 } 279 alias z_stream = z_stream_s; 280 enum lxw_chart_type 281 { 282 LXW_CHART_NONE = 0, 283 LXW_CHART_AREA = 1, 284 LXW_CHART_AREA_STACKED = 2, 285 LXW_CHART_AREA_STACKED_PERCENT = 3, 286 LXW_CHART_BAR = 4, 287 LXW_CHART_BAR_STACKED = 5, 288 LXW_CHART_BAR_STACKED_PERCENT = 6, 289 LXW_CHART_COLUMN = 7, 290 LXW_CHART_COLUMN_STACKED = 8, 291 LXW_CHART_COLUMN_STACKED_PERCENT = 9, 292 LXW_CHART_DOUGHNUT = 10, 293 LXW_CHART_LINE = 11, 294 LXW_CHART_PIE = 12, 295 LXW_CHART_SCATTER = 13, 296 LXW_CHART_SCATTER_STRAIGHT = 14, 297 LXW_CHART_SCATTER_STRAIGHT_WITH_MARKERS = 15, 298 LXW_CHART_SCATTER_SMOOTH = 16, 299 LXW_CHART_SCATTER_SMOOTH_WITH_MARKERS = 17, 300 LXW_CHART_RADAR = 18, 301 LXW_CHART_RADAR_WITH_MARKERS = 19, 302 LXW_CHART_RADAR_FILLED = 20, 303 } 304 enum LXW_CHART_NONE = lxw_chart_type.LXW_CHART_NONE; 305 enum LXW_CHART_AREA = lxw_chart_type.LXW_CHART_AREA; 306 enum LXW_CHART_AREA_STACKED = lxw_chart_type.LXW_CHART_AREA_STACKED; 307 enum LXW_CHART_AREA_STACKED_PERCENT = lxw_chart_type.LXW_CHART_AREA_STACKED_PERCENT; 308 enum LXW_CHART_BAR = lxw_chart_type.LXW_CHART_BAR; 309 enum LXW_CHART_BAR_STACKED = lxw_chart_type.LXW_CHART_BAR_STACKED; 310 enum LXW_CHART_BAR_STACKED_PERCENT = lxw_chart_type.LXW_CHART_BAR_STACKED_PERCENT; 311 enum LXW_CHART_COLUMN = lxw_chart_type.LXW_CHART_COLUMN; 312 enum LXW_CHART_COLUMN_STACKED = lxw_chart_type.LXW_CHART_COLUMN_STACKED; 313 enum LXW_CHART_COLUMN_STACKED_PERCENT = lxw_chart_type.LXW_CHART_COLUMN_STACKED_PERCENT; 314 enum LXW_CHART_DOUGHNUT = lxw_chart_type.LXW_CHART_DOUGHNUT; 315 enum LXW_CHART_LINE = lxw_chart_type.LXW_CHART_LINE; 316 enum LXW_CHART_PIE = lxw_chart_type.LXW_CHART_PIE; 317 enum LXW_CHART_SCATTER = lxw_chart_type.LXW_CHART_SCATTER; 318 enum LXW_CHART_SCATTER_STRAIGHT = lxw_chart_type.LXW_CHART_SCATTER_STRAIGHT; 319 enum LXW_CHART_SCATTER_STRAIGHT_WITH_MARKERS = lxw_chart_type.LXW_CHART_SCATTER_STRAIGHT_WITH_MARKERS; 320 enum LXW_CHART_SCATTER_SMOOTH = lxw_chart_type.LXW_CHART_SCATTER_SMOOTH; 321 enum LXW_CHART_SCATTER_SMOOTH_WITH_MARKERS = lxw_chart_type.LXW_CHART_SCATTER_SMOOTH_WITH_MARKERS; 322 enum LXW_CHART_RADAR = lxw_chart_type.LXW_CHART_RADAR; 323 enum LXW_CHART_RADAR_WITH_MARKERS = lxw_chart_type.LXW_CHART_RADAR_WITH_MARKERS; 324 enum LXW_CHART_RADAR_FILLED = lxw_chart_type.LXW_CHART_RADAR_FILLED; 325 enum lxw_chart_legend_position 326 { 327 LXW_CHART_LEGEND_NONE = 0, 328 LXW_CHART_LEGEND_RIGHT = 1, 329 LXW_CHART_LEGEND_LEFT = 2, 330 LXW_CHART_LEGEND_TOP = 3, 331 LXW_CHART_LEGEND_BOTTOM = 4, 332 LXW_CHART_LEGEND_TOP_RIGHT = 5, 333 LXW_CHART_LEGEND_OVERLAY_RIGHT = 6, 334 LXW_CHART_LEGEND_OVERLAY_LEFT = 7, 335 LXW_CHART_LEGEND_OVERLAY_TOP_RIGHT = 8, 336 } 337 enum LXW_CHART_LEGEND_NONE = lxw_chart_legend_position.LXW_CHART_LEGEND_NONE; 338 enum LXW_CHART_LEGEND_RIGHT = lxw_chart_legend_position.LXW_CHART_LEGEND_RIGHT; 339 enum LXW_CHART_LEGEND_LEFT = lxw_chart_legend_position.LXW_CHART_LEGEND_LEFT; 340 enum LXW_CHART_LEGEND_TOP = lxw_chart_legend_position.LXW_CHART_LEGEND_TOP; 341 enum LXW_CHART_LEGEND_BOTTOM = lxw_chart_legend_position.LXW_CHART_LEGEND_BOTTOM; 342 enum LXW_CHART_LEGEND_TOP_RIGHT = lxw_chart_legend_position.LXW_CHART_LEGEND_TOP_RIGHT; 343 enum LXW_CHART_LEGEND_OVERLAY_RIGHT = lxw_chart_legend_position.LXW_CHART_LEGEND_OVERLAY_RIGHT; 344 enum LXW_CHART_LEGEND_OVERLAY_LEFT = lxw_chart_legend_position.LXW_CHART_LEGEND_OVERLAY_LEFT; 345 enum LXW_CHART_LEGEND_OVERLAY_TOP_RIGHT = lxw_chart_legend_position.LXW_CHART_LEGEND_OVERLAY_TOP_RIGHT; 346 enum lxw_chart_line_dash_type 347 { 348 LXW_CHART_LINE_DASH_SOLID = 0, 349 LXW_CHART_LINE_DASH_ROUND_DOT = 1, 350 LXW_CHART_LINE_DASH_SQUARE_DOT = 2, 351 LXW_CHART_LINE_DASH_DASH = 3, 352 LXW_CHART_LINE_DASH_DASH_DOT = 4, 353 LXW_CHART_LINE_DASH_LONG_DASH = 5, 354 LXW_CHART_LINE_DASH_LONG_DASH_DOT = 6, 355 LXW_CHART_LINE_DASH_LONG_DASH_DOT_DOT = 7, 356 LXW_CHART_LINE_DASH_DOT = 8, 357 LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT = 9, 358 LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT_DOT = 10, 359 } 360 enum LXW_CHART_LINE_DASH_SOLID = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_SOLID; 361 enum LXW_CHART_LINE_DASH_ROUND_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_ROUND_DOT; 362 enum LXW_CHART_LINE_DASH_SQUARE_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_SQUARE_DOT; 363 enum LXW_CHART_LINE_DASH_DASH = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_DASH; 364 enum LXW_CHART_LINE_DASH_DASH_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_DASH_DOT; 365 enum LXW_CHART_LINE_DASH_LONG_DASH = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_LONG_DASH; 366 enum LXW_CHART_LINE_DASH_LONG_DASH_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_LONG_DASH_DOT; 367 enum LXW_CHART_LINE_DASH_LONG_DASH_DOT_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_LONG_DASH_DOT_DOT; 368 enum LXW_CHART_LINE_DASH_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_DOT; 369 enum LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT; 370 enum LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT_DOT = lxw_chart_line_dash_type.LXW_CHART_LINE_DASH_SYSTEM_DASH_DOT_DOT; 371 enum lxw_chart_marker_type 372 { 373 LXW_CHART_MARKER_AUTOMATIC = 0, 374 LXW_CHART_MARKER_NONE = 1, 375 LXW_CHART_MARKER_SQUARE = 2, 376 LXW_CHART_MARKER_DIAMOND = 3, 377 LXW_CHART_MARKER_TRIANGLE = 4, 378 LXW_CHART_MARKER_X = 5, 379 LXW_CHART_MARKER_STAR = 6, 380 LXW_CHART_MARKER_SHORT_DASH = 7, 381 LXW_CHART_MARKER_LONG_DASH = 8, 382 LXW_CHART_MARKER_CIRCLE = 9, 383 LXW_CHART_MARKER_PLUS = 10, 384 } 385 enum LXW_CHART_MARKER_AUTOMATIC = lxw_chart_marker_type.LXW_CHART_MARKER_AUTOMATIC; 386 enum LXW_CHART_MARKER_NONE = lxw_chart_marker_type.LXW_CHART_MARKER_NONE; 387 enum LXW_CHART_MARKER_SQUARE = lxw_chart_marker_type.LXW_CHART_MARKER_SQUARE; 388 enum LXW_CHART_MARKER_DIAMOND = lxw_chart_marker_type.LXW_CHART_MARKER_DIAMOND; 389 enum LXW_CHART_MARKER_TRIANGLE = lxw_chart_marker_type.LXW_CHART_MARKER_TRIANGLE; 390 enum LXW_CHART_MARKER_X = lxw_chart_marker_type.LXW_CHART_MARKER_X; 391 enum LXW_CHART_MARKER_STAR = lxw_chart_marker_type.LXW_CHART_MARKER_STAR; 392 enum LXW_CHART_MARKER_SHORT_DASH = lxw_chart_marker_type.LXW_CHART_MARKER_SHORT_DASH; 393 enum LXW_CHART_MARKER_LONG_DASH = lxw_chart_marker_type.LXW_CHART_MARKER_LONG_DASH; 394 enum LXW_CHART_MARKER_CIRCLE = lxw_chart_marker_type.LXW_CHART_MARKER_CIRCLE; 395 enum LXW_CHART_MARKER_PLUS = lxw_chart_marker_type.LXW_CHART_MARKER_PLUS; 396 enum lxw_chart_pattern_type 397 { 398 LXW_CHART_PATTERN_NONE = 0, 399 LXW_CHART_PATTERN_PERCENT_5 = 1, 400 LXW_CHART_PATTERN_PERCENT_10 = 2, 401 LXW_CHART_PATTERN_PERCENT_20 = 3, 402 LXW_CHART_PATTERN_PERCENT_25 = 4, 403 LXW_CHART_PATTERN_PERCENT_30 = 5, 404 LXW_CHART_PATTERN_PERCENT_40 = 6, 405 LXW_CHART_PATTERN_PERCENT_50 = 7, 406 LXW_CHART_PATTERN_PERCENT_60 = 8, 407 LXW_CHART_PATTERN_PERCENT_70 = 9, 408 LXW_CHART_PATTERN_PERCENT_75 = 10, 409 LXW_CHART_PATTERN_PERCENT_80 = 11, 410 LXW_CHART_PATTERN_PERCENT_90 = 12, 411 LXW_CHART_PATTERN_LIGHT_DOWNWARD_DIAGONAL = 13, 412 LXW_CHART_PATTERN_LIGHT_UPWARD_DIAGONAL = 14, 413 LXW_CHART_PATTERN_DARK_DOWNWARD_DIAGONAL = 15, 414 LXW_CHART_PATTERN_DARK_UPWARD_DIAGONAL = 16, 415 LXW_CHART_PATTERN_WIDE_DOWNWARD_DIAGONAL = 17, 416 LXW_CHART_PATTERN_WIDE_UPWARD_DIAGONAL = 18, 417 LXW_CHART_PATTERN_LIGHT_VERTICAL = 19, 418 LXW_CHART_PATTERN_LIGHT_HORIZONTAL = 20, 419 LXW_CHART_PATTERN_NARROW_VERTICAL = 21, 420 LXW_CHART_PATTERN_NARROW_HORIZONTAL = 22, 421 LXW_CHART_PATTERN_DARK_VERTICAL = 23, 422 LXW_CHART_PATTERN_DARK_HORIZONTAL = 24, 423 LXW_CHART_PATTERN_DASHED_DOWNWARD_DIAGONAL = 25, 424 LXW_CHART_PATTERN_DASHED_UPWARD_DIAGONAL = 26, 425 LXW_CHART_PATTERN_DASHED_HORIZONTAL = 27, 426 LXW_CHART_PATTERN_DASHED_VERTICAL = 28, 427 LXW_CHART_PATTERN_SMALL_CONFETTI = 29, 428 LXW_CHART_PATTERN_LARGE_CONFETTI = 30, 429 LXW_CHART_PATTERN_ZIGZAG = 31, 430 LXW_CHART_PATTERN_WAVE = 32, 431 LXW_CHART_PATTERN_DIAGONAL_BRICK = 33, 432 LXW_CHART_PATTERN_HORIZONTAL_BRICK = 34, 433 LXW_CHART_PATTERN_WEAVE = 35, 434 LXW_CHART_PATTERN_PLAID = 36, 435 LXW_CHART_PATTERN_DIVOT = 37, 436 LXW_CHART_PATTERN_DOTTED_GRID = 38, 437 LXW_CHART_PATTERN_DOTTED_DIAMOND = 39, 438 LXW_CHART_PATTERN_SHINGLE = 40, 439 LXW_CHART_PATTERN_TRELLIS = 41, 440 LXW_CHART_PATTERN_SPHERE = 42, 441 LXW_CHART_PATTERN_SMALL_GRID = 43, 442 LXW_CHART_PATTERN_LARGE_GRID = 44, 443 LXW_CHART_PATTERN_SMALL_CHECK = 45, 444 LXW_CHART_PATTERN_LARGE_CHECK = 46, 445 LXW_CHART_PATTERN_OUTLINED_DIAMOND = 47, 446 LXW_CHART_PATTERN_SOLID_DIAMOND = 48, 447 } 448 enum LXW_CHART_PATTERN_NONE = lxw_chart_pattern_type.LXW_CHART_PATTERN_NONE; 449 enum LXW_CHART_PATTERN_PERCENT_5 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_5; 450 enum LXW_CHART_PATTERN_PERCENT_10 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_10; 451 enum LXW_CHART_PATTERN_PERCENT_20 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_20; 452 enum LXW_CHART_PATTERN_PERCENT_25 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_25; 453 enum LXW_CHART_PATTERN_PERCENT_30 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_30; 454 enum LXW_CHART_PATTERN_PERCENT_40 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_40; 455 enum LXW_CHART_PATTERN_PERCENT_50 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_50; 456 enum LXW_CHART_PATTERN_PERCENT_60 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_60; 457 enum LXW_CHART_PATTERN_PERCENT_70 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_70; 458 enum LXW_CHART_PATTERN_PERCENT_75 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_75; 459 enum LXW_CHART_PATTERN_PERCENT_80 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_80; 460 enum LXW_CHART_PATTERN_PERCENT_90 = lxw_chart_pattern_type.LXW_CHART_PATTERN_PERCENT_90; 461 enum LXW_CHART_PATTERN_LIGHT_DOWNWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_LIGHT_DOWNWARD_DIAGONAL; 462 enum LXW_CHART_PATTERN_LIGHT_UPWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_LIGHT_UPWARD_DIAGONAL; 463 enum LXW_CHART_PATTERN_DARK_DOWNWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DARK_DOWNWARD_DIAGONAL; 464 enum LXW_CHART_PATTERN_DARK_UPWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DARK_UPWARD_DIAGONAL; 465 enum LXW_CHART_PATTERN_WIDE_DOWNWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_WIDE_DOWNWARD_DIAGONAL; 466 enum LXW_CHART_PATTERN_WIDE_UPWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_WIDE_UPWARD_DIAGONAL; 467 enum LXW_CHART_PATTERN_LIGHT_VERTICAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_LIGHT_VERTICAL; 468 enum LXW_CHART_PATTERN_LIGHT_HORIZONTAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_LIGHT_HORIZONTAL; 469 enum LXW_CHART_PATTERN_NARROW_VERTICAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_NARROW_VERTICAL; 470 enum LXW_CHART_PATTERN_NARROW_HORIZONTAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_NARROW_HORIZONTAL; 471 enum LXW_CHART_PATTERN_DARK_VERTICAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DARK_VERTICAL; 472 enum LXW_CHART_PATTERN_DARK_HORIZONTAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DARK_HORIZONTAL; 473 enum LXW_CHART_PATTERN_DASHED_DOWNWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DASHED_DOWNWARD_DIAGONAL; 474 enum LXW_CHART_PATTERN_DASHED_UPWARD_DIAGONAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DASHED_UPWARD_DIAGONAL; 475 enum LXW_CHART_PATTERN_DASHED_HORIZONTAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DASHED_HORIZONTAL; 476 enum LXW_CHART_PATTERN_DASHED_VERTICAL = lxw_chart_pattern_type.LXW_CHART_PATTERN_DASHED_VERTICAL; 477 enum LXW_CHART_PATTERN_SMALL_CONFETTI = lxw_chart_pattern_type.LXW_CHART_PATTERN_SMALL_CONFETTI; 478 enum LXW_CHART_PATTERN_LARGE_CONFETTI = lxw_chart_pattern_type.LXW_CHART_PATTERN_LARGE_CONFETTI; 479 enum LXW_CHART_PATTERN_ZIGZAG = lxw_chart_pattern_type.LXW_CHART_PATTERN_ZIGZAG; 480 enum LXW_CHART_PATTERN_WAVE = lxw_chart_pattern_type.LXW_CHART_PATTERN_WAVE; 481 enum LXW_CHART_PATTERN_DIAGONAL_BRICK = lxw_chart_pattern_type.LXW_CHART_PATTERN_DIAGONAL_BRICK; 482 enum LXW_CHART_PATTERN_HORIZONTAL_BRICK = lxw_chart_pattern_type.LXW_CHART_PATTERN_HORIZONTAL_BRICK; 483 enum LXW_CHART_PATTERN_WEAVE = lxw_chart_pattern_type.LXW_CHART_PATTERN_WEAVE; 484 enum LXW_CHART_PATTERN_PLAID = lxw_chart_pattern_type.LXW_CHART_PATTERN_PLAID; 485 enum LXW_CHART_PATTERN_DIVOT = lxw_chart_pattern_type.LXW_CHART_PATTERN_DIVOT; 486 enum LXW_CHART_PATTERN_DOTTED_GRID = lxw_chart_pattern_type.LXW_CHART_PATTERN_DOTTED_GRID; 487 enum LXW_CHART_PATTERN_DOTTED_DIAMOND = lxw_chart_pattern_type.LXW_CHART_PATTERN_DOTTED_DIAMOND; 488 enum LXW_CHART_PATTERN_SHINGLE = lxw_chart_pattern_type.LXW_CHART_PATTERN_SHINGLE; 489 enum LXW_CHART_PATTERN_TRELLIS = lxw_chart_pattern_type.LXW_CHART_PATTERN_TRELLIS; 490 enum LXW_CHART_PATTERN_SPHERE = lxw_chart_pattern_type.LXW_CHART_PATTERN_SPHERE; 491 enum LXW_CHART_PATTERN_SMALL_GRID = lxw_chart_pattern_type.LXW_CHART_PATTERN_SMALL_GRID; 492 enum LXW_CHART_PATTERN_LARGE_GRID = lxw_chart_pattern_type.LXW_CHART_PATTERN_LARGE_GRID; 493 enum LXW_CHART_PATTERN_SMALL_CHECK = lxw_chart_pattern_type.LXW_CHART_PATTERN_SMALL_CHECK; 494 enum LXW_CHART_PATTERN_LARGE_CHECK = lxw_chart_pattern_type.LXW_CHART_PATTERN_LARGE_CHECK; 495 enum LXW_CHART_PATTERN_OUTLINED_DIAMOND = lxw_chart_pattern_type.LXW_CHART_PATTERN_OUTLINED_DIAMOND; 496 enum LXW_CHART_PATTERN_SOLID_DIAMOND = lxw_chart_pattern_type.LXW_CHART_PATTERN_SOLID_DIAMOND; 497 enum lxw_chart_label_position 498 { 499 LXW_CHART_LABEL_POSITION_DEFAULT = 0, 500 LXW_CHART_LABEL_POSITION_CENTER = 1, 501 LXW_CHART_LABEL_POSITION_RIGHT = 2, 502 LXW_CHART_LABEL_POSITION_LEFT = 3, 503 LXW_CHART_LABEL_POSITION_ABOVE = 4, 504 LXW_CHART_LABEL_POSITION_BELOW = 5, 505 LXW_CHART_LABEL_POSITION_INSIDE_BASE = 6, 506 LXW_CHART_LABEL_POSITION_INSIDE_END = 7, 507 LXW_CHART_LABEL_POSITION_OUTSIDE_END = 8, 508 LXW_CHART_LABEL_POSITION_BEST_FIT = 9, 509 } 510 enum LXW_CHART_LABEL_POSITION_DEFAULT = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_DEFAULT; 511 enum LXW_CHART_LABEL_POSITION_CENTER = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_CENTER; 512 enum LXW_CHART_LABEL_POSITION_RIGHT = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_RIGHT; 513 enum LXW_CHART_LABEL_POSITION_LEFT = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_LEFT; 514 enum LXW_CHART_LABEL_POSITION_ABOVE = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_ABOVE; 515 enum LXW_CHART_LABEL_POSITION_BELOW = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_BELOW; 516 enum LXW_CHART_LABEL_POSITION_INSIDE_BASE = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_INSIDE_BASE; 517 enum LXW_CHART_LABEL_POSITION_INSIDE_END = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_INSIDE_END; 518 enum LXW_CHART_LABEL_POSITION_OUTSIDE_END = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_OUTSIDE_END; 519 enum LXW_CHART_LABEL_POSITION_BEST_FIT = lxw_chart_label_position.LXW_CHART_LABEL_POSITION_BEST_FIT; 520 enum lxw_chart_label_separator 521 { 522 LXW_CHART_LABEL_SEPARATOR_COMMA = 0, 523 LXW_CHART_LABEL_SEPARATOR_SEMICOLON = 1, 524 LXW_CHART_LABEL_SEPARATOR_PERIOD = 2, 525 LXW_CHART_LABEL_SEPARATOR_NEWLINE = 3, 526 LXW_CHART_LABEL_SEPARATOR_SPACE = 4, 527 } 528 enum LXW_CHART_LABEL_SEPARATOR_COMMA = lxw_chart_label_separator.LXW_CHART_LABEL_SEPARATOR_COMMA; 529 enum LXW_CHART_LABEL_SEPARATOR_SEMICOLON = lxw_chart_label_separator.LXW_CHART_LABEL_SEPARATOR_SEMICOLON; 530 enum LXW_CHART_LABEL_SEPARATOR_PERIOD = lxw_chart_label_separator.LXW_CHART_LABEL_SEPARATOR_PERIOD; 531 enum LXW_CHART_LABEL_SEPARATOR_NEWLINE = lxw_chart_label_separator.LXW_CHART_LABEL_SEPARATOR_NEWLINE; 532 enum LXW_CHART_LABEL_SEPARATOR_SPACE = lxw_chart_label_separator.LXW_CHART_LABEL_SEPARATOR_SPACE; 533 enum lxw_chart_axis_type 534 { 535 LXW_CHART_AXIS_TYPE_X = 0, 536 LXW_CHART_AXIS_TYPE_Y = 1, 537 } 538 enum LXW_CHART_AXIS_TYPE_X = lxw_chart_axis_type.LXW_CHART_AXIS_TYPE_X; 539 enum LXW_CHART_AXIS_TYPE_Y = lxw_chart_axis_type.LXW_CHART_AXIS_TYPE_Y; 540 enum lxw_chart_subtype 541 { 542 LXW_CHART_SUBTYPE_NONE = 0, 543 LXW_CHART_SUBTYPE_STACKED = 1, 544 LXW_CHART_SUBTYPE_STACKED_PERCENT = 2, 545 } 546 enum LXW_CHART_SUBTYPE_NONE = lxw_chart_subtype.LXW_CHART_SUBTYPE_NONE; 547 enum LXW_CHART_SUBTYPE_STACKED = lxw_chart_subtype.LXW_CHART_SUBTYPE_STACKED; 548 enum LXW_CHART_SUBTYPE_STACKED_PERCENT = lxw_chart_subtype.LXW_CHART_SUBTYPE_STACKED_PERCENT; 549 enum lxw_chart_grouping 550 { 551 LXW_GROUPING_CLUSTERED = 0, 552 LXW_GROUPING_STANDARD = 1, 553 LXW_GROUPING_PERCENTSTACKED = 2, 554 LXW_GROUPING_STACKED = 3, 555 } 556 enum LXW_GROUPING_CLUSTERED = lxw_chart_grouping.LXW_GROUPING_CLUSTERED; 557 enum LXW_GROUPING_STANDARD = lxw_chart_grouping.LXW_GROUPING_STANDARD; 558 enum LXW_GROUPING_PERCENTSTACKED = lxw_chart_grouping.LXW_GROUPING_PERCENTSTACKED; 559 enum LXW_GROUPING_STACKED = lxw_chart_grouping.LXW_GROUPING_STACKED; 560 enum lxw_chart_axis_tick_position 561 { 562 LXW_CHART_AXIS_POSITION_DEFAULT = 0, 563 LXW_CHART_AXIS_POSITION_ON_TICK = 1, 564 LXW_CHART_AXIS_POSITION_BETWEEN = 2, 565 } 566 enum LXW_CHART_AXIS_POSITION_DEFAULT = lxw_chart_axis_tick_position.LXW_CHART_AXIS_POSITION_DEFAULT; 567 enum LXW_CHART_AXIS_POSITION_ON_TICK = lxw_chart_axis_tick_position.LXW_CHART_AXIS_POSITION_ON_TICK; 568 enum LXW_CHART_AXIS_POSITION_BETWEEN = lxw_chart_axis_tick_position.LXW_CHART_AXIS_POSITION_BETWEEN; 569 enum lxw_chart_axis_label_position 570 { 571 LXW_CHART_AXIS_LABEL_POSITION_NEXT_TO = 0, 572 LXW_CHART_AXIS_LABEL_POSITION_HIGH = 1, 573 LXW_CHART_AXIS_LABEL_POSITION_LOW = 2, 574 LXW_CHART_AXIS_LABEL_POSITION_NONE = 3, 575 } 576 enum LXW_CHART_AXIS_LABEL_POSITION_NEXT_TO = lxw_chart_axis_label_position.LXW_CHART_AXIS_LABEL_POSITION_NEXT_TO; 577 enum LXW_CHART_AXIS_LABEL_POSITION_HIGH = lxw_chart_axis_label_position.LXW_CHART_AXIS_LABEL_POSITION_HIGH; 578 enum LXW_CHART_AXIS_LABEL_POSITION_LOW = lxw_chart_axis_label_position.LXW_CHART_AXIS_LABEL_POSITION_LOW; 579 enum LXW_CHART_AXIS_LABEL_POSITION_NONE = lxw_chart_axis_label_position.LXW_CHART_AXIS_LABEL_POSITION_NONE; 580 enum lxw_chart_axis_label_alignment 581 { 582 LXW_CHART_AXIS_LABEL_ALIGN_CENTER = 0, 583 LXW_CHART_AXIS_LABEL_ALIGN_LEFT = 1, 584 LXW_CHART_AXIS_LABEL_ALIGN_RIGHT = 2, 585 } 586 enum LXW_CHART_AXIS_LABEL_ALIGN_CENTER = lxw_chart_axis_label_alignment.LXW_CHART_AXIS_LABEL_ALIGN_CENTER; 587 enum LXW_CHART_AXIS_LABEL_ALIGN_LEFT = lxw_chart_axis_label_alignment.LXW_CHART_AXIS_LABEL_ALIGN_LEFT; 588 enum LXW_CHART_AXIS_LABEL_ALIGN_RIGHT = lxw_chart_axis_label_alignment.LXW_CHART_AXIS_LABEL_ALIGN_RIGHT; 589 enum lxw_chart_axis_display_unit 590 { 591 LXW_CHART_AXIS_UNITS_NONE = 0, 592 LXW_CHART_AXIS_UNITS_HUNDREDS = 1, 593 LXW_CHART_AXIS_UNITS_THOUSANDS = 2, 594 LXW_CHART_AXIS_UNITS_TEN_THOUSANDS = 3, 595 LXW_CHART_AXIS_UNITS_HUNDRED_THOUSANDS = 4, 596 LXW_CHART_AXIS_UNITS_MILLIONS = 5, 597 LXW_CHART_AXIS_UNITS_TEN_MILLIONS = 6, 598 LXW_CHART_AXIS_UNITS_HUNDRED_MILLIONS = 7, 599 LXW_CHART_AXIS_UNITS_BILLIONS = 8, 600 LXW_CHART_AXIS_UNITS_TRILLIONS = 9, 601 } 602 enum LXW_CHART_AXIS_UNITS_NONE = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_NONE; 603 enum LXW_CHART_AXIS_UNITS_HUNDREDS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_HUNDREDS; 604 enum LXW_CHART_AXIS_UNITS_THOUSANDS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_THOUSANDS; 605 enum LXW_CHART_AXIS_UNITS_TEN_THOUSANDS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_TEN_THOUSANDS; 606 enum LXW_CHART_AXIS_UNITS_HUNDRED_THOUSANDS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_HUNDRED_THOUSANDS; 607 enum LXW_CHART_AXIS_UNITS_MILLIONS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_MILLIONS; 608 enum LXW_CHART_AXIS_UNITS_TEN_MILLIONS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_TEN_MILLIONS; 609 enum LXW_CHART_AXIS_UNITS_HUNDRED_MILLIONS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_HUNDRED_MILLIONS; 610 enum LXW_CHART_AXIS_UNITS_BILLIONS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_BILLIONS; 611 enum LXW_CHART_AXIS_UNITS_TRILLIONS = lxw_chart_axis_display_unit.LXW_CHART_AXIS_UNITS_TRILLIONS; 612 alias lxw_chart_tick_mark = lxw_chart_axis_tick_mark; 613 enum lxw_chart_axis_tick_mark 614 { 615 LXW_CHART_AXIS_TICK_MARK_DEFAULT = 0, 616 LXW_CHART_AXIS_TICK_MARK_NONE = 1, 617 LXW_CHART_AXIS_TICK_MARK_INSIDE = 2, 618 LXW_CHART_AXIS_TICK_MARK_OUTSIDE = 3, 619 LXW_CHART_AXIS_TICK_MARK_CROSSING = 4, 620 } 621 enum LXW_CHART_AXIS_TICK_MARK_DEFAULT = lxw_chart_axis_tick_mark.LXW_CHART_AXIS_TICK_MARK_DEFAULT; 622 enum LXW_CHART_AXIS_TICK_MARK_NONE = lxw_chart_axis_tick_mark.LXW_CHART_AXIS_TICK_MARK_NONE; 623 enum LXW_CHART_AXIS_TICK_MARK_INSIDE = lxw_chart_axis_tick_mark.LXW_CHART_AXIS_TICK_MARK_INSIDE; 624 enum LXW_CHART_AXIS_TICK_MARK_OUTSIDE = lxw_chart_axis_tick_mark.LXW_CHART_AXIS_TICK_MARK_OUTSIDE; 625 enum LXW_CHART_AXIS_TICK_MARK_CROSSING = lxw_chart_axis_tick_mark.LXW_CHART_AXIS_TICK_MARK_CROSSING; 626 struct lxw_series_range 627 { 628 char* formula; 629 char* sheetname; 630 lxw_row_t first_row; 631 lxw_row_t last_row; 632 lxw_col_t first_col; 633 lxw_col_t last_col; 634 uint8_t ignore_cache; 635 uint8_t has_string_cache; 636 uint16_t num_data_points; 637 lxw_series_data_points* data_cache; 638 } 639 struct lxw_chart_line 640 { 641 lxw_color_t color; 642 uint8_t none; 643 float width; 644 uint8_t dash_type; 645 uint8_t transparency; 646 uint8_t has_color; 647 } 648 struct lxw_chart_fill 649 { 650 lxw_color_t color; 651 uint8_t none; 652 uint8_t transparency; 653 uint8_t has_color; 654 } 655 struct lxw_chart_pattern 656 { 657 lxw_color_t fg_color; 658 lxw_color_t bg_color; 659 uint8_t type; 660 uint8_t has_fg_color; 661 uint8_t has_bg_color; 662 } 663 struct lxw_chart_font 664 { 665 char* name; 666 double size; 667 uint8_t bold; 668 uint8_t italic; 669 uint8_t underline; 670 int32_t rotation; 671 lxw_color_t color; 672 uint8_t pitch_family; 673 uint8_t charset; 674 int8_t baseline; 675 uint8_t has_color; 676 } 677 struct lxw_chart_marker 678 { 679 uint8_t type; 680 uint8_t size; 681 lxw_chart_line* line; 682 lxw_chart_fill* fill; 683 lxw_chart_pattern* pattern; 684 } 685 struct lxw_chart_legend 686 { 687 lxw_chart_font* font; 688 uint8_t position; 689 } 690 struct lxw_chart_title 691 { 692 char* name; 693 lxw_row_t row; 694 lxw_col_t col; 695 lxw_chart_font* font; 696 uint8_t off; 697 uint8_t is_horizontal; 698 uint8_t ignore_cache; 699 lxw_series_range* range; 700 lxw_series_data_point data_point; 701 } 702 struct lxw_chart_point 703 { 704 lxw_chart_line* line; 705 lxw_chart_fill* fill; 706 lxw_chart_pattern* pattern; 707 } 708 enum lxw_chart_blank 709 { 710 LXW_CHART_BLANKS_AS_GAP = 0, 711 LXW_CHART_BLANKS_AS_ZERO = 1, 712 LXW_CHART_BLANKS_AS_CONNECTED = 2, 713 } 714 enum LXW_CHART_BLANKS_AS_GAP = lxw_chart_blank.LXW_CHART_BLANKS_AS_GAP; 715 enum LXW_CHART_BLANKS_AS_ZERO = lxw_chart_blank.LXW_CHART_BLANKS_AS_ZERO; 716 enum LXW_CHART_BLANKS_AS_CONNECTED = lxw_chart_blank.LXW_CHART_BLANKS_AS_CONNECTED; 717 enum lxw_chart_position 718 { 719 LXW_CHART_AXIS_RIGHT = 0, 720 LXW_CHART_AXIS_LEFT = 1, 721 LXW_CHART_AXIS_TOP = 2, 722 LXW_CHART_AXIS_BOTTOM = 3, 723 } 724 enum LXW_CHART_AXIS_RIGHT = lxw_chart_position.LXW_CHART_AXIS_RIGHT; 725 enum LXW_CHART_AXIS_LEFT = lxw_chart_position.LXW_CHART_AXIS_LEFT; 726 enum LXW_CHART_AXIS_TOP = lxw_chart_position.LXW_CHART_AXIS_TOP; 727 enum LXW_CHART_AXIS_BOTTOM = lxw_chart_position.LXW_CHART_AXIS_BOTTOM; 728 enum lxw_chart_error_bar_type 729 { 730 LXW_CHART_ERROR_BAR_TYPE_STD_ERROR = 0, 731 LXW_CHART_ERROR_BAR_TYPE_FIXED = 1, 732 LXW_CHART_ERROR_BAR_TYPE_PERCENTAGE = 2, 733 LXW_CHART_ERROR_BAR_TYPE_STD_DEV = 3, 734 } 735 enum LXW_CHART_ERROR_BAR_TYPE_STD_ERROR = lxw_chart_error_bar_type.LXW_CHART_ERROR_BAR_TYPE_STD_ERROR; 736 enum LXW_CHART_ERROR_BAR_TYPE_FIXED = lxw_chart_error_bar_type.LXW_CHART_ERROR_BAR_TYPE_FIXED; 737 enum LXW_CHART_ERROR_BAR_TYPE_PERCENTAGE = lxw_chart_error_bar_type.LXW_CHART_ERROR_BAR_TYPE_PERCENTAGE; 738 enum LXW_CHART_ERROR_BAR_TYPE_STD_DEV = lxw_chart_error_bar_type.LXW_CHART_ERROR_BAR_TYPE_STD_DEV; 739 enum lxw_chart_error_bar_direction 740 { 741 LXW_CHART_ERROR_BAR_DIR_BOTH = 0, 742 LXW_CHART_ERROR_BAR_DIR_PLUS = 1, 743 LXW_CHART_ERROR_BAR_DIR_MINUS = 2, 744 } 745 enum LXW_CHART_ERROR_BAR_DIR_BOTH = lxw_chart_error_bar_direction.LXW_CHART_ERROR_BAR_DIR_BOTH; 746 enum LXW_CHART_ERROR_BAR_DIR_PLUS = lxw_chart_error_bar_direction.LXW_CHART_ERROR_BAR_DIR_PLUS; 747 enum LXW_CHART_ERROR_BAR_DIR_MINUS = lxw_chart_error_bar_direction.LXW_CHART_ERROR_BAR_DIR_MINUS; 748 enum lxw_chart_error_bar_axis 749 { 750 LXW_CHART_ERROR_BAR_AXIS_X = 0, 751 LXW_CHART_ERROR_BAR_AXIS_Y = 1, 752 } 753 enum LXW_CHART_ERROR_BAR_AXIS_X = lxw_chart_error_bar_axis.LXW_CHART_ERROR_BAR_AXIS_X; 754 enum LXW_CHART_ERROR_BAR_AXIS_Y = lxw_chart_error_bar_axis.LXW_CHART_ERROR_BAR_AXIS_Y; 755 enum lxw_chart_error_bar_cap 756 { 757 LXW_CHART_ERROR_BAR_END_CAP = 0, 758 LXW_CHART_ERROR_BAR_NO_CAP = 1, 759 } 760 enum LXW_CHART_ERROR_BAR_END_CAP = lxw_chart_error_bar_cap.LXW_CHART_ERROR_BAR_END_CAP; 761 enum LXW_CHART_ERROR_BAR_NO_CAP = lxw_chart_error_bar_cap.LXW_CHART_ERROR_BAR_NO_CAP; 762 struct lxw_series_error_bars 763 { 764 uint8_t type; 765 uint8_t direction; 766 uint8_t endcap; 767 uint8_t has_value; 768 uint8_t is_set; 769 uint8_t is_x; 770 uint8_t chart_group; 771 double value; 772 lxw_chart_line* line; 773 } 774 enum lxw_chart_trendline_type 775 { 776 LXW_CHART_TRENDLINE_TYPE_LINEAR = 0, 777 LXW_CHART_TRENDLINE_TYPE_LOG = 1, 778 LXW_CHART_TRENDLINE_TYPE_POLY = 2, 779 LXW_CHART_TRENDLINE_TYPE_POWER = 3, 780 LXW_CHART_TRENDLINE_TYPE_EXP = 4, 781 LXW_CHART_TRENDLINE_TYPE_AVERAGE = 5, 782 } 783 enum LXW_CHART_TRENDLINE_TYPE_LINEAR = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_LINEAR; 784 enum LXW_CHART_TRENDLINE_TYPE_LOG = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_LOG; 785 enum LXW_CHART_TRENDLINE_TYPE_POLY = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_POLY; 786 enum LXW_CHART_TRENDLINE_TYPE_POWER = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_POWER; 787 enum LXW_CHART_TRENDLINE_TYPE_EXP = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_EXP; 788 enum LXW_CHART_TRENDLINE_TYPE_AVERAGE = lxw_chart_trendline_type.LXW_CHART_TRENDLINE_TYPE_AVERAGE; 789 struct lxw_chart_gridline 790 { 791 uint8_t visible; 792 lxw_chart_line* line; 793 } 794 struct lxw_chart_axis 795 { 796 lxw_chart_title title; 797 char* num_format; 798 char* default_num_format; 799 uint8_t source_linked; 800 uint8_t major_tick_mark; 801 uint8_t minor_tick_mark; 802 uint8_t is_horizontal; 803 lxw_chart_gridline major_gridlines; 804 lxw_chart_gridline minor_gridlines; 805 lxw_chart_font* num_font; 806 lxw_chart_line* line; 807 lxw_chart_fill* fill; 808 lxw_chart_pattern* pattern; 809 uint8_t is_category; 810 uint8_t is_date; 811 uint8_t is_value; 812 uint8_t axis_position; 813 uint8_t position_axis; 814 uint8_t label_position; 815 uint8_t label_align; 816 uint8_t hidden; 817 uint8_t reverse; 818 uint8_t has_min; 819 double min; 820 uint8_t has_max; 821 double max; 822 uint8_t has_major_unit; 823 double major_unit; 824 uint8_t has_minor_unit; 825 double minor_unit; 826 uint16_t interval_unit; 827 uint16_t interval_tick; 828 uint16_t log_base; 829 uint8_t display_units; 830 uint8_t display_units_visible; 831 uint8_t has_crossing; 832 uint8_t crossing_max; 833 double crossing; 834 } 835 struct lxw_chart 836 { 837 FILE* file; 838 uint8_t type; 839 uint8_t subtype; 840 uint16_t series_index; 841 void function(lxw_chart*) write_chart_type; 842 void function(lxw_chart*) write_plot_area; 843 lxw_chart_axis* x_axis; 844 lxw_chart_axis* y_axis; 845 lxw_chart_title title; 846 uint32_t id; 847 uint32_t axis_id_1; 848 uint32_t axis_id_2; 849 uint32_t axis_id_3; 850 uint32_t axis_id_4; 851 uint8_t in_use; 852 uint8_t chart_group; 853 uint8_t cat_has_num_fmt; 854 uint8_t is_chartsheet; 855 uint8_t has_horiz_cat_axis; 856 uint8_t has_horiz_val_axis; 857 uint8_t style_id; 858 uint16_t rotation; 859 uint16_t hole_size; 860 uint8_t no_title; 861 uint8_t has_overlap; 862 int8_t overlap_y1; 863 int8_t overlap_y2; 864 uint16_t gap_y1; 865 uint16_t gap_y2; 866 uint8_t grouping; 867 uint8_t default_cross_between; 868 lxw_chart_legend legend; 869 int16_t* delete_series; 870 uint16_t delete_series_count; 871 lxw_chart_marker* default_marker; 872 lxw_chart_line* chartarea_line; 873 lxw_chart_fill* chartarea_fill; 874 lxw_chart_pattern* chartarea_pattern; 875 lxw_chart_line* plotarea_line; 876 lxw_chart_fill* plotarea_fill; 877 lxw_chart_pattern* plotarea_pattern; 878 uint8_t has_drop_lines; 879 lxw_chart_line* drop_lines_line; 880 uint8_t has_high_low_lines; 881 lxw_chart_line* high_low_lines_line; 882 lxw_chart_series_list* series_list; 883 uint8_t has_table; 884 uint8_t has_table_vertical; 885 uint8_t has_table_horizontal; 886 uint8_t has_table_outline; 887 uint8_t has_table_legend_keys; 888 lxw_chart_font* table_font; 889 uint8_t show_blanks_as; 890 uint8_t show_hidden_data; 891 uint8_t has_up_down_bars; 892 lxw_chart_line* up_bar_line; 893 lxw_chart_line* down_bar_line; 894 lxw_chart_fill* up_bar_fill; 895 lxw_chart_fill* down_bar_fill; 896 uint8_t default_label_position; 897 uint8_t is_protected; 898 static struct _Anonymous_4 899 { 900 lxw_chart* stqe_next; 901 } 902 _Anonymous_4 ordered_list_pointers; 903 static struct _Anonymous_5 904 { 905 lxw_chart* stqe_next; 906 } 907 _Anonymous_5 list_pointers; 908 } 909 lxw_chart* lxw_chart_new(uint8_t) @nogc nothrow; 910 void lxw_chart_free(lxw_chart*) @nogc nothrow; 911 void lxw_chart_assemble_xml_file(lxw_chart*) @nogc nothrow; 912 lxw_chart_series* chart_add_series(lxw_chart*, const(char)*, const(char)*) @nogc nothrow; 913 void chart_series_set_categories(lxw_chart_series*, const(char)*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t) @nogc nothrow; 914 void chart_series_set_values(lxw_chart_series*, const(char)*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t) @nogc nothrow; 915 void chart_series_set_name(lxw_chart_series*, const(char)*) @nogc nothrow; 916 void chart_series_set_name_range(lxw_chart_series*, const(char)*, lxw_row_t, lxw_col_t) @nogc nothrow; 917 void chart_series_set_line(lxw_chart_series*, lxw_chart_line*) @nogc nothrow; 918 void chart_series_set_fill(lxw_chart_series*, lxw_chart_fill*) @nogc nothrow; 919 void chart_series_set_invert_if_negative(lxw_chart_series*) @nogc nothrow; 920 void chart_series_set_pattern(lxw_chart_series*, lxw_chart_pattern*) @nogc nothrow; 921 void chart_series_set_marker_type(lxw_chart_series*, uint8_t) @nogc nothrow; 922 void chart_series_set_marker_size(lxw_chart_series*, uint8_t) @nogc nothrow; 923 void chart_series_set_marker_line(lxw_chart_series*, lxw_chart_line*) @nogc nothrow; 924 void chart_series_set_marker_fill(lxw_chart_series*, lxw_chart_fill*) @nogc nothrow; 925 void chart_series_set_marker_pattern(lxw_chart_series*, lxw_chart_pattern*) @nogc nothrow; 926 lxw_error chart_series_set_points(lxw_chart_series*, lxw_chart_point**) @nogc nothrow; 927 void chart_series_set_smooth(lxw_chart_series*, uint8_t) @nogc nothrow; 928 void chart_series_set_labels(lxw_chart_series*) @nogc nothrow; 929 void chart_series_set_labels_options(lxw_chart_series*, uint8_t, uint8_t, uint8_t) @nogc nothrow; 930 void chart_series_set_labels_separator(lxw_chart_series*, uint8_t) @nogc nothrow; 931 void chart_series_set_labels_position(lxw_chart_series*, uint8_t) @nogc nothrow; 932 void chart_series_set_labels_leader_line(lxw_chart_series*) @nogc nothrow; 933 void chart_series_set_labels_legend(lxw_chart_series*) @nogc nothrow; 934 void chart_series_set_labels_percentage(lxw_chart_series*) @nogc nothrow; 935 void chart_series_set_labels_num_format(lxw_chart_series*, const(char)*) @nogc nothrow; 936 void chart_series_set_labels_font(lxw_chart_series*, lxw_chart_font*) @nogc nothrow; 937 void chart_series_set_trendline(lxw_chart_series*, uint8_t, uint8_t) @nogc nothrow; 938 void chart_series_set_trendline_forecast(lxw_chart_series*, double, double) @nogc nothrow; 939 void chart_series_set_trendline_equation(lxw_chart_series*) @nogc nothrow; 940 void chart_series_set_trendline_r_squared(lxw_chart_series*) @nogc nothrow; 941 void chart_series_set_trendline_intercept(lxw_chart_series*, double) @nogc nothrow; 942 void chart_series_set_trendline_name(lxw_chart_series*, const(char)*) @nogc nothrow; 943 void chart_series_set_trendline_line(lxw_chart_series*, lxw_chart_line*) @nogc nothrow; 944 lxw_series_error_bars* chart_series_get_error_bars(lxw_chart_series*, lxw_chart_error_bar_axis) @nogc nothrow; 945 void chart_series_set_error_bars(lxw_series_error_bars*, uint8_t, double) @nogc nothrow; 946 void chart_series_set_error_bars_direction(lxw_series_error_bars*, uint8_t) @nogc nothrow; 947 void chart_series_set_error_bars_endcap(lxw_series_error_bars*, uint8_t) @nogc nothrow; 948 void chart_series_set_error_bars_line(lxw_series_error_bars*, lxw_chart_line*) @nogc nothrow; 949 lxw_chart_axis* chart_axis_get(lxw_chart*, lxw_chart_axis_type) @nogc nothrow; 950 void chart_axis_set_name(lxw_chart_axis*, const(char)*) @nogc nothrow; 951 void chart_axis_set_name_range(lxw_chart_axis*, const(char)*, lxw_row_t, lxw_col_t) @nogc nothrow; 952 void chart_axis_set_name_font(lxw_chart_axis*, lxw_chart_font*) @nogc nothrow; 953 void chart_axis_set_num_font(lxw_chart_axis*, lxw_chart_font*) @nogc nothrow; 954 void chart_axis_set_num_format(lxw_chart_axis*, const(char)*) @nogc nothrow; 955 void chart_axis_set_line(lxw_chart_axis*, lxw_chart_line*) @nogc nothrow; 956 void chart_axis_set_fill(lxw_chart_axis*, lxw_chart_fill*) @nogc nothrow; 957 void chart_axis_set_pattern(lxw_chart_axis*, lxw_chart_pattern*) @nogc nothrow; 958 void chart_axis_set_reverse(lxw_chart_axis*) @nogc nothrow; 959 void chart_axis_set_crossing(lxw_chart_axis*, double) @nogc nothrow; 960 void chart_axis_set_crossing_max(lxw_chart_axis*) @nogc nothrow; 961 void chart_axis_off(lxw_chart_axis*) @nogc nothrow; 962 void chart_axis_set_position(lxw_chart_axis*, uint8_t) @nogc nothrow; 963 void chart_axis_set_label_position(lxw_chart_axis*, uint8_t) @nogc nothrow; 964 void chart_axis_set_label_align(lxw_chart_axis*, uint8_t) @nogc nothrow; 965 void chart_axis_set_min(lxw_chart_axis*, double) @nogc nothrow; 966 void chart_axis_set_max(lxw_chart_axis*, double) @nogc nothrow; 967 void chart_axis_set_log_base(lxw_chart_axis*, uint16_t) @nogc nothrow; 968 void chart_axis_set_major_tick_mark(lxw_chart_axis*, uint8_t) @nogc nothrow; 969 void chart_axis_set_minor_tick_mark(lxw_chart_axis*, uint8_t) @nogc nothrow; 970 void chart_axis_set_interval_unit(lxw_chart_axis*, uint16_t) @nogc nothrow; 971 void chart_axis_set_interval_tick(lxw_chart_axis*, uint16_t) @nogc nothrow; 972 void chart_axis_set_major_unit(lxw_chart_axis*, double) @nogc nothrow; 973 void chart_axis_set_minor_unit(lxw_chart_axis*, double) @nogc nothrow; 974 void chart_axis_set_display_units(lxw_chart_axis*, uint8_t) @nogc nothrow; 975 void chart_axis_set_display_units_visible(lxw_chart_axis*, uint8_t) @nogc nothrow; 976 void chart_axis_major_gridlines_set_visible(lxw_chart_axis*, uint8_t) @nogc nothrow; 977 void chart_axis_minor_gridlines_set_visible(lxw_chart_axis*, uint8_t) @nogc nothrow; 978 void chart_axis_major_gridlines_set_line(lxw_chart_axis*, lxw_chart_line*) @nogc nothrow; 979 void chart_axis_minor_gridlines_set_line(lxw_chart_axis*, lxw_chart_line*) @nogc nothrow; 980 void chart_title_set_name(lxw_chart*, const(char)*) @nogc nothrow; 981 void chart_title_set_name_range(lxw_chart*, const(char)*, lxw_row_t, lxw_col_t) @nogc nothrow; 982 void chart_title_set_name_font(lxw_chart*, lxw_chart_font*) @nogc nothrow; 983 void chart_title_off(lxw_chart*) @nogc nothrow; 984 void chart_legend_set_position(lxw_chart*, uint8_t) @nogc nothrow; 985 void chart_legend_set_font(lxw_chart*, lxw_chart_font*) @nogc nothrow; 986 lxw_error chart_legend_delete_series(lxw_chart*, int16_t*) @nogc nothrow; 987 void chart_chartarea_set_line(lxw_chart*, lxw_chart_line*) @nogc nothrow; 988 void chart_chartarea_set_fill(lxw_chart*, lxw_chart_fill*) @nogc nothrow; 989 void chart_chartarea_set_pattern(lxw_chart*, lxw_chart_pattern*) @nogc nothrow; 990 void chart_plotarea_set_line(lxw_chart*, lxw_chart_line*) @nogc nothrow; 991 void chart_plotarea_set_fill(lxw_chart*, lxw_chart_fill*) @nogc nothrow; 992 void chart_plotarea_set_pattern(lxw_chart*, lxw_chart_pattern*) @nogc nothrow; 993 void chart_set_style(lxw_chart*, uint8_t) @nogc nothrow; 994 void chart_set_table(lxw_chart*) @nogc nothrow; 995 void chart_set_table_grid(lxw_chart*, uint8_t, uint8_t, uint8_t, uint8_t) @nogc nothrow; 996 void chart_set_table_font(lxw_chart*, lxw_chart_font*) @nogc nothrow; 997 void chart_set_up_down_bars(lxw_chart*) @nogc nothrow; 998 void chart_set_up_down_bars_format(lxw_chart*, lxw_chart_line*, lxw_chart_fill*, lxw_chart_line*, lxw_chart_fill*) @nogc nothrow; 999 void chart_set_drop_lines(lxw_chart*, lxw_chart_line*) @nogc nothrow; 1000 void chart_set_high_low_lines(lxw_chart*, lxw_chart_line*) @nogc nothrow; 1001 void chart_set_series_overlap(lxw_chart*, int8_t) @nogc nothrow; 1002 void chart_set_series_gap(lxw_chart*, uint16_t) @nogc nothrow; 1003 void chart_show_blanks_as(lxw_chart*, uint8_t) @nogc nothrow; 1004 void chart_show_hidden_data(lxw_chart*) @nogc nothrow; 1005 void chart_set_rotation(lxw_chart*, uint16_t) @nogc nothrow; 1006 void chart_set_hole_size(lxw_chart*, uint8_t) @nogc nothrow; 1007 lxw_error lxw_chart_add_data_cache(lxw_series_range*, uint8_t*, uint16_t, uint8_t, uint8_t) @nogc nothrow; 1008 struct internal_state; 1009 struct lxw_chartsheet 1010 { 1011 FILE* file; 1012 lxw_worksheet* worksheet; 1013 lxw_chart* chart; 1014 lxw_protection protection; 1015 uint8_t is_protected; 1016 char* name; 1017 char* quoted_name; 1018 char* tmpdir; 1019 uint32_t index; 1020 uint8_t active; 1021 uint8_t selected; 1022 uint8_t hidden; 1023 uint16_t* active_sheet; 1024 uint16_t* first_sheet; 1025 uint16_t rel_count; 1026 static struct _Anonymous_6 1027 { 1028 lxw_chartsheet* stqe_next; 1029 } 1030 _Anonymous_6 list_pointers; 1031 } 1032 lxw_error chartsheet_set_chart(lxw_chartsheet*, lxw_chart*) @nogc nothrow; 1033 lxw_error chartsheet_set_chart_opt(lxw_chartsheet*, lxw_chart*, lxw_image_options*) @nogc nothrow; 1034 void chartsheet_activate(lxw_chartsheet*) @nogc nothrow; 1035 void chartsheet_select(lxw_chartsheet*) @nogc nothrow; 1036 void chartsheet_hide(lxw_chartsheet*) @nogc nothrow; 1037 void chartsheet_set_first_sheet(lxw_chartsheet*) @nogc nothrow; 1038 void chartsheet_set_tab_color(lxw_chartsheet*, lxw_color_t) @nogc nothrow; 1039 void chartsheet_protect(lxw_chartsheet*, const(char)*, lxw_protection*) @nogc nothrow; 1040 void chartsheet_set_zoom(lxw_chartsheet*, uint16_t) @nogc nothrow; 1041 void chartsheet_set_landscape(lxw_chartsheet*) @nogc nothrow; 1042 void chartsheet_set_portrait(lxw_chartsheet*) @nogc nothrow; 1043 void chartsheet_set_paper(lxw_chartsheet*, uint8_t) @nogc nothrow; 1044 void chartsheet_set_margins(lxw_chartsheet*, double, double, double, double) @nogc nothrow; 1045 lxw_error chartsheet_set_header(lxw_chartsheet*, const(char)*) @nogc nothrow; 1046 lxw_error chartsheet_set_footer(lxw_chartsheet*, const(char)*) @nogc nothrow; 1047 lxw_error chartsheet_set_header_opt(lxw_chartsheet*, const(char)*, lxw_header_footer_options*) @nogc nothrow; 1048 lxw_error chartsheet_set_footer_opt(lxw_chartsheet*, const(char)*, lxw_header_footer_options*) @nogc nothrow; 1049 lxw_chartsheet* lxw_chartsheet_new() @nogc nothrow; 1050 void lxw_chartsheet_free(lxw_chartsheet*) @nogc nothrow; 1051 void lxw_chartsheet_assemble_xml_file(lxw_chartsheet*) @nogc nothrow; 1052 alias free_func = void function(voidpf, voidpf) @nogc nothrow; 1053 alias lxw_row_t = uint; 1054 alias lxw_col_t = ushort; 1055 enum lxw_boolean 1056 { 1057 LXW_FALSE = 0, 1058 LXW_TRUE = 1, 1059 } 1060 enum LXW_FALSE = lxw_boolean.LXW_FALSE; 1061 enum LXW_TRUE = lxw_boolean.LXW_TRUE; 1062 enum lxw_error 1063 { 1064 LXW_NO_ERROR = 0, 1065 LXW_ERROR_MEMORY_MALLOC_FAILED = 1, 1066 LXW_ERROR_CREATING_XLSX_FILE = 2, 1067 LXW_ERROR_CREATING_TMPFILE = 3, 1068 LXW_ERROR_READING_TMPFILE = 4, 1069 LXW_ERROR_ZIP_FILE_OPERATION = 5, 1070 LXW_ERROR_ZIP_FILE_ADD = 6, 1071 LXW_ERROR_ZIP_CLOSE = 7, 1072 LXW_ERROR_NULL_PARAMETER_IGNORED = 8, 1073 LXW_ERROR_PARAMETER_VALIDATION = 9, 1074 LXW_ERROR_SHEETNAME_LENGTH_EXCEEDED = 10, 1075 LXW_ERROR_INVALID_SHEETNAME_CHARACTER = 11, 1076 LXW_ERROR_SHEETNAME_ALREADY_USED = 12, 1077 LXW_ERROR_32_STRING_LENGTH_EXCEEDED = 13, 1078 LXW_ERROR_128_STRING_LENGTH_EXCEEDED = 14, 1079 LXW_ERROR_255_STRING_LENGTH_EXCEEDED = 15, 1080 LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED = 16, 1081 LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND = 17, 1082 LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE = 18, 1083 LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED = 19, 1084 LXW_ERROR_IMAGE_DIMENSIONS = 20, 1085 LXW_MAX_ERRNO = 21, 1086 } 1087 enum LXW_NO_ERROR = lxw_error.LXW_NO_ERROR; 1088 enum LXW_ERROR_MEMORY_MALLOC_FAILED = lxw_error.LXW_ERROR_MEMORY_MALLOC_FAILED; 1089 enum LXW_ERROR_CREATING_XLSX_FILE = lxw_error.LXW_ERROR_CREATING_XLSX_FILE; 1090 enum LXW_ERROR_CREATING_TMPFILE = lxw_error.LXW_ERROR_CREATING_TMPFILE; 1091 enum LXW_ERROR_READING_TMPFILE = lxw_error.LXW_ERROR_READING_TMPFILE; 1092 enum LXW_ERROR_ZIP_FILE_OPERATION = lxw_error.LXW_ERROR_ZIP_FILE_OPERATION; 1093 enum LXW_ERROR_ZIP_FILE_ADD = lxw_error.LXW_ERROR_ZIP_FILE_ADD; 1094 enum LXW_ERROR_ZIP_CLOSE = lxw_error.LXW_ERROR_ZIP_CLOSE; 1095 enum LXW_ERROR_NULL_PARAMETER_IGNORED = lxw_error.LXW_ERROR_NULL_PARAMETER_IGNORED; 1096 enum LXW_ERROR_PARAMETER_VALIDATION = lxw_error.LXW_ERROR_PARAMETER_VALIDATION; 1097 enum LXW_ERROR_SHEETNAME_LENGTH_EXCEEDED = lxw_error.LXW_ERROR_SHEETNAME_LENGTH_EXCEEDED; 1098 enum LXW_ERROR_INVALID_SHEETNAME_CHARACTER = lxw_error.LXW_ERROR_INVALID_SHEETNAME_CHARACTER; 1099 enum LXW_ERROR_SHEETNAME_ALREADY_USED = lxw_error.LXW_ERROR_SHEETNAME_ALREADY_USED; 1100 enum LXW_ERROR_32_STRING_LENGTH_EXCEEDED = lxw_error.LXW_ERROR_32_STRING_LENGTH_EXCEEDED; 1101 enum LXW_ERROR_128_STRING_LENGTH_EXCEEDED = lxw_error.LXW_ERROR_128_STRING_LENGTH_EXCEEDED; 1102 enum LXW_ERROR_255_STRING_LENGTH_EXCEEDED = lxw_error.LXW_ERROR_255_STRING_LENGTH_EXCEEDED; 1103 enum LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED = lxw_error.LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED; 1104 enum LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND = lxw_error.LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND; 1105 enum LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE = lxw_error.LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE; 1106 enum LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED = lxw_error.LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED; 1107 enum LXW_ERROR_IMAGE_DIMENSIONS = lxw_error.LXW_ERROR_IMAGE_DIMENSIONS; 1108 enum LXW_MAX_ERRNO = lxw_error.LXW_MAX_ERRNO; 1109 struct lxw_datetime 1110 { 1111 int year; 1112 int month; 1113 int day; 1114 int hour; 1115 int min; 1116 double sec; 1117 } 1118 enum lxw_custom_property_types 1119 { 1120 LXW_CUSTOM_NONE = 0, 1121 LXW_CUSTOM_STRING = 1, 1122 LXW_CUSTOM_DOUBLE = 2, 1123 LXW_CUSTOM_INTEGER = 3, 1124 LXW_CUSTOM_BOOLEAN = 4, 1125 LXW_CUSTOM_DATETIME = 5, 1126 } 1127 enum LXW_CUSTOM_NONE = lxw_custom_property_types.LXW_CUSTOM_NONE; 1128 enum LXW_CUSTOM_STRING = lxw_custom_property_types.LXW_CUSTOM_STRING; 1129 enum LXW_CUSTOM_DOUBLE = lxw_custom_property_types.LXW_CUSTOM_DOUBLE; 1130 enum LXW_CUSTOM_INTEGER = lxw_custom_property_types.LXW_CUSTOM_INTEGER; 1131 enum LXW_CUSTOM_BOOLEAN = lxw_custom_property_types.LXW_CUSTOM_BOOLEAN; 1132 enum LXW_CUSTOM_DATETIME = lxw_custom_property_types.LXW_CUSTOM_DATETIME; 1133 alias alloc_func = void* function(voidpf, uInt, uInt) @nogc nothrow; 1134 alias z_crc_t = uint; 1135 alias voidp = void*; 1136 alias voidpf = void*; 1137 alias voidpc = const(void)*; 1138 alias uLongf = c_ulong; 1139 alias uIntf = uint; 1140 alias intf = int; 1141 alias charf = char; 1142 alias Bytef = ubyte; 1143 alias uLong = c_ulong; 1144 alias uInt = uint; 1145 alias Byte = ubyte; 1146 struct lxw_format 1147 { 1148 FILE* file; 1149 lxw_hash_table* xf_format_indices; 1150 uint16_t* num_xf_formats; 1151 int32_t xf_index; 1152 int32_t dxf_index; 1153 char[128] num_format; 1154 char[128] font_name; 1155 char[128] font_scheme; 1156 uint16_t num_format_index; 1157 uint16_t font_index; 1158 uint8_t has_font; 1159 uint8_t has_dxf_font; 1160 double font_size; 1161 uint8_t bold; 1162 uint8_t italic; 1163 lxw_color_t font_color; 1164 uint8_t underline; 1165 uint8_t font_strikeout; 1166 uint8_t font_outline; 1167 uint8_t font_shadow; 1168 uint8_t font_script; 1169 uint8_t font_family; 1170 uint8_t font_charset; 1171 uint8_t font_condense; 1172 uint8_t font_extend; 1173 uint8_t theme; 1174 uint8_t hyperlink; 1175 uint8_t hidden; 1176 uint8_t locked; 1177 uint8_t text_h_align; 1178 uint8_t text_wrap; 1179 uint8_t text_v_align; 1180 uint8_t text_justlast; 1181 int16_t rotation; 1182 lxw_color_t fg_color; 1183 lxw_color_t bg_color; 1184 uint8_t pattern; 1185 uint8_t has_fill; 1186 uint8_t has_dxf_fill; 1187 int32_t fill_index; 1188 int32_t fill_count; 1189 int32_t border_index; 1190 uint8_t has_border; 1191 uint8_t has_dxf_border; 1192 int32_t border_count; 1193 uint8_t bottom; 1194 uint8_t diag_border; 1195 uint8_t diag_type; 1196 uint8_t left; 1197 uint8_t right; 1198 uint8_t top; 1199 lxw_color_t bottom_color; 1200 lxw_color_t diag_color; 1201 lxw_color_t left_color; 1202 lxw_color_t right_color; 1203 lxw_color_t top_color; 1204 uint8_t indent; 1205 uint8_t shrink; 1206 uint8_t merge_range; 1207 uint8_t reading_order; 1208 uint8_t just_distrib; 1209 uint8_t color_indexed; 1210 uint8_t font_only; 1211 static struct _Anonymous_7 1212 { 1213 lxw_format* stqe_next; 1214 } 1215 _Anonymous_7 list_pointers; 1216 } 1217 struct lxw_formats 1218 { 1219 lxw_format* stqh_first; 1220 lxw_format** stqh_last; 1221 } 1222 struct lxw_tuple 1223 { 1224 char* key; 1225 char* value; 1226 static struct _Anonymous_8 1227 { 1228 lxw_tuple* stqe_next; 1229 } 1230 _Anonymous_8 list_pointers; 1231 } 1232 struct lxw_tuples 1233 { 1234 lxw_tuple* stqh_first; 1235 lxw_tuple** stqh_last; 1236 } 1237 struct lxw_custom_property 1238 { 1239 lxw_custom_property_types type; 1240 char* name; 1241 static union _Anonymous_9 1242 { 1243 char* string; 1244 double number; 1245 int32_t integer; 1246 uint8_t boolean; 1247 lxw_datetime datetime; 1248 } 1249 _Anonymous_9 u; 1250 static struct _Anonymous_10 1251 { 1252 lxw_custom_property* stqe_next; 1253 } 1254 _Anonymous_10 list_pointers; 1255 } 1256 struct lxw_custom_properties 1257 { 1258 lxw_custom_property* stqh_first; 1259 lxw_custom_property** stqh_last; 1260 } 1261 alias z_size_t = c_ulong; 1262 struct lxw_content_types 1263 { 1264 FILE* file; 1265 lxw_tuples* default_types; 1266 lxw_tuples* overrides; 1267 } 1268 lxw_content_types* lxw_content_types_new() @nogc nothrow; 1269 void lxw_content_types_free(lxw_content_types*) @nogc nothrow; 1270 void lxw_content_types_assemble_xml_file(lxw_content_types*) @nogc nothrow; 1271 void lxw_ct_add_default(lxw_content_types*, const(char)*, const(char)*) @nogc nothrow; 1272 void lxw_ct_add_override(lxw_content_types*, const(char)*, const(char)*) @nogc nothrow; 1273 void lxw_ct_add_worksheet_name(lxw_content_types*, const(char)*) @nogc nothrow; 1274 void lxw_ct_add_chartsheet_name(lxw_content_types*, const(char)*) @nogc nothrow; 1275 void lxw_ct_add_chart_name(lxw_content_types*, const(char)*) @nogc nothrow; 1276 void lxw_ct_add_drawing_name(lxw_content_types*, const(char)*) @nogc nothrow; 1277 void lxw_ct_add_shared_strings(lxw_content_types*) @nogc nothrow; 1278 void lxw_ct_add_calc_chain(lxw_content_types*) @nogc nothrow; 1279 void lxw_ct_add_custom_properties(lxw_content_types*) @nogc nothrow; 1280 struct lxw_core 1281 { 1282 FILE* file; 1283 lxw_doc_properties* properties; 1284 } 1285 lxw_core* lxw_core_new() @nogc nothrow; 1286 void lxw_core_free(lxw_core*) @nogc nothrow; 1287 void lxw_core_assemble_xml_file(lxw_core*) @nogc nothrow; 1288 struct lxw_custom 1289 { 1290 FILE* file; 1291 lxw_custom_properties* custom_properties; 1292 uint32_t pid; 1293 } 1294 lxw_custom* lxw_custom_new() @nogc nothrow; 1295 void lxw_custom_free(lxw_custom*) @nogc nothrow; 1296 void lxw_custom_assemble_xml_file(lxw_custom*) @nogc nothrow; 1297 struct lxw_drawing_objects 1298 { 1299 lxw_drawing_object* stqh_first; 1300 lxw_drawing_object** stqh_last; 1301 } 1302 struct lxw_drawing_object 1303 { 1304 uint8_t anchor_type; 1305 uint8_t edit_as; 1306 lxw_drawing_coords from; 1307 lxw_drawing_coords to; 1308 uint32_t col_absolute; 1309 uint32_t row_absolute; 1310 uint32_t width; 1311 uint32_t height; 1312 uint8_t shape; 1313 char* description; 1314 char* url; 1315 char* tip; 1316 static struct _Anonymous_11 1317 { 1318 lxw_drawing_object* stqe_next; 1319 } 1320 _Anonymous_11 list_pointers; 1321 } 1322 enum lxw_drawing_types 1323 { 1324 LXW_DRAWING_NONE = 0, 1325 LXW_DRAWING_IMAGE = 1, 1326 LXW_DRAWING_CHART = 2, 1327 LXW_DRAWING_SHAPE = 3, 1328 } 1329 enum LXW_DRAWING_NONE = lxw_drawing_types.LXW_DRAWING_NONE; 1330 enum LXW_DRAWING_IMAGE = lxw_drawing_types.LXW_DRAWING_IMAGE; 1331 enum LXW_DRAWING_CHART = lxw_drawing_types.LXW_DRAWING_CHART; 1332 enum LXW_DRAWING_SHAPE = lxw_drawing_types.LXW_DRAWING_SHAPE; 1333 enum lxw_anchor_types 1334 { 1335 LXW_ANCHOR_TYPE_NONE = 0, 1336 LXW_ANCHOR_TYPE_IMAGE = 1, 1337 LXW_ANCHOR_TYPE_CHART = 2, 1338 } 1339 enum LXW_ANCHOR_TYPE_NONE = lxw_anchor_types.LXW_ANCHOR_TYPE_NONE; 1340 enum LXW_ANCHOR_TYPE_IMAGE = lxw_anchor_types.LXW_ANCHOR_TYPE_IMAGE; 1341 enum LXW_ANCHOR_TYPE_CHART = lxw_anchor_types.LXW_ANCHOR_TYPE_CHART; 1342 enum lxw_anchor_edit_types 1343 { 1344 LXW_ANCHOR_EDIT_AS_NONE = 0, 1345 LXW_ANCHOR_EDIT_AS_RELATIVE = 1, 1346 LXW_ANCHOR_EDIT_AS_ONE_CELL = 2, 1347 LXW_ANCHOR_EDIT_AS_ABSOLUTE = 3, 1348 } 1349 enum LXW_ANCHOR_EDIT_AS_NONE = lxw_anchor_edit_types.LXW_ANCHOR_EDIT_AS_NONE; 1350 enum LXW_ANCHOR_EDIT_AS_RELATIVE = lxw_anchor_edit_types.LXW_ANCHOR_EDIT_AS_RELATIVE; 1351 enum LXW_ANCHOR_EDIT_AS_ONE_CELL = lxw_anchor_edit_types.LXW_ANCHOR_EDIT_AS_ONE_CELL; 1352 enum LXW_ANCHOR_EDIT_AS_ABSOLUTE = lxw_anchor_edit_types.LXW_ANCHOR_EDIT_AS_ABSOLUTE; 1353 enum image_types 1354 { 1355 LXW_IMAGE_UNKNOWN = 0, 1356 LXW_IMAGE_PNG = 1, 1357 LXW_IMAGE_JPEG = 2, 1358 LXW_IMAGE_BMP = 3, 1359 } 1360 enum LXW_IMAGE_UNKNOWN = image_types.LXW_IMAGE_UNKNOWN; 1361 enum LXW_IMAGE_PNG = image_types.LXW_IMAGE_PNG; 1362 enum LXW_IMAGE_JPEG = image_types.LXW_IMAGE_JPEG; 1363 enum LXW_IMAGE_BMP = image_types.LXW_IMAGE_BMP; 1364 struct lxw_drawing_coords 1365 { 1366 uint32_t col; 1367 uint32_t row; 1368 double col_offset; 1369 double row_offset; 1370 } 1371 struct lxw_drawing 1372 { 1373 FILE* file; 1374 uint8_t embedded; 1375 uint8_t orientation; 1376 lxw_drawing_objects* drawing_objects; 1377 } 1378 lxw_drawing* lxw_drawing_new() @nogc nothrow; 1379 void lxw_drawing_free(lxw_drawing*) @nogc nothrow; 1380 void lxw_drawing_assemble_xml_file(lxw_drawing*) @nogc nothrow; 1381 void lxw_free_drawing_object(lxw_drawing_object*) @nogc nothrow; 1382 void lxw_add_drawing_object(lxw_drawing*, lxw_drawing_object*) @nogc nothrow; 1383 alias lxw_color_t = int; 1384 enum lxw_format_underlines 1385 { 1386 LXW_UNDERLINE_SINGLE = 1, 1387 LXW_UNDERLINE_DOUBLE = 2, 1388 LXW_UNDERLINE_SINGLE_ACCOUNTING = 3, 1389 LXW_UNDERLINE_DOUBLE_ACCOUNTING = 4, 1390 } 1391 enum LXW_UNDERLINE_SINGLE = lxw_format_underlines.LXW_UNDERLINE_SINGLE; 1392 enum LXW_UNDERLINE_DOUBLE = lxw_format_underlines.LXW_UNDERLINE_DOUBLE; 1393 enum LXW_UNDERLINE_SINGLE_ACCOUNTING = lxw_format_underlines.LXW_UNDERLINE_SINGLE_ACCOUNTING; 1394 enum LXW_UNDERLINE_DOUBLE_ACCOUNTING = lxw_format_underlines.LXW_UNDERLINE_DOUBLE_ACCOUNTING; 1395 enum lxw_format_scripts 1396 { 1397 LXW_FONT_SUPERSCRIPT = 1, 1398 LXW_FONT_SUBSCRIPT = 2, 1399 } 1400 enum LXW_FONT_SUPERSCRIPT = lxw_format_scripts.LXW_FONT_SUPERSCRIPT; 1401 enum LXW_FONT_SUBSCRIPT = lxw_format_scripts.LXW_FONT_SUBSCRIPT; 1402 enum lxw_format_alignments 1403 { 1404 LXW_ALIGN_NONE = 0, 1405 LXW_ALIGN_LEFT = 1, 1406 LXW_ALIGN_CENTER = 2, 1407 LXW_ALIGN_RIGHT = 3, 1408 LXW_ALIGN_FILL = 4, 1409 LXW_ALIGN_JUSTIFY = 5, 1410 LXW_ALIGN_CENTER_ACROSS = 6, 1411 LXW_ALIGN_DISTRIBUTED = 7, 1412 LXW_ALIGN_VERTICAL_TOP = 8, 1413 LXW_ALIGN_VERTICAL_BOTTOM = 9, 1414 LXW_ALIGN_VERTICAL_CENTER = 10, 1415 LXW_ALIGN_VERTICAL_JUSTIFY = 11, 1416 LXW_ALIGN_VERTICAL_DISTRIBUTED = 12, 1417 } 1418 enum LXW_ALIGN_NONE = lxw_format_alignments.LXW_ALIGN_NONE; 1419 enum LXW_ALIGN_LEFT = lxw_format_alignments.LXW_ALIGN_LEFT; 1420 enum LXW_ALIGN_CENTER = lxw_format_alignments.LXW_ALIGN_CENTER; 1421 enum LXW_ALIGN_RIGHT = lxw_format_alignments.LXW_ALIGN_RIGHT; 1422 enum LXW_ALIGN_FILL = lxw_format_alignments.LXW_ALIGN_FILL; 1423 enum LXW_ALIGN_JUSTIFY = lxw_format_alignments.LXW_ALIGN_JUSTIFY; 1424 enum LXW_ALIGN_CENTER_ACROSS = lxw_format_alignments.LXW_ALIGN_CENTER_ACROSS; 1425 enum LXW_ALIGN_DISTRIBUTED = lxw_format_alignments.LXW_ALIGN_DISTRIBUTED; 1426 enum LXW_ALIGN_VERTICAL_TOP = lxw_format_alignments.LXW_ALIGN_VERTICAL_TOP; 1427 enum LXW_ALIGN_VERTICAL_BOTTOM = lxw_format_alignments.LXW_ALIGN_VERTICAL_BOTTOM; 1428 enum LXW_ALIGN_VERTICAL_CENTER = lxw_format_alignments.LXW_ALIGN_VERTICAL_CENTER; 1429 enum LXW_ALIGN_VERTICAL_JUSTIFY = lxw_format_alignments.LXW_ALIGN_VERTICAL_JUSTIFY; 1430 enum LXW_ALIGN_VERTICAL_DISTRIBUTED = lxw_format_alignments.LXW_ALIGN_VERTICAL_DISTRIBUTED; 1431 enum lxw_format_diagonal_types 1432 { 1433 LXW_DIAGONAL_BORDER_UP = 1, 1434 LXW_DIAGONAL_BORDER_DOWN = 2, 1435 LXW_DIAGONAL_BORDER_UP_DOWN = 3, 1436 } 1437 enum LXW_DIAGONAL_BORDER_UP = lxw_format_diagonal_types.LXW_DIAGONAL_BORDER_UP; 1438 enum LXW_DIAGONAL_BORDER_DOWN = lxw_format_diagonal_types.LXW_DIAGONAL_BORDER_DOWN; 1439 enum LXW_DIAGONAL_BORDER_UP_DOWN = lxw_format_diagonal_types.LXW_DIAGONAL_BORDER_UP_DOWN; 1440 enum lxw_defined_colors 1441 { 1442 LXW_COLOR_BLACK = 16777216, 1443 LXW_COLOR_BLUE = 255, 1444 LXW_COLOR_BROWN = 8388608, 1445 LXW_COLOR_CYAN = 65535, 1446 LXW_COLOR_GRAY = 8421504, 1447 LXW_COLOR_GREEN = 32768, 1448 LXW_COLOR_LIME = 65280, 1449 LXW_COLOR_MAGENTA = 16711935, 1450 LXW_COLOR_NAVY = 128, 1451 LXW_COLOR_ORANGE = 16737792, 1452 LXW_COLOR_PINK = 16711935, 1453 LXW_COLOR_PURPLE = 8388736, 1454 LXW_COLOR_RED = 16711680, 1455 LXW_COLOR_SILVER = 12632256, 1456 LXW_COLOR_WHITE = 16777215, 1457 LXW_COLOR_YELLOW = 16776960, 1458 } 1459 enum LXW_COLOR_BLACK = lxw_defined_colors.LXW_COLOR_BLACK; 1460 enum LXW_COLOR_BLUE = lxw_defined_colors.LXW_COLOR_BLUE; 1461 enum LXW_COLOR_BROWN = lxw_defined_colors.LXW_COLOR_BROWN; 1462 enum LXW_COLOR_CYAN = lxw_defined_colors.LXW_COLOR_CYAN; 1463 enum LXW_COLOR_GRAY = lxw_defined_colors.LXW_COLOR_GRAY; 1464 enum LXW_COLOR_GREEN = lxw_defined_colors.LXW_COLOR_GREEN; 1465 enum LXW_COLOR_LIME = lxw_defined_colors.LXW_COLOR_LIME; 1466 enum LXW_COLOR_MAGENTA = lxw_defined_colors.LXW_COLOR_MAGENTA; 1467 enum LXW_COLOR_NAVY = lxw_defined_colors.LXW_COLOR_NAVY; 1468 enum LXW_COLOR_ORANGE = lxw_defined_colors.LXW_COLOR_ORANGE; 1469 enum LXW_COLOR_PINK = lxw_defined_colors.LXW_COLOR_PINK; 1470 enum LXW_COLOR_PURPLE = lxw_defined_colors.LXW_COLOR_PURPLE; 1471 enum LXW_COLOR_RED = lxw_defined_colors.LXW_COLOR_RED; 1472 enum LXW_COLOR_SILVER = lxw_defined_colors.LXW_COLOR_SILVER; 1473 enum LXW_COLOR_WHITE = lxw_defined_colors.LXW_COLOR_WHITE; 1474 enum LXW_COLOR_YELLOW = lxw_defined_colors.LXW_COLOR_YELLOW; 1475 enum lxw_format_patterns 1476 { 1477 LXW_PATTERN_NONE = 0, 1478 LXW_PATTERN_SOLID = 1, 1479 LXW_PATTERN_MEDIUM_GRAY = 2, 1480 LXW_PATTERN_DARK_GRAY = 3, 1481 LXW_PATTERN_LIGHT_GRAY = 4, 1482 LXW_PATTERN_DARK_HORIZONTAL = 5, 1483 LXW_PATTERN_DARK_VERTICAL = 6, 1484 LXW_PATTERN_DARK_DOWN = 7, 1485 LXW_PATTERN_DARK_UP = 8, 1486 LXW_PATTERN_DARK_GRID = 9, 1487 LXW_PATTERN_DARK_TRELLIS = 10, 1488 LXW_PATTERN_LIGHT_HORIZONTAL = 11, 1489 LXW_PATTERN_LIGHT_VERTICAL = 12, 1490 LXW_PATTERN_LIGHT_DOWN = 13, 1491 LXW_PATTERN_LIGHT_UP = 14, 1492 LXW_PATTERN_LIGHT_GRID = 15, 1493 LXW_PATTERN_LIGHT_TRELLIS = 16, 1494 LXW_PATTERN_GRAY_125 = 17, 1495 LXW_PATTERN_GRAY_0625 = 18, 1496 } 1497 enum LXW_PATTERN_NONE = lxw_format_patterns.LXW_PATTERN_NONE; 1498 enum LXW_PATTERN_SOLID = lxw_format_patterns.LXW_PATTERN_SOLID; 1499 enum LXW_PATTERN_MEDIUM_GRAY = lxw_format_patterns.LXW_PATTERN_MEDIUM_GRAY; 1500 enum LXW_PATTERN_DARK_GRAY = lxw_format_patterns.LXW_PATTERN_DARK_GRAY; 1501 enum LXW_PATTERN_LIGHT_GRAY = lxw_format_patterns.LXW_PATTERN_LIGHT_GRAY; 1502 enum LXW_PATTERN_DARK_HORIZONTAL = lxw_format_patterns.LXW_PATTERN_DARK_HORIZONTAL; 1503 enum LXW_PATTERN_DARK_VERTICAL = lxw_format_patterns.LXW_PATTERN_DARK_VERTICAL; 1504 enum LXW_PATTERN_DARK_DOWN = lxw_format_patterns.LXW_PATTERN_DARK_DOWN; 1505 enum LXW_PATTERN_DARK_UP = lxw_format_patterns.LXW_PATTERN_DARK_UP; 1506 enum LXW_PATTERN_DARK_GRID = lxw_format_patterns.LXW_PATTERN_DARK_GRID; 1507 enum LXW_PATTERN_DARK_TRELLIS = lxw_format_patterns.LXW_PATTERN_DARK_TRELLIS; 1508 enum LXW_PATTERN_LIGHT_HORIZONTAL = lxw_format_patterns.LXW_PATTERN_LIGHT_HORIZONTAL; 1509 enum LXW_PATTERN_LIGHT_VERTICAL = lxw_format_patterns.LXW_PATTERN_LIGHT_VERTICAL; 1510 enum LXW_PATTERN_LIGHT_DOWN = lxw_format_patterns.LXW_PATTERN_LIGHT_DOWN; 1511 enum LXW_PATTERN_LIGHT_UP = lxw_format_patterns.LXW_PATTERN_LIGHT_UP; 1512 enum LXW_PATTERN_LIGHT_GRID = lxw_format_patterns.LXW_PATTERN_LIGHT_GRID; 1513 enum LXW_PATTERN_LIGHT_TRELLIS = lxw_format_patterns.LXW_PATTERN_LIGHT_TRELLIS; 1514 enum LXW_PATTERN_GRAY_125 = lxw_format_patterns.LXW_PATTERN_GRAY_125; 1515 enum LXW_PATTERN_GRAY_0625 = lxw_format_patterns.LXW_PATTERN_GRAY_0625; 1516 enum lxw_format_borders 1517 { 1518 LXW_BORDER_NONE = 0, 1519 LXW_BORDER_THIN = 1, 1520 LXW_BORDER_MEDIUM = 2, 1521 LXW_BORDER_DASHED = 3, 1522 LXW_BORDER_DOTTED = 4, 1523 LXW_BORDER_THICK = 5, 1524 LXW_BORDER_DOUBLE = 6, 1525 LXW_BORDER_HAIR = 7, 1526 LXW_BORDER_MEDIUM_DASHED = 8, 1527 LXW_BORDER_DASH_DOT = 9, 1528 LXW_BORDER_MEDIUM_DASH_DOT = 10, 1529 LXW_BORDER_DASH_DOT_DOT = 11, 1530 LXW_BORDER_MEDIUM_DASH_DOT_DOT = 12, 1531 LXW_BORDER_SLANT_DASH_DOT = 13, 1532 } 1533 enum LXW_BORDER_NONE = lxw_format_borders.LXW_BORDER_NONE; 1534 enum LXW_BORDER_THIN = lxw_format_borders.LXW_BORDER_THIN; 1535 enum LXW_BORDER_MEDIUM = lxw_format_borders.LXW_BORDER_MEDIUM; 1536 enum LXW_BORDER_DASHED = lxw_format_borders.LXW_BORDER_DASHED; 1537 enum LXW_BORDER_DOTTED = lxw_format_borders.LXW_BORDER_DOTTED; 1538 enum LXW_BORDER_THICK = lxw_format_borders.LXW_BORDER_THICK; 1539 enum LXW_BORDER_DOUBLE = lxw_format_borders.LXW_BORDER_DOUBLE; 1540 enum LXW_BORDER_HAIR = lxw_format_borders.LXW_BORDER_HAIR; 1541 enum LXW_BORDER_MEDIUM_DASHED = lxw_format_borders.LXW_BORDER_MEDIUM_DASHED; 1542 enum LXW_BORDER_DASH_DOT = lxw_format_borders.LXW_BORDER_DASH_DOT; 1543 enum LXW_BORDER_MEDIUM_DASH_DOT = lxw_format_borders.LXW_BORDER_MEDIUM_DASH_DOT; 1544 enum LXW_BORDER_DASH_DOT_DOT = lxw_format_borders.LXW_BORDER_DASH_DOT_DOT; 1545 enum LXW_BORDER_MEDIUM_DASH_DOT_DOT = lxw_format_borders.LXW_BORDER_MEDIUM_DASH_DOT_DOT; 1546 enum LXW_BORDER_SLANT_DASH_DOT = lxw_format_borders.LXW_BORDER_SLANT_DASH_DOT; 1547 struct lxw_font 1548 { 1549 char[128] font_name; 1550 double font_size; 1551 uint8_t bold; 1552 uint8_t italic; 1553 uint8_t underline; 1554 uint8_t font_strikeout; 1555 uint8_t font_outline; 1556 uint8_t font_shadow; 1557 uint8_t font_script; 1558 uint8_t font_family; 1559 uint8_t font_charset; 1560 uint8_t font_condense; 1561 uint8_t font_extend; 1562 lxw_color_t font_color; 1563 } 1564 struct lxw_border 1565 { 1566 uint8_t bottom; 1567 uint8_t diag_border; 1568 uint8_t diag_type; 1569 uint8_t left; 1570 uint8_t right; 1571 uint8_t top; 1572 lxw_color_t bottom_color; 1573 lxw_color_t diag_color; 1574 lxw_color_t left_color; 1575 lxw_color_t right_color; 1576 lxw_color_t top_color; 1577 } 1578 struct lxw_fill 1579 { 1580 lxw_color_t fg_color; 1581 lxw_color_t bg_color; 1582 uint8_t pattern; 1583 } 1584 lxw_format* lxw_format_new() @nogc nothrow; 1585 void lxw_format_free(lxw_format*) @nogc nothrow; 1586 int32_t lxw_format_get_xf_index(lxw_format*) @nogc nothrow; 1587 lxw_font* lxw_format_get_font_key(lxw_format*) @nogc nothrow; 1588 lxw_border* lxw_format_get_border_key(lxw_format*) @nogc nothrow; 1589 lxw_fill* lxw_format_get_fill_key(lxw_format*) @nogc nothrow; 1590 lxw_color_t lxw_format_check_color(lxw_color_t) @nogc nothrow; 1591 void format_set_font_name(lxw_format*, const(char)*) @nogc nothrow; 1592 void format_set_font_size(lxw_format*, double) @nogc nothrow; 1593 void format_set_font_color(lxw_format*, lxw_color_t) @nogc nothrow; 1594 void format_set_bold(lxw_format*) @nogc nothrow; 1595 void format_set_italic(lxw_format*) @nogc nothrow; 1596 void format_set_underline(lxw_format*, uint8_t) @nogc nothrow; 1597 void format_set_font_strikeout(lxw_format*) @nogc nothrow; 1598 void format_set_font_script(lxw_format*, uint8_t) @nogc nothrow; 1599 void format_set_num_format(lxw_format*, const(char)*) @nogc nothrow; 1600 void format_set_num_format_index(lxw_format*, uint8_t) @nogc nothrow; 1601 void format_set_unlocked(lxw_format*) @nogc nothrow; 1602 void format_set_hidden(lxw_format*) @nogc nothrow; 1603 void format_set_align(lxw_format*, uint8_t) @nogc nothrow; 1604 void format_set_text_wrap(lxw_format*) @nogc nothrow; 1605 void format_set_rotation(lxw_format*, int16_t) @nogc nothrow; 1606 void format_set_indent(lxw_format*, uint8_t) @nogc nothrow; 1607 void format_set_shrink(lxw_format*) @nogc nothrow; 1608 void format_set_pattern(lxw_format*, uint8_t) @nogc nothrow; 1609 void format_set_bg_color(lxw_format*, lxw_color_t) @nogc nothrow; 1610 void format_set_fg_color(lxw_format*, lxw_color_t) @nogc nothrow; 1611 void format_set_border(lxw_format*, uint8_t) @nogc nothrow; 1612 void format_set_bottom(lxw_format*, uint8_t) @nogc nothrow; 1613 void format_set_top(lxw_format*, uint8_t) @nogc nothrow; 1614 void format_set_left(lxw_format*, uint8_t) @nogc nothrow; 1615 void format_set_right(lxw_format*, uint8_t) @nogc nothrow; 1616 void format_set_border_color(lxw_format*, lxw_color_t) @nogc nothrow; 1617 void format_set_bottom_color(lxw_format*, lxw_color_t) @nogc nothrow; 1618 void format_set_top_color(lxw_format*, lxw_color_t) @nogc nothrow; 1619 void format_set_left_color(lxw_format*, lxw_color_t) @nogc nothrow; 1620 void format_set_right_color(lxw_format*, lxw_color_t) @nogc nothrow; 1621 void format_set_diag_type(lxw_format*, uint8_t) @nogc nothrow; 1622 void format_set_diag_color(lxw_format*, lxw_color_t) @nogc nothrow; 1623 void format_set_diag_border(lxw_format*, uint8_t) @nogc nothrow; 1624 void format_set_font_outline(lxw_format*) @nogc nothrow; 1625 void format_set_font_shadow(lxw_format*) @nogc nothrow; 1626 void format_set_font_family(lxw_format*, uint8_t) @nogc nothrow; 1627 void format_set_font_charset(lxw_format*, uint8_t) @nogc nothrow; 1628 void format_set_font_scheme(lxw_format*, const(char)*) @nogc nothrow; 1629 void format_set_font_condense(lxw_format*) @nogc nothrow; 1630 void format_set_font_extend(lxw_format*) @nogc nothrow; 1631 void format_set_reading_order(lxw_format*, uint8_t) @nogc nothrow; 1632 void format_set_theme(lxw_format*, uint8_t) @nogc nothrow; 1633 alias fsfilcnt_t = c_ulong; 1634 struct lxw_hash_order_list 1635 { 1636 lxw_hash_element* stqh_first; 1637 lxw_hash_element** stqh_last; 1638 } 1639 struct lxw_hash_element 1640 { 1641 void* key; 1642 void* value; 1643 static struct _Anonymous_12 1644 { 1645 lxw_hash_element* stqe_next; 1646 } 1647 _Anonymous_12 lxw_hash_order_pointers; 1648 static struct _Anonymous_13 1649 { 1650 lxw_hash_element* sle_next; 1651 } 1652 _Anonymous_13 lxw_hash_list_pointers; 1653 } 1654 struct lxw_hash_bucket_list 1655 { 1656 lxw_hash_element* slh_first; 1657 } 1658 struct lxw_hash_table 1659 { 1660 uint32_t num_buckets; 1661 uint32_t used_buckets; 1662 uint32_t unique_count; 1663 uint8_t free_key; 1664 uint8_t free_value; 1665 lxw_hash_order_list* order_list; 1666 lxw_hash_bucket_list** buckets; 1667 } 1668 lxw_hash_element* lxw_hash_key_exists(lxw_hash_table*, void*, size_t) @nogc nothrow; 1669 lxw_hash_element* lxw_insert_hash_element(lxw_hash_table*, void*, void*, size_t) @nogc nothrow; 1670 lxw_hash_table* lxw_hash_new(uint32_t, uint8_t, uint8_t) @nogc nothrow; 1671 void lxw_hash_free(lxw_hash_table*) @nogc nothrow; 1672 alias fsblkcnt_t = c_ulong; 1673 alias blkcnt_t = c_long; 1674 alias blksize_t = c_long; 1675 struct lxw_packager 1676 { 1677 FILE* file; 1678 lxw_workbook* workbook; 1679 size_t buffer_size; 1680 zipFile zipfile; 1681 zip_fileinfo zipfile_info; 1682 char* filename; 1683 char* buffer; 1684 char* tmpdir; 1685 uint16_t chart_count; 1686 uint16_t drawing_count; 1687 } 1688 lxw_packager* lxw_packager_new(const(char)*, char*) @nogc nothrow; 1689 void lxw_packager_free(lxw_packager*) @nogc nothrow; 1690 lxw_error lxw_create_package(lxw_packager*) @nogc nothrow; 1691 struct lxw_rel_tuple 1692 { 1693 char* type; 1694 char* target; 1695 char* target_mode; 1696 static struct _Anonymous_14 1697 { 1698 lxw_rel_tuple* stqe_next; 1699 } 1700 _Anonymous_14 list_pointers; 1701 } 1702 struct lxw_relationships 1703 { 1704 FILE* file; 1705 uint32_t rel_id; 1706 lxw_rel_tuples* relationships; 1707 } 1708 lxw_relationships* lxw_relationships_new() @nogc nothrow; 1709 void lxw_free_relationships(lxw_relationships*) @nogc nothrow; 1710 void lxw_relationships_assemble_xml_file(lxw_relationships*) @nogc nothrow; 1711 void lxw_add_document_relationship(lxw_relationships*, const(char)*, const(char)*) @nogc nothrow; 1712 void lxw_add_package_relationship(lxw_relationships*, const(char)*, const(char)*) @nogc nothrow; 1713 void lxw_add_ms_package_relationship(lxw_relationships*, const(char)*, const(char)*) @nogc nothrow; 1714 void lxw_add_worksheet_relationship(lxw_relationships*, const(char)*, const(char)*, const(char)*) @nogc nothrow; 1715 struct sst_element 1716 { 1717 uint32_t index; 1718 char* string; 1719 uint8_t is_rich_string; 1720 static struct _Anonymous_15 1721 { 1722 sst_element* stqe_next; 1723 } 1724 _Anonymous_15 sst_order_pointers; 1725 static struct _Anonymous_16 1726 { 1727 sst_element* rbe_left; 1728 sst_element* rbe_right; 1729 sst_element* rbe_parent; 1730 int rbe_color; 1731 } 1732 _Anonymous_16 sst_tree_pointers; 1733 } 1734 struct sst_rb_tree 1735 { 1736 sst_element* rbh_root; 1737 } 1738 struct sst_order_list 1739 { 1740 sst_element* stqh_first; 1741 sst_element** stqh_last; 1742 } 1743 struct lxw_sst 1744 { 1745 FILE* file; 1746 uint32_t string_count; 1747 uint32_t unique_count; 1748 sst_order_list* order_list; 1749 sst_rb_tree* rb_tree; 1750 } 1751 lxw_sst* lxw_sst_new() @nogc nothrow; 1752 void lxw_sst_free(lxw_sst*) @nogc nothrow; 1753 sst_element* lxw_get_sst_index(lxw_sst*, const(char)*, uint8_t) @nogc nothrow; 1754 void lxw_sst_assemble_xml_file(lxw_sst*) @nogc nothrow; 1755 struct lxw_styles 1756 { 1757 FILE* file; 1758 uint32_t font_count; 1759 uint32_t xf_count; 1760 uint32_t dxf_count; 1761 uint32_t num_format_count; 1762 uint32_t border_count; 1763 uint32_t fill_count; 1764 lxw_formats* xf_formats; 1765 lxw_formats* dxf_formats; 1766 } 1767 lxw_styles* lxw_styles_new() @nogc nothrow; 1768 void lxw_styles_free(lxw_styles*) @nogc nothrow; 1769 void lxw_styles_assemble_xml_file(lxw_styles*) @nogc nothrow; 1770 void lxw_styles_write_string_fragment(lxw_styles*, char*) @nogc nothrow; 1771 void lxw_styles_write_rich_font(lxw_styles*, lxw_format*) @nogc nothrow; 1772 struct lxw_theme 1773 { 1774 FILE* file; 1775 } 1776 lxw_theme* lxw_theme_new() @nogc nothrow; 1777 void lxw_theme_free(lxw_theme*) @nogc nothrow; 1778 void lxw_theme_xml_declaration(lxw_theme*) @nogc nothrow; 1779 void lxw_theme_assemble_xml_file(lxw_theme*) @nogc nothrow; 1780 alias register_t = c_long; 1781 alias u_int64_t = c_ulong; 1782 alias u_int32_t = uint; 1783 alias ZPOS64_T = ulong; 1784 alias u_int16_t = ushort; 1785 alias u_int8_t = ubyte; 1786 alias open_file_func = void* function(voidpf, const(char)*, int) @nogc nothrow; 1787 alias read_file_func = c_ulong function(voidpf, voidpf, void*, uLong) @nogc nothrow; 1788 alias write_file_func = c_ulong function(voidpf, voidpf, const(void)*, uLong) @nogc nothrow; 1789 alias close_file_func = int function(voidpf, voidpf) @nogc nothrow; 1790 alias testerror_file_func = int function(voidpf, voidpf) @nogc nothrow; 1791 alias tell_file_func = c_long function(voidpf, voidpf) @nogc nothrow; 1792 alias seek_file_func = c_long function(voidpf, voidpf, uLong, int) @nogc nothrow; 1793 alias zlib_filefunc_def = zlib_filefunc_def_s; 1794 struct zlib_filefunc_def_s 1795 { 1796 open_file_func zopen_file; 1797 read_file_func zread_file; 1798 write_file_func zwrite_file; 1799 tell_file_func ztell_file; 1800 seek_file_func zseek_file; 1801 close_file_func zclose_file; 1802 testerror_file_func zerror_file; 1803 voidpf opaque; 1804 } 1805 alias tell64_file_func = ulong function(voidpf, voidpf) @nogc nothrow; 1806 alias seek64_file_func = c_long function(voidpf, voidpf, ZPOS64_T, int) @nogc nothrow; 1807 alias open64_file_func = void* function(voidpf, const(void)*, int) @nogc nothrow; 1808 alias zlib_filefunc64_def = zlib_filefunc64_def_s; 1809 struct zlib_filefunc64_def_s 1810 { 1811 open64_file_func zopen64_file; 1812 read_file_func zread_file; 1813 write_file_func zwrite_file; 1814 tell64_file_func ztell64_file; 1815 seek64_file_func zseek64_file; 1816 close_file_func zclose_file; 1817 testerror_file_func zerror_file; 1818 voidpf opaque; 1819 } 1820 void fill_fopen64_filefunc(zlib_filefunc64_def*) @nogc nothrow; 1821 void fill_fopen_filefunc(zlib_filefunc_def*) @nogc nothrow; 1822 alias zlib_filefunc64_32_def = zlib_filefunc64_32_def_s; 1823 struct zlib_filefunc64_32_def_s 1824 { 1825 zlib_filefunc64_def zfile_func64; 1826 open_file_func zopen32_file; 1827 tell_file_func ztell32_file; 1828 seek_file_func zseek32_file; 1829 } 1830 voidpf call_zopen64(const(zlib_filefunc64_32_def)*, const(void)*, int) @nogc nothrow; 1831 c_long call_zseek64(const(zlib_filefunc64_32_def)*, voidpf, ZPOS64_T, int) @nogc nothrow; 1832 ZPOS64_T call_ztell64(const(zlib_filefunc64_32_def)*, voidpf) @nogc nothrow; 1833 void fill_zlib_filefunc64_32_def_from_filefunc32(zlib_filefunc64_32_def*, const(zlib_filefunc_def)*) @nogc nothrow; 1834 alias key_t = int; 1835 alias caddr_t = char*; 1836 alias daddr_t = int; 1837 alias id_t = uint; 1838 alias pid_t = int; 1839 alias uid_t = uint; 1840 alias nlink_t = c_ulong; 1841 alias mode_t = uint; 1842 alias gid_t = uint; 1843 alias dev_t = c_ulong; 1844 alias ino_t = c_ulong; 1845 alias loff_t = c_long; 1846 alias fsid_t = __fsid_t; 1847 alias u_quad_t = c_ulong; 1848 alias quad_t = c_long; 1849 alias u_long = c_ulong; 1850 alias u_int = uint; 1851 alias u_short = ushort; 1852 alias u_char = ubyte; 1853 __dev_t gnu_dev_makedev(uint, uint) @nogc nothrow; 1854 uint gnu_dev_minor(__dev_t) @nogc nothrow; 1855 uint gnu_dev_major(__dev_t) @nogc nothrow; 1856 int pselect(int, fd_set*, fd_set*, fd_set*, const(timespec)*, const(__sigset_t)*) @nogc nothrow; 1857 int select(int, fd_set*, fd_set*, fd_set*, timeval*) @nogc nothrow; 1858 alias fd_mask = c_long; 1859 struct fd_set 1860 { 1861 __fd_mask[16] __fds_bits; 1862 } 1863 alias __fd_mask = c_long; 1864 alias suseconds_t = c_long; 1865 enum _Anonymous_17 1866 { 1867 P_ALL = 0, 1868 P_PID = 1, 1869 P_PGID = 2, 1870 } 1871 enum P_ALL = _Anonymous_17.P_ALL; 1872 enum P_PID = _Anonymous_17.P_PID; 1873 enum P_PGID = _Anonymous_17.P_PGID; 1874 alias idtype_t = _Anonymous_17; 1875 static __uint64_t __uint64_identity(__uint64_t) @nogc nothrow; 1876 static __uint32_t __uint32_identity(__uint32_t) @nogc nothrow; 1877 static __uint16_t __uint16_identity(__uint16_t) @nogc nothrow; 1878 alias timer_t = void*; 1879 alias time_t = c_long; 1880 struct tm 1881 { 1882 int tm_sec; 1883 int tm_min; 1884 int tm_hour; 1885 int tm_mday; 1886 int tm_mon; 1887 int tm_year; 1888 int tm_wday; 1889 int tm_yday; 1890 int tm_isdst; 1891 c_long tm_gmtoff; 1892 const(char)* tm_zone; 1893 } 1894 struct timeval 1895 { 1896 __time_t tv_sec; 1897 __suseconds_t tv_usec; 1898 } 1899 struct timespec 1900 { 1901 __time_t tv_sec; 1902 __syscall_slong_t tv_nsec; 1903 } 1904 struct itimerspec 1905 { 1906 timespec it_interval; 1907 timespec it_value; 1908 } 1909 alias sigset_t = __sigset_t; 1910 alias locale_t = __locale_struct*; 1911 alias clockid_t = int; 1912 alias clock_t = c_long; 1913 alias zipFile = void*; 1914 struct __sigset_t 1915 { 1916 c_ulong[16] __val; 1917 } 1918 struct __mbstate_t 1919 { 1920 int __count; 1921 static union _Anonymous_18 1922 { 1923 uint __wch; 1924 char[4] __wchb; 1925 } 1926 _Anonymous_18 __value; 1927 } 1928 alias tm_zip = tm_zip_s; 1929 struct tm_zip_s 1930 { 1931 uInt tm_sec; 1932 uInt tm_min; 1933 uInt tm_hour; 1934 uInt tm_mday; 1935 uInt tm_mon; 1936 uInt tm_year; 1937 } 1938 struct zip_fileinfo 1939 { 1940 tm_zip tmz_date; 1941 uLong dosDate; 1942 uLong internal_fa; 1943 uLong external_fa; 1944 } 1945 alias zipcharpc = const(char)*; 1946 alias __locale_t = __locale_struct*; 1947 struct __locale_struct 1948 { 1949 __locale_data*[13] __locales; 1950 const(ushort)* __ctype_b; 1951 const(int)* __ctype_tolower; 1952 const(int)* __ctype_toupper; 1953 const(char)*[13] __names; 1954 } 1955 alias __FILE = _IO_FILE; 1956 zipFile zipOpen(const(char)*, int) @nogc nothrow; 1957 zipFile zipOpen64(const(void)*, int) @nogc nothrow; 1958 zipFile zipOpen2(const(char)*, int, zipcharpc*, zlib_filefunc_def*) @nogc nothrow; 1959 zipFile zipOpen2_64(const(void)*, int, zipcharpc*, zlib_filefunc64_def*) @nogc nothrow; 1960 int zipOpenNewFileInZip(zipFile, const(char)*, const(zip_fileinfo)*, const(void)*, uInt, const(void)*, uInt, const(char)*, int, int) @nogc nothrow; 1961 int zipOpenNewFileInZip64(zipFile, const(char)*, const(zip_fileinfo)*, const(void)*, uInt, const(void)*, uInt, const(char)*, int, int, int) @nogc nothrow; 1962 int zipOpenNewFileInZip2(zipFile, const(char)*, const(zip_fileinfo)*, const(void)*, uInt, const(void)*, uInt, const(char)*, int, int, int) @nogc nothrow; 1963 int zipOpenNewFileInZip2_64(zipFile, const(char)*, const(zip_fileinfo)*, const(void)*, uInt, const(void)*, uInt, const(char)*, int, int, int, int) @nogc nothrow; 1964 int zipOpenNewFileInZip3(zipFile, const(char)*, const(zip_fileinfo)*, const(void)*, uInt, const(void)*, uInt, const(char)*, int, int, int, int, int, int, const(char)*, uLong) @nogc nothrow; 1965 int zipOpenNewFileInZip3_64(zipFile, const(char)*, const(zip_fileinfo)*, const(void)*, uInt, const(void)*, uInt, const(char)*, int, int, int, int, int, int, const(char)*, uLong, int) @nogc nothrow; 1966 int zipOpenNewFileInZip4(zipFile, const(char)*, const(zip_fileinfo)*, const(void)*, uInt, const(void)*, uInt, const(char)*, int, int, int, int, int, int, const(char)*, uLong, uLong, uLong) @nogc nothrow; 1967 int zipOpenNewFileInZip4_64(zipFile, const(char)*, const(zip_fileinfo)*, const(void)*, uInt, const(void)*, uInt, const(char)*, int, int, int, int, int, int, const(char)*, uLong, uLong, uLong, int) @nogc nothrow; 1968 int zipWriteInFileInZip(zipFile, const(void)*, uint) @nogc nothrow; 1969 int zipCloseFileInZip(zipFile) @nogc nothrow; 1970 int zipCloseFileInZipRaw(zipFile, uLong, uLong) @nogc nothrow; 1971 int zipCloseFileInZipRaw64(zipFile, ZPOS64_T, uLong) @nogc nothrow; 1972 int zipClose(zipFile, const(char)*) @nogc nothrow; 1973 int zipRemoveExtraInfoBlock(char*, int*, short) @nogc nothrow; 1974 struct _IO_FILE 1975 { 1976 int _flags; 1977 char* _IO_read_ptr; 1978 char* _IO_read_end; 1979 char* _IO_read_base; 1980 char* _IO_write_base; 1981 char* _IO_write_ptr; 1982 char* _IO_write_end; 1983 char* _IO_buf_base; 1984 char* _IO_buf_end; 1985 char* _IO_save_base; 1986 char* _IO_backup_base; 1987 char* _IO_save_end; 1988 _IO_marker* _markers; 1989 _IO_FILE* _chain; 1990 int _fileno; 1991 int _flags2; 1992 __off_t _old_offset; 1993 ushort _cur_column; 1994 byte _vtable_offset; 1995 char[1] _shortbuf; 1996 _IO_lock_t* _lock; 1997 __off64_t _offset; 1998 void* __pad1; 1999 void* __pad2; 2000 void* __pad3; 2001 void* __pad4; 2002 size_t __pad5; 2003 int _mode; 2004 char[20] _unused2; 2005 } 2006 alias FILE = _IO_FILE; 2007 alias __sig_atomic_t = int; 2008 const(char)* lxw_version() @nogc nothrow; 2009 char* lxw_strerror(lxw_error) @nogc nothrow; 2010 char* lxw_quote_sheetname(const(char)*) @nogc nothrow; 2011 void lxw_col_to_name(char*, lxw_col_t, uint8_t) @nogc nothrow; 2012 void lxw_rowcol_to_cell(char*, lxw_row_t, lxw_col_t) @nogc nothrow; 2013 void lxw_rowcol_to_cell_abs(char*, lxw_row_t, lxw_col_t, uint8_t, uint8_t) @nogc nothrow; 2014 void lxw_rowcol_to_range(char*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t) @nogc nothrow; 2015 void lxw_rowcol_to_range_abs(char*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t) @nogc nothrow; 2016 void lxw_rowcol_to_formula_abs(char*, const(char)*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t) @nogc nothrow; 2017 uint32_t lxw_name_to_row(const(char)*) @nogc nothrow; 2018 uint16_t lxw_name_to_col(const(char)*) @nogc nothrow; 2019 uint32_t lxw_name_to_row_2(const(char)*) @nogc nothrow; 2020 uint16_t lxw_name_to_col_2(const(char)*) @nogc nothrow; 2021 double lxw_datetime_to_excel_date(lxw_datetime*, uint8_t) @nogc nothrow; 2022 char* lxw_strdup(const(char)*) @nogc nothrow; 2023 char* lxw_strdup_formula(const(char)*) @nogc nothrow; 2024 size_t lxw_utf8_strlen(const(char)*) @nogc nothrow; 2025 void lxw_str_tolower(char*) @nogc nothrow; 2026 FILE* lxw_tmpfile(char*) @nogc nothrow; 2027 uint16_t lxw_hash_password(const(char)*) @nogc nothrow; 2028 alias __socklen_t = uint; 2029 struct lxw_worksheet_names 2030 { 2031 lxw_worksheet_name* rbh_root; 2032 } 2033 struct lxw_worksheet_name 2034 { 2035 const(char)* name; 2036 lxw_worksheet* worksheet; 2037 static struct _Anonymous_19 2038 { 2039 lxw_worksheet_name* rbe_left; 2040 lxw_worksheet_name* rbe_right; 2041 lxw_worksheet_name* rbe_parent; 2042 int rbe_color; 2043 } 2044 _Anonymous_19 tree_pointers; 2045 } 2046 struct lxw_chartsheet_names 2047 { 2048 lxw_chartsheet_name* rbh_root; 2049 } 2050 struct lxw_chartsheet_name 2051 { 2052 const(char)* name; 2053 lxw_chartsheet* chartsheet; 2054 static struct _Anonymous_20 2055 { 2056 lxw_chartsheet_name* rbe_left; 2057 lxw_chartsheet_name* rbe_right; 2058 lxw_chartsheet_name* rbe_parent; 2059 int rbe_color; 2060 } 2061 _Anonymous_20 tree_pointers; 2062 } 2063 struct lxw_sheets 2064 { 2065 lxw_sheet* stqh_first; 2066 lxw_sheet** stqh_last; 2067 } 2068 struct lxw_sheet 2069 { 2070 uint8_t is_chartsheet; 2071 static union _Anonymous_21 2072 { 2073 lxw_worksheet* worksheet; 2074 lxw_chartsheet* chartsheet; 2075 } 2076 _Anonymous_21 u; 2077 static struct _Anonymous_22 2078 { 2079 lxw_sheet* stqe_next; 2080 } 2081 _Anonymous_22 list_pointers; 2082 } 2083 struct lxw_worksheets 2084 { 2085 lxw_worksheet* stqh_first; 2086 lxw_worksheet** stqh_last; 2087 } 2088 struct lxw_chartsheets 2089 { 2090 lxw_chartsheet* stqh_first; 2091 lxw_chartsheet** stqh_last; 2092 } 2093 struct lxw_charts 2094 { 2095 lxw_chart* stqh_first; 2096 lxw_chart** stqh_last; 2097 } 2098 struct lxw_defined_name 2099 { 2100 int16_t index; 2101 uint8_t hidden; 2102 char[128] name; 2103 char[128] app_name; 2104 char[128] formula; 2105 char[128] normalised_name; 2106 char[128] normalised_sheetname; 2107 static struct _Anonymous_23 2108 { 2109 lxw_defined_name* tqe_next; 2110 lxw_defined_name** tqe_prev; 2111 } 2112 _Anonymous_23 list_pointers; 2113 } 2114 struct lxw_defined_names 2115 { 2116 lxw_defined_name* tqh_first; 2117 lxw_defined_name** tqh_last; 2118 } 2119 alias __intptr_t = c_long; 2120 alias __caddr_t = char*; 2121 struct lxw_doc_properties 2122 { 2123 char* title; 2124 char* subject; 2125 char* author; 2126 char* manager; 2127 char* company; 2128 char* category; 2129 char* keywords; 2130 char* comments; 2131 char* status; 2132 char* hyperlink_base; 2133 time_t created; 2134 } 2135 struct lxw_workbook_options 2136 { 2137 uint8_t constant_memory; 2138 char* tmpdir; 2139 } 2140 struct lxw_workbook 2141 { 2142 FILE* file; 2143 lxw_sheets* sheets; 2144 lxw_worksheets* worksheets; 2145 lxw_chartsheets* chartsheets; 2146 lxw_worksheet_names* worksheet_names; 2147 lxw_chartsheet_names* chartsheet_names; 2148 lxw_charts* charts; 2149 lxw_charts* ordered_charts; 2150 lxw_formats* formats; 2151 lxw_defined_names* defined_names; 2152 lxw_sst* sst; 2153 lxw_doc_properties* properties; 2154 lxw_custom_properties* custom_properties; 2155 char* filename; 2156 lxw_workbook_options options; 2157 uint16_t num_sheets; 2158 uint16_t num_worksheets; 2159 uint16_t num_chartsheets; 2160 uint16_t first_sheet; 2161 uint16_t active_sheet; 2162 uint16_t num_xf_formats; 2163 uint16_t num_format_count; 2164 uint16_t drawing_count; 2165 uint16_t font_count; 2166 uint16_t border_count; 2167 uint16_t fill_count; 2168 uint8_t optimize; 2169 uint8_t has_png; 2170 uint8_t has_jpeg; 2171 uint8_t has_bmp; 2172 lxw_hash_table* used_xf_formats; 2173 } 2174 lxw_workbook* workbook_new(const(char)*) @nogc nothrow; 2175 lxw_workbook* workbook_new_opt(const(char)*, lxw_workbook_options*) @nogc nothrow; 2176 lxw_workbook* new_workbook(const(char)*) @nogc nothrow; 2177 lxw_workbook* new_workbook_opt(const(char)*, lxw_workbook_options*) @nogc nothrow; 2178 lxw_worksheet* workbook_add_worksheet(lxw_workbook*, const(char)*) @nogc nothrow; 2179 lxw_chartsheet* workbook_add_chartsheet(lxw_workbook*, const(char)*) @nogc nothrow; 2180 lxw_format* workbook_add_format(lxw_workbook*) @nogc nothrow; 2181 lxw_chart* workbook_add_chart(lxw_workbook*, uint8_t) @nogc nothrow; 2182 lxw_error workbook_close(lxw_workbook*) @nogc nothrow; 2183 lxw_error workbook_set_properties(lxw_workbook*, lxw_doc_properties*) @nogc nothrow; 2184 lxw_error workbook_set_custom_property_string(lxw_workbook*, const(char)*, const(char)*) @nogc nothrow; 2185 lxw_error workbook_set_custom_property_number(lxw_workbook*, const(char)*, double) @nogc nothrow; 2186 lxw_error workbook_set_custom_property_integer(lxw_workbook*, const(char)*, int32_t) @nogc nothrow; 2187 lxw_error workbook_set_custom_property_boolean(lxw_workbook*, const(char)*, uint8_t) @nogc nothrow; 2188 lxw_error workbook_set_custom_property_datetime(lxw_workbook*, const(char)*, lxw_datetime*) @nogc nothrow; 2189 lxw_error workbook_define_name(lxw_workbook*, const(char)*, const(char)*) @nogc nothrow; 2190 lxw_worksheet* workbook_get_worksheet_by_name(lxw_workbook*, const(char)*) @nogc nothrow; 2191 lxw_chartsheet* workbook_get_chartsheet_by_name(lxw_workbook*, const(char)*) @nogc nothrow; 2192 lxw_error workbook_validate_sheet_name(lxw_workbook*, const(char)*) @nogc nothrow; 2193 void lxw_workbook_free(lxw_workbook*) @nogc nothrow; 2194 void lxw_workbook_assemble_xml_file(lxw_workbook*) @nogc nothrow; 2195 void lxw_workbook_set_default_xf_indices(lxw_workbook*) @nogc nothrow; 2196 alias __loff_t = c_long; 2197 alias __syscall_ulong_t = c_ulong; 2198 alias __syscall_slong_t = c_long; 2199 alias __ssize_t = c_long; 2200 enum lxw_gridlines 2201 { 2202 LXW_HIDE_ALL_GRIDLINES = 0, 2203 LXW_SHOW_SCREEN_GRIDLINES = 1, 2204 LXW_SHOW_PRINT_GRIDLINES = 2, 2205 LXW_SHOW_ALL_GRIDLINES = 3, 2206 } 2207 enum LXW_HIDE_ALL_GRIDLINES = lxw_gridlines.LXW_HIDE_ALL_GRIDLINES; 2208 enum LXW_SHOW_SCREEN_GRIDLINES = lxw_gridlines.LXW_SHOW_SCREEN_GRIDLINES; 2209 enum LXW_SHOW_PRINT_GRIDLINES = lxw_gridlines.LXW_SHOW_PRINT_GRIDLINES; 2210 enum LXW_SHOW_ALL_GRIDLINES = lxw_gridlines.LXW_SHOW_ALL_GRIDLINES; 2211 enum lxw_validation_boolean 2212 { 2213 LXW_VALIDATION_DEFAULT = 0, 2214 LXW_VALIDATION_OFF = 1, 2215 LXW_VALIDATION_ON = 2, 2216 } 2217 enum LXW_VALIDATION_DEFAULT = lxw_validation_boolean.LXW_VALIDATION_DEFAULT; 2218 enum LXW_VALIDATION_OFF = lxw_validation_boolean.LXW_VALIDATION_OFF; 2219 enum LXW_VALIDATION_ON = lxw_validation_boolean.LXW_VALIDATION_ON; 2220 enum lxw_validation_types 2221 { 2222 LXW_VALIDATION_TYPE_NONE = 0, 2223 LXW_VALIDATION_TYPE_INTEGER = 1, 2224 LXW_VALIDATION_TYPE_INTEGER_FORMULA = 2, 2225 LXW_VALIDATION_TYPE_DECIMAL = 3, 2226 LXW_VALIDATION_TYPE_DECIMAL_FORMULA = 4, 2227 LXW_VALIDATION_TYPE_LIST = 5, 2228 LXW_VALIDATION_TYPE_LIST_FORMULA = 6, 2229 LXW_VALIDATION_TYPE_DATE = 7, 2230 LXW_VALIDATION_TYPE_DATE_FORMULA = 8, 2231 LXW_VALIDATION_TYPE_DATE_NUMBER = 9, 2232 LXW_VALIDATION_TYPE_TIME = 10, 2233 LXW_VALIDATION_TYPE_TIME_FORMULA = 11, 2234 LXW_VALIDATION_TYPE_TIME_NUMBER = 12, 2235 LXW_VALIDATION_TYPE_LENGTH = 13, 2236 LXW_VALIDATION_TYPE_LENGTH_FORMULA = 14, 2237 LXW_VALIDATION_TYPE_CUSTOM_FORMULA = 15, 2238 LXW_VALIDATION_TYPE_ANY = 16, 2239 } 2240 enum LXW_VALIDATION_TYPE_NONE = lxw_validation_types.LXW_VALIDATION_TYPE_NONE; 2241 enum LXW_VALIDATION_TYPE_INTEGER = lxw_validation_types.LXW_VALIDATION_TYPE_INTEGER; 2242 enum LXW_VALIDATION_TYPE_INTEGER_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_INTEGER_FORMULA; 2243 enum LXW_VALIDATION_TYPE_DECIMAL = lxw_validation_types.LXW_VALIDATION_TYPE_DECIMAL; 2244 enum LXW_VALIDATION_TYPE_DECIMAL_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_DECIMAL_FORMULA; 2245 enum LXW_VALIDATION_TYPE_LIST = lxw_validation_types.LXW_VALIDATION_TYPE_LIST; 2246 enum LXW_VALIDATION_TYPE_LIST_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_LIST_FORMULA; 2247 enum LXW_VALIDATION_TYPE_DATE = lxw_validation_types.LXW_VALIDATION_TYPE_DATE; 2248 enum LXW_VALIDATION_TYPE_DATE_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_DATE_FORMULA; 2249 enum LXW_VALIDATION_TYPE_DATE_NUMBER = lxw_validation_types.LXW_VALIDATION_TYPE_DATE_NUMBER; 2250 enum LXW_VALIDATION_TYPE_TIME = lxw_validation_types.LXW_VALIDATION_TYPE_TIME; 2251 enum LXW_VALIDATION_TYPE_TIME_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_TIME_FORMULA; 2252 enum LXW_VALIDATION_TYPE_TIME_NUMBER = lxw_validation_types.LXW_VALIDATION_TYPE_TIME_NUMBER; 2253 enum LXW_VALIDATION_TYPE_LENGTH = lxw_validation_types.LXW_VALIDATION_TYPE_LENGTH; 2254 enum LXW_VALIDATION_TYPE_LENGTH_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_LENGTH_FORMULA; 2255 enum LXW_VALIDATION_TYPE_CUSTOM_FORMULA = lxw_validation_types.LXW_VALIDATION_TYPE_CUSTOM_FORMULA; 2256 enum LXW_VALIDATION_TYPE_ANY = lxw_validation_types.LXW_VALIDATION_TYPE_ANY; 2257 enum lxw_validation_criteria 2258 { 2259 LXW_VALIDATION_CRITERIA_NONE = 0, 2260 LXW_VALIDATION_CRITERIA_BETWEEN = 1, 2261 LXW_VALIDATION_CRITERIA_NOT_BETWEEN = 2, 2262 LXW_VALIDATION_CRITERIA_EQUAL_TO = 3, 2263 LXW_VALIDATION_CRITERIA_NOT_EQUAL_TO = 4, 2264 LXW_VALIDATION_CRITERIA_GREATER_THAN = 5, 2265 LXW_VALIDATION_CRITERIA_LESS_THAN = 6, 2266 LXW_VALIDATION_CRITERIA_GREATER_THAN_OR_EQUAL_TO = 7, 2267 LXW_VALIDATION_CRITERIA_LESS_THAN_OR_EQUAL_TO = 8, 2268 } 2269 enum LXW_VALIDATION_CRITERIA_NONE = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_NONE; 2270 enum LXW_VALIDATION_CRITERIA_BETWEEN = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_BETWEEN; 2271 enum LXW_VALIDATION_CRITERIA_NOT_BETWEEN = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_NOT_BETWEEN; 2272 enum LXW_VALIDATION_CRITERIA_EQUAL_TO = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_EQUAL_TO; 2273 enum LXW_VALIDATION_CRITERIA_NOT_EQUAL_TO = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_NOT_EQUAL_TO; 2274 enum LXW_VALIDATION_CRITERIA_GREATER_THAN = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_GREATER_THAN; 2275 enum LXW_VALIDATION_CRITERIA_LESS_THAN = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_LESS_THAN; 2276 enum LXW_VALIDATION_CRITERIA_GREATER_THAN_OR_EQUAL_TO = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_GREATER_THAN_OR_EQUAL_TO; 2277 enum LXW_VALIDATION_CRITERIA_LESS_THAN_OR_EQUAL_TO = lxw_validation_criteria.LXW_VALIDATION_CRITERIA_LESS_THAN_OR_EQUAL_TO; 2278 enum lxw_validation_error_types 2279 { 2280 LXW_VALIDATION_ERROR_TYPE_STOP = 0, 2281 LXW_VALIDATION_ERROR_TYPE_WARNING = 1, 2282 LXW_VALIDATION_ERROR_TYPE_INFORMATION = 2, 2283 } 2284 enum LXW_VALIDATION_ERROR_TYPE_STOP = lxw_validation_error_types.LXW_VALIDATION_ERROR_TYPE_STOP; 2285 enum LXW_VALIDATION_ERROR_TYPE_WARNING = lxw_validation_error_types.LXW_VALIDATION_ERROR_TYPE_WARNING; 2286 enum LXW_VALIDATION_ERROR_TYPE_INFORMATION = lxw_validation_error_types.LXW_VALIDATION_ERROR_TYPE_INFORMATION; 2287 enum cell_types 2288 { 2289 NUMBER_CELL = 1, 2290 STRING_CELL = 2, 2291 INLINE_STRING_CELL = 3, 2292 INLINE_RICH_STRING_CELL = 4, 2293 FORMULA_CELL = 5, 2294 ARRAY_FORMULA_CELL = 6, 2295 BLANK_CELL = 7, 2296 BOOLEAN_CELL = 8, 2297 HYPERLINK_URL = 9, 2298 HYPERLINK_INTERNAL = 10, 2299 HYPERLINK_EXTERNAL = 11, 2300 } 2301 enum NUMBER_CELL = cell_types.NUMBER_CELL; 2302 enum STRING_CELL = cell_types.STRING_CELL; 2303 enum INLINE_STRING_CELL = cell_types.INLINE_STRING_CELL; 2304 enum INLINE_RICH_STRING_CELL = cell_types.INLINE_RICH_STRING_CELL; 2305 enum FORMULA_CELL = cell_types.FORMULA_CELL; 2306 enum ARRAY_FORMULA_CELL = cell_types.ARRAY_FORMULA_CELL; 2307 enum BLANK_CELL = cell_types.BLANK_CELL; 2308 enum BOOLEAN_CELL = cell_types.BOOLEAN_CELL; 2309 enum HYPERLINK_URL = cell_types.HYPERLINK_URL; 2310 enum HYPERLINK_INTERNAL = cell_types.HYPERLINK_INTERNAL; 2311 enum HYPERLINK_EXTERNAL = cell_types.HYPERLINK_EXTERNAL; 2312 enum pane_types 2313 { 2314 NO_PANES = 0, 2315 FREEZE_PANES = 1, 2316 SPLIT_PANES = 2, 2317 FREEZE_SPLIT_PANES = 3, 2318 } 2319 enum NO_PANES = pane_types.NO_PANES; 2320 enum FREEZE_PANES = pane_types.FREEZE_PANES; 2321 enum SPLIT_PANES = pane_types.SPLIT_PANES; 2322 enum FREEZE_SPLIT_PANES = pane_types.FREEZE_SPLIT_PANES; 2323 struct lxw_table_cells 2324 { 2325 lxw_cell* rbh_root; 2326 } 2327 struct lxw_cell 2328 { 2329 lxw_row_t row_num; 2330 lxw_col_t col_num; 2331 cell_types type; 2332 lxw_format* format; 2333 static union _Anonymous_24 2334 { 2335 double number; 2336 int32_t string_id; 2337 char* string; 2338 } 2339 _Anonymous_24 u; 2340 double formula_result; 2341 char* user_data1; 2342 char* user_data2; 2343 char* sst_string; 2344 static struct _Anonymous_25 2345 { 2346 lxw_cell* rbe_left; 2347 lxw_cell* rbe_right; 2348 lxw_cell* rbe_parent; 2349 int rbe_color; 2350 } 2351 _Anonymous_25 tree_pointers; 2352 } 2353 struct lxw_table_rows 2354 { 2355 lxw_row* rbh_root; 2356 lxw_row* cached_row; 2357 lxw_row_t cached_row_num; 2358 } 2359 struct lxw_row 2360 { 2361 lxw_row_t row_num; 2362 double height; 2363 lxw_format* format; 2364 uint8_t hidden; 2365 uint8_t level; 2366 uint8_t collapsed; 2367 uint8_t row_changed; 2368 uint8_t data_changed; 2369 uint8_t height_changed; 2370 lxw_table_cells* cells; 2371 static struct _Anonymous_26 2372 { 2373 lxw_row* rbe_left; 2374 lxw_row* rbe_right; 2375 lxw_row* rbe_parent; 2376 int rbe_color; 2377 } 2378 _Anonymous_26 tree_pointers; 2379 } 2380 alias __fsword_t = c_long; 2381 struct lxw_merged_ranges 2382 { 2383 lxw_merged_range* stqh_first; 2384 lxw_merged_range** stqh_last; 2385 } 2386 struct lxw_merged_range 2387 { 2388 lxw_row_t first_row; 2389 lxw_row_t last_row; 2390 lxw_col_t first_col; 2391 lxw_col_t last_col; 2392 static struct _Anonymous_27 2393 { 2394 lxw_merged_range* stqe_next; 2395 } 2396 _Anonymous_27 list_pointers; 2397 } 2398 struct lxw_selection 2399 { 2400 char[12] pane; 2401 char[28] active_cell; 2402 char[28] sqref; 2403 static struct _Anonymous_28 2404 { 2405 lxw_selection* stqe_next; 2406 } 2407 _Anonymous_28 list_pointers; 2408 } 2409 struct lxw_selections 2410 { 2411 lxw_selection* stqh_first; 2412 lxw_selection** stqh_last; 2413 } 2414 struct lxw_data_validations 2415 { 2416 lxw_data_validation* stqh_first; 2417 lxw_data_validation** stqh_last; 2418 } 2419 struct lxw_data_validation 2420 { 2421 uint8_t validate; 2422 uint8_t criteria; 2423 uint8_t ignore_blank; 2424 uint8_t show_input; 2425 uint8_t show_error; 2426 uint8_t error_type; 2427 uint8_t dropdown; 2428 uint8_t is_between; 2429 double value_number; 2430 char* value_formula; 2431 char** value_list; 2432 lxw_datetime value_datetime; 2433 double minimum_number; 2434 char* minimum_formula; 2435 lxw_datetime minimum_datetime; 2436 double maximum_number; 2437 char* maximum_formula; 2438 lxw_datetime maximum_datetime; 2439 char* input_title; 2440 char* input_message; 2441 char* error_title; 2442 char* error_message; 2443 char[28] sqref; 2444 static struct _Anonymous_29 2445 { 2446 lxw_data_validation* stqe_next; 2447 } 2448 _Anonymous_29 list_pointers; 2449 } 2450 struct lxw_image_data 2451 { 2452 lxw_image_options* stqh_first; 2453 lxw_image_options** stqh_last; 2454 } 2455 struct lxw_image_options 2456 { 2457 int32_t x_offset; 2458 int32_t y_offset; 2459 double x_scale; 2460 double y_scale; 2461 lxw_row_t row; 2462 lxw_col_t col; 2463 char* filename; 2464 char* description; 2465 char* url; 2466 char* tip; 2467 uint8_t anchor; 2468 FILE* stream; 2469 uint8_t image_type; 2470 uint8_t is_image_buffer; 2471 ubyte* image_buffer; 2472 size_t image_buffer_size; 2473 double width; 2474 double height; 2475 char* extension; 2476 double x_dpi; 2477 double y_dpi; 2478 lxw_chart* chart; 2479 static struct _Anonymous_30 2480 { 2481 lxw_image_options* stqe_next; 2482 } 2483 _Anonymous_30 list_pointers; 2484 } 2485 struct lxw_chart_data 2486 { 2487 lxw_image_options* stqh_first; 2488 lxw_image_options** stqh_last; 2489 } 2490 struct lxw_row_col_options 2491 { 2492 uint8_t hidden; 2493 uint8_t level; 2494 uint8_t collapsed; 2495 } 2496 struct lxw_col_options 2497 { 2498 lxw_col_t firstcol; 2499 lxw_col_t lastcol; 2500 double width; 2501 lxw_format* format; 2502 uint8_t hidden; 2503 uint8_t level; 2504 uint8_t collapsed; 2505 } 2506 struct lxw_repeat_rows 2507 { 2508 uint8_t in_use; 2509 lxw_row_t first_row; 2510 lxw_row_t last_row; 2511 } 2512 struct lxw_repeat_cols 2513 { 2514 uint8_t in_use; 2515 lxw_col_t first_col; 2516 lxw_col_t last_col; 2517 } 2518 struct lxw_print_area 2519 { 2520 uint8_t in_use; 2521 lxw_row_t first_row; 2522 lxw_row_t last_row; 2523 lxw_col_t first_col; 2524 lxw_col_t last_col; 2525 } 2526 struct lxw_autofilter 2527 { 2528 uint8_t in_use; 2529 lxw_row_t first_row; 2530 lxw_row_t last_row; 2531 lxw_col_t first_col; 2532 lxw_col_t last_col; 2533 } 2534 struct lxw_panes 2535 { 2536 uint8_t type; 2537 lxw_row_t first_row; 2538 lxw_col_t first_col; 2539 lxw_row_t top_row; 2540 lxw_col_t left_col; 2541 double x_split; 2542 double y_split; 2543 } 2544 struct lxw_header_footer_options 2545 { 2546 double margin; 2547 } 2548 struct lxw_protection 2549 { 2550 uint8_t no_select_locked_cells; 2551 uint8_t no_select_unlocked_cells; 2552 uint8_t format_cells; 2553 uint8_t format_columns; 2554 uint8_t format_rows; 2555 uint8_t insert_columns; 2556 uint8_t insert_rows; 2557 uint8_t insert_hyperlinks; 2558 uint8_t delete_columns; 2559 uint8_t delete_rows; 2560 uint8_t sort; 2561 uint8_t autofilter; 2562 uint8_t pivot_tables; 2563 uint8_t scenarios; 2564 uint8_t objects; 2565 uint8_t no_content; 2566 uint8_t no_objects; 2567 uint8_t no_sheet; 2568 uint8_t is_configured; 2569 char[5] hash; 2570 } 2571 struct lxw_rich_string_tuple 2572 { 2573 lxw_format* format; 2574 char* string; 2575 } 2576 struct lxw_worksheet 2577 { 2578 FILE* file; 2579 FILE* optimize_tmpfile; 2580 lxw_table_rows* table; 2581 lxw_table_rows* hyperlinks; 2582 lxw_cell** array; 2583 lxw_merged_ranges* merged_ranges; 2584 lxw_selections* selections; 2585 lxw_data_validations* data_validations; 2586 lxw_image_data* image_data; 2587 lxw_chart_data* chart_data; 2588 lxw_row_t dim_rowmin; 2589 lxw_row_t dim_rowmax; 2590 lxw_col_t dim_colmin; 2591 lxw_col_t dim_colmax; 2592 lxw_sst* sst; 2593 char* name; 2594 char* quoted_name; 2595 char* tmpdir; 2596 uint32_t index; 2597 uint8_t active; 2598 uint8_t selected; 2599 uint8_t hidden; 2600 uint16_t* active_sheet; 2601 uint16_t* first_sheet; 2602 uint8_t is_chartsheet; 2603 lxw_col_options** col_options; 2604 uint16_t col_options_max; 2605 double* col_sizes; 2606 uint16_t col_sizes_max; 2607 lxw_format** col_formats; 2608 uint16_t col_formats_max; 2609 uint8_t col_size_changed; 2610 uint8_t row_size_changed; 2611 uint8_t optimize; 2612 lxw_row* optimize_row; 2613 uint16_t fit_height; 2614 uint16_t fit_width; 2615 uint16_t horizontal_dpi; 2616 uint16_t hlink_count; 2617 uint16_t page_start; 2618 uint16_t print_scale; 2619 uint16_t rel_count; 2620 uint16_t vertical_dpi; 2621 uint16_t zoom; 2622 uint8_t filter_on; 2623 uint8_t fit_page; 2624 uint8_t hcenter; 2625 uint8_t orientation; 2626 uint8_t outline_changed; 2627 uint8_t outline_on; 2628 uint8_t outline_style; 2629 uint8_t outline_below; 2630 uint8_t outline_right; 2631 uint8_t page_order; 2632 uint8_t page_setup_changed; 2633 uint8_t page_view; 2634 uint8_t paper_size; 2635 uint8_t print_gridlines; 2636 uint8_t print_headers; 2637 uint8_t print_options_changed; 2638 uint8_t right_to_left; 2639 uint8_t screen_gridlines; 2640 uint8_t show_zeros; 2641 uint8_t vba_codename; 2642 uint8_t vcenter; 2643 uint8_t zoom_scale_normal; 2644 uint8_t num_validations; 2645 lxw_color_t tab_color; 2646 double margin_left; 2647 double margin_right; 2648 double margin_top; 2649 double margin_bottom; 2650 double margin_header; 2651 double margin_footer; 2652 double default_row_height; 2653 uint32_t default_row_pixels; 2654 uint32_t default_col_pixels; 2655 uint8_t default_row_zeroed; 2656 uint8_t default_row_set; 2657 uint8_t outline_row_level; 2658 uint8_t outline_col_level; 2659 uint8_t header_footer_changed; 2660 char[255] header; 2661 char[255] footer; 2662 lxw_repeat_rows repeat_rows; 2663 lxw_repeat_cols repeat_cols; 2664 lxw_print_area print_area; 2665 lxw_autofilter autofilter; 2666 uint16_t merged_range_count; 2667 lxw_row_t* hbreaks; 2668 lxw_col_t* vbreaks; 2669 uint16_t hbreaks_count; 2670 uint16_t vbreaks_count; 2671 lxw_rel_tuples* external_hyperlinks; 2672 lxw_rel_tuples* external_drawing_links; 2673 lxw_rel_tuples* drawing_links; 2674 lxw_panes panes; 2675 lxw_protection protection; 2676 lxw_drawing* drawing; 2677 static struct _Anonymous_31 2678 { 2679 lxw_worksheet* stqe_next; 2680 } 2681 _Anonymous_31 list_pointers; 2682 } 2683 struct lxw_rel_tuples 2684 { 2685 lxw_rel_tuple* stqh_first; 2686 lxw_rel_tuple** stqh_last; 2687 } 2688 struct lxw_worksheet_init_data 2689 { 2690 uint32_t index; 2691 uint8_t hidden; 2692 uint8_t optimize; 2693 uint16_t* active_sheet; 2694 uint16_t* first_sheet; 2695 lxw_sst* sst; 2696 char* name; 2697 char* quoted_name; 2698 char* tmpdir; 2699 } 2700 lxw_error worksheet_write_number(lxw_worksheet*, lxw_row_t, lxw_col_t, double, lxw_format*) @nogc nothrow; 2701 lxw_error worksheet_write_string(lxw_worksheet*, lxw_row_t, lxw_col_t, const(char)*, lxw_format*) @nogc nothrow; 2702 lxw_error worksheet_write_formula(lxw_worksheet*, lxw_row_t, lxw_col_t, const(char)*, lxw_format*) @nogc nothrow; 2703 lxw_error worksheet_write_array_formula(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t, const(char)*, lxw_format*) @nogc nothrow; 2704 lxw_error worksheet_write_array_formula_num(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t, const(char)*, lxw_format*, double) @nogc nothrow; 2705 lxw_error worksheet_write_datetime(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_datetime*, lxw_format*) @nogc nothrow; 2706 lxw_error worksheet_write_url_opt(lxw_worksheet*, lxw_row_t, lxw_col_t, const(char)*, lxw_format*, const(char)*, const(char)*) @nogc nothrow; 2707 lxw_error worksheet_write_url(lxw_worksheet*, lxw_row_t, lxw_col_t, const(char)*, lxw_format*) @nogc nothrow; 2708 lxw_error worksheet_write_boolean(lxw_worksheet*, lxw_row_t, lxw_col_t, int, lxw_format*) @nogc nothrow; 2709 lxw_error worksheet_write_blank(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_format*) @nogc nothrow; 2710 lxw_error worksheet_write_formula_num(lxw_worksheet*, lxw_row_t, lxw_col_t, const(char)*, lxw_format*, double) @nogc nothrow; 2711 lxw_error worksheet_write_rich_string(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_rich_string_tuple**, lxw_format*) @nogc nothrow; 2712 lxw_error worksheet_set_row(lxw_worksheet*, lxw_row_t, double, lxw_format*) @nogc nothrow; 2713 lxw_error worksheet_set_row_opt(lxw_worksheet*, lxw_row_t, double, lxw_format*, lxw_row_col_options*) @nogc nothrow; 2714 lxw_error worksheet_set_column(lxw_worksheet*, lxw_col_t, lxw_col_t, double, lxw_format*) @nogc nothrow; 2715 lxw_error worksheet_set_column_opt(lxw_worksheet*, lxw_col_t, lxw_col_t, double, lxw_format*, lxw_row_col_options*) @nogc nothrow; 2716 lxw_error worksheet_insert_image(lxw_worksheet*, lxw_row_t, lxw_col_t, const(char)*) @nogc nothrow; 2717 lxw_error worksheet_insert_image_opt(lxw_worksheet*, lxw_row_t, lxw_col_t, const(char)*, lxw_image_options*) @nogc nothrow; 2718 lxw_error worksheet_insert_image_buffer(lxw_worksheet*, lxw_row_t, lxw_col_t, const(ubyte)*, size_t) @nogc nothrow; 2719 lxw_error worksheet_insert_image_buffer_opt(lxw_worksheet*, lxw_row_t, lxw_col_t, const(ubyte)*, size_t, lxw_image_options*) @nogc nothrow; 2720 lxw_error worksheet_insert_chart(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_chart*) @nogc nothrow; 2721 lxw_error worksheet_insert_chart_opt(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_chart*, lxw_image_options*) @nogc nothrow; 2722 lxw_error worksheet_merge_range(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t, const(char)*, lxw_format*) @nogc nothrow; 2723 lxw_error worksheet_autofilter(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t) @nogc nothrow; 2724 lxw_error worksheet_data_validation_cell(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_data_validation*) @nogc nothrow; 2725 lxw_error worksheet_data_validation_range(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t, lxw_data_validation*) @nogc nothrow; 2726 void worksheet_activate(lxw_worksheet*) @nogc nothrow; 2727 void worksheet_select(lxw_worksheet*) @nogc nothrow; 2728 void worksheet_hide(lxw_worksheet*) @nogc nothrow; 2729 void worksheet_set_first_sheet(lxw_worksheet*) @nogc nothrow; 2730 void worksheet_freeze_panes(lxw_worksheet*, lxw_row_t, lxw_col_t) @nogc nothrow; 2731 void worksheet_split_panes(lxw_worksheet*, double, double) @nogc nothrow; 2732 void worksheet_freeze_panes_opt(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t, uint8_t) @nogc nothrow; 2733 void worksheet_split_panes_opt(lxw_worksheet*, double, double, lxw_row_t, lxw_col_t) @nogc nothrow; 2734 void worksheet_set_selection(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t) @nogc nothrow; 2735 void worksheet_set_landscape(lxw_worksheet*) @nogc nothrow; 2736 void worksheet_set_portrait(lxw_worksheet*) @nogc nothrow; 2737 void worksheet_set_page_view(lxw_worksheet*) @nogc nothrow; 2738 void worksheet_set_paper(lxw_worksheet*, uint8_t) @nogc nothrow; 2739 void worksheet_set_margins(lxw_worksheet*, double, double, double, double) @nogc nothrow; 2740 lxw_error worksheet_set_header(lxw_worksheet*, const(char)*) @nogc nothrow; 2741 lxw_error worksheet_set_footer(lxw_worksheet*, const(char)*) @nogc nothrow; 2742 lxw_error worksheet_set_header_opt(lxw_worksheet*, const(char)*, lxw_header_footer_options*) @nogc nothrow; 2743 lxw_error worksheet_set_footer_opt(lxw_worksheet*, const(char)*, lxw_header_footer_options*) @nogc nothrow; 2744 lxw_error worksheet_set_h_pagebreaks(lxw_worksheet*, lxw_row_t*) @nogc nothrow; 2745 lxw_error worksheet_set_v_pagebreaks(lxw_worksheet*, lxw_col_t*) @nogc nothrow; 2746 void worksheet_print_across(lxw_worksheet*) @nogc nothrow; 2747 void worksheet_set_zoom(lxw_worksheet*, uint16_t) @nogc nothrow; 2748 void worksheet_gridlines(lxw_worksheet*, uint8_t) @nogc nothrow; 2749 void worksheet_center_horizontally(lxw_worksheet*) @nogc nothrow; 2750 void worksheet_center_vertically(lxw_worksheet*) @nogc nothrow; 2751 void worksheet_print_row_col_headers(lxw_worksheet*) @nogc nothrow; 2752 lxw_error worksheet_repeat_rows(lxw_worksheet*, lxw_row_t, lxw_row_t) @nogc nothrow; 2753 lxw_error worksheet_repeat_columns(lxw_worksheet*, lxw_col_t, lxw_col_t) @nogc nothrow; 2754 lxw_error worksheet_print_area(lxw_worksheet*, lxw_row_t, lxw_col_t, lxw_row_t, lxw_col_t) @nogc nothrow; 2755 void worksheet_fit_to_pages(lxw_worksheet*, uint16_t, uint16_t) @nogc nothrow; 2756 void worksheet_set_start_page(lxw_worksheet*, uint16_t) @nogc nothrow; 2757 void worksheet_set_print_scale(lxw_worksheet*, uint16_t) @nogc nothrow; 2758 void worksheet_right_to_left(lxw_worksheet*) @nogc nothrow; 2759 void worksheet_hide_zero(lxw_worksheet*) @nogc nothrow; 2760 void worksheet_set_tab_color(lxw_worksheet*, lxw_color_t) @nogc nothrow; 2761 void worksheet_protect(lxw_worksheet*, const(char)*, lxw_protection*) @nogc nothrow; 2762 void worksheet_outline_settings(lxw_worksheet*, uint8_t, uint8_t, uint8_t, uint8_t) @nogc nothrow; 2763 void worksheet_set_default_row(lxw_worksheet*, double, uint8_t) @nogc nothrow; 2764 lxw_worksheet* lxw_worksheet_new(lxw_worksheet_init_data*) @nogc nothrow; 2765 void lxw_worksheet_free(lxw_worksheet*) @nogc nothrow; 2766 void lxw_worksheet_assemble_xml_file(lxw_worksheet*) @nogc nothrow; 2767 void lxw_worksheet_write_single_row(lxw_worksheet*) @nogc nothrow; 2768 void lxw_worksheet_prepare_image(lxw_worksheet*, uint16_t, uint16_t, lxw_image_options*) @nogc nothrow; 2769 void lxw_worksheet_prepare_chart(lxw_worksheet*, uint16_t, uint16_t, lxw_image_options*, uint8_t) @nogc nothrow; 2770 lxw_row* lxw_worksheet_find_row(lxw_worksheet*, lxw_row_t) @nogc nothrow; 2771 lxw_cell* lxw_worksheet_find_cell(lxw_row*, lxw_col_t) @nogc nothrow; 2772 void lxw_worksheet_write_sheet_views(lxw_worksheet*) @nogc nothrow; 2773 void lxw_worksheet_write_page_margins(lxw_worksheet*) @nogc nothrow; 2774 void lxw_worksheet_write_drawings(lxw_worksheet*) @nogc nothrow; 2775 void lxw_worksheet_write_sheet_protection(lxw_worksheet*, lxw_protection*) @nogc nothrow; 2776 void lxw_worksheet_write_sheet_pr(lxw_worksheet*) @nogc nothrow; 2777 void lxw_worksheet_write_page_setup(lxw_worksheet*) @nogc nothrow; 2778 void lxw_worksheet_write_header_footer(lxw_worksheet*) @nogc nothrow; 2779 alias __fsfilcnt64_t = c_ulong; 2780 struct xml_attribute 2781 { 2782 char[256] key; 2783 char[256] value; 2784 static struct _Anonymous_32 2785 { 2786 xml_attribute* stqe_next; 2787 } 2788 _Anonymous_32 list_entries; 2789 } 2790 struct xml_attribute_list 2791 { 2792 xml_attribute* stqh_first; 2793 xml_attribute** stqh_last; 2794 } 2795 xml_attribute* lxw_new_attribute_str(const(char)*, const(char)*) @nogc nothrow; 2796 xml_attribute* lxw_new_attribute_int(const(char)*, uint32_t) @nogc nothrow; 2797 xml_attribute* lxw_new_attribute_dbl(const(char)*, double) @nogc nothrow; 2798 alias __fsfilcnt_t = c_ulong; 2799 void lxw_xml_declaration(FILE*) @nogc nothrow; 2800 void lxw_xml_start_tag(FILE*, const(char)*, xml_attribute_list*) @nogc nothrow; 2801 void lxw_xml_start_tag_unencoded(FILE*, const(char)*, xml_attribute_list*) @nogc nothrow; 2802 void lxw_xml_end_tag(FILE*, const(char)*) @nogc nothrow; 2803 void lxw_xml_empty_tag(FILE*, const(char)*, xml_attribute_list*) @nogc nothrow; 2804 void lxw_xml_empty_tag_unencoded(FILE*, const(char)*, xml_attribute_list*) @nogc nothrow; 2805 void lxw_xml_data_element(FILE*, const(char)*, const(char)*, xml_attribute_list*) @nogc nothrow; 2806 void lxw_xml_rich_si_element(FILE*, const(char)*) @nogc nothrow; 2807 char* lxw_escape_control_characters(const(char)*) @nogc nothrow; 2808 char* lxw_escape_data(const(char)*) @nogc nothrow; 2809 alias __fsblkcnt64_t = c_ulong; 2810 pragma(mangle, "alloca") void* alloca_(size_t) @nogc nothrow; 2811 alias __fsblkcnt_t = c_ulong; 2812 alias __blkcnt64_t = c_long; 2813 alias __blkcnt_t = c_long; 2814 alias __blksize_t = c_long; 2815 alias __timer_t = void*; 2816 alias __clockid_t = int; 2817 alias __key_t = int; 2818 alias __daddr_t = int; 2819 alias __suseconds_t = c_long; 2820 alias __useconds_t = uint; 2821 alias __time_t = c_long; 2822 alias __id_t = uint; 2823 alias __rlim64_t = c_ulong; 2824 alias __rlim_t = c_ulong; 2825 alias __clock_t = c_long; 2826 struct __fsid_t 2827 { 2828 int[2] __val; 2829 } 2830 alias __pid_t = int; 2831 alias __off64_t = c_long; 2832 alias __off_t = c_long; 2833 alias __nlink_t = c_ulong; 2834 alias __mode_t = uint; 2835 alias __ino64_t = c_ulong; 2836 alias __ino_t = c_ulong; 2837 alias __gid_t = uint; 2838 alias __uid_t = uint; 2839 alias __dev_t = c_ulong; 2840 alias __uintmax_t = c_ulong; 2841 alias __intmax_t = c_long; 2842 alias __u_quad_t = c_ulong; 2843 alias __quad_t = c_long; 2844 alias __uint64_t = c_ulong; 2845 alias __int64_t = c_long; 2846 alias __uint32_t = uint; 2847 alias __int32_t = int; 2848 alias __uint16_t = ushort; 2849 alias __int16_t = short; 2850 alias __uint8_t = ubyte; 2851 alias __int8_t = byte; 2852 alias __u_long = c_ulong; 2853 alias __u_int = uint; 2854 alias __u_short = ushort; 2855 alias __u_char = ubyte; 2856 struct __pthread_cond_s 2857 { 2858 static union _Anonymous_33 2859 { 2860 ulong __wseq; 2861 static struct _Anonymous_34 2862 { 2863 uint __low; 2864 uint __high; 2865 } 2866 _Anonymous_34 __wseq32; 2867 } 2868 _Anonymous_33 _anonymous_35; 2869 auto __wseq() @property @nogc pure nothrow { return _anonymous_35.__wseq; } 2870 void __wseq(_T_)(auto ref _T_ val) @property @nogc pure nothrow { _anonymous_35.__wseq = val; } 2871 auto __wseq32() @property @nogc pure nothrow { return _anonymous_35.__wseq32; } 2872 void __wseq32(_T_)(auto ref _T_ val) @property @nogc pure nothrow { _anonymous_35.__wseq32 = val; } 2873 static union _Anonymous_36 2874 { 2875 ulong __g1_start; 2876 static struct _Anonymous_37 2877 { 2878 uint __low; 2879 uint __high; 2880 } 2881 _Anonymous_37 __g1_start32; 2882 } 2883 _Anonymous_36 _anonymous_38; 2884 auto __g1_start() @property @nogc pure nothrow { return _anonymous_38.__g1_start; } 2885 void __g1_start(_T_)(auto ref _T_ val) @property @nogc pure nothrow { _anonymous_38.__g1_start = val; } 2886 auto __g1_start32() @property @nogc pure nothrow { return _anonymous_38.__g1_start32; } 2887 void __g1_start32(_T_)(auto ref _T_ val) @property @nogc pure nothrow { _anonymous_38.__g1_start32 = val; } 2888 uint[2] __g_refs; 2889 uint[2] __g_size; 2890 uint __g1_orig_size; 2891 uint __wrefs; 2892 uint[2] __g_signals; 2893 } 2894 struct __pthread_mutex_s 2895 { 2896 int __lock; 2897 uint __count; 2898 int __owner; 2899 uint __nusers; 2900 int __kind; 2901 short __spins; 2902 short __elision; 2903 __pthread_list_t __list; 2904 } 2905 struct __pthread_internal_list 2906 { 2907 __pthread_internal_list* __prev; 2908 __pthread_internal_list* __next; 2909 } 2910 alias __pthread_list_t = __pthread_internal_list; 2911 extern __gshared const(const(char)*)[0] sys_errlist; 2912 extern __gshared int sys_nerr; 2913 alias uint64_t = c_ulong; 2914 alias uint32_t = uint; 2915 alias uint16_t = ushort; 2916 alias uint8_t = ubyte; 2917 alias int64_t = c_long; 2918 struct max_align_t 2919 { 2920 long __clang_max_align_nonce1; 2921 real __clang_max_align_nonce2; 2922 } 2923 alias int32_t = int; 2924 alias int16_t = short; 2925 alias int8_t = byte; 2926 union pthread_barrierattr_t 2927 { 2928 char[4] __size; 2929 int __align; 2930 } 2931 union pthread_barrier_t 2932 { 2933 char[32] __size; 2934 c_long __align; 2935 } 2936 alias pthread_spinlock_t = int; 2937 union pthread_rwlockattr_t 2938 { 2939 char[8] __size; 2940 c_long __align; 2941 } 2942 union pthread_rwlock_t 2943 { 2944 __pthread_rwlock_arch_t __data; 2945 char[56] __size; 2946 c_long __align; 2947 } 2948 union pthread_cond_t 2949 { 2950 __pthread_cond_s __data; 2951 char[48] __size; 2952 long __align; 2953 } 2954 union pthread_mutex_t 2955 { 2956 __pthread_mutex_s __data; 2957 char[40] __size; 2958 c_long __align; 2959 } 2960 union pthread_attr_t 2961 { 2962 char[56] __size; 2963 c_long __align; 2964 } 2965 alias pthread_once_t = int; 2966 alias ptrdiff_t = c_long; 2967 alias pthread_key_t = uint; 2968 alias size_t = c_ulong; 2969 alias wchar_t = int; 2970 union pthread_condattr_t 2971 { 2972 char[4] __size; 2973 int __align; 2974 } 2975 union pthread_mutexattr_t 2976 { 2977 char[4] __size; 2978 int __align; 2979 } 2980 alias pthread_t = c_ulong; 2981 struct __pthread_rwlock_arch_t 2982 { 2983 uint __readers; 2984 uint __writers; 2985 uint __wrphase_futex; 2986 uint __writers_futex; 2987 uint __pad3; 2988 uint __pad4; 2989 int __cur_writer; 2990 int __shared; 2991 byte __rwelision; 2992 ubyte[7] __pad1; 2993 c_ulong __pad2; 2994 uint __flags; 2995 } 2996 enum _Anonymous_39 2997 { 2998 _ISupper = 256, 2999 _ISlower = 512, 3000 _ISalpha = 1024, 3001 _ISdigit = 2048, 3002 _ISxdigit = 4096, 3003 _ISspace = 8192, 3004 _ISprint = 16384, 3005 _ISgraph = 32768, 3006 _ISblank = 1, 3007 _IScntrl = 2, 3008 _ISpunct = 4, 3009 _ISalnum = 8, 3010 } 3011 enum _ISupper = _Anonymous_39._ISupper; 3012 enum _ISlower = _Anonymous_39._ISlower; 3013 enum _ISalpha = _Anonymous_39._ISalpha; 3014 enum _ISdigit = _Anonymous_39._ISdigit; 3015 enum _ISxdigit = _Anonymous_39._ISxdigit; 3016 enum _ISspace = _Anonymous_39._ISspace; 3017 enum _ISprint = _Anonymous_39._ISprint; 3018 enum _ISgraph = _Anonymous_39._ISgraph; 3019 enum _ISblank = _Anonymous_39._ISblank; 3020 enum _IScntrl = _Anonymous_39._IScntrl; 3021 enum _ISpunct = _Anonymous_39._ISpunct; 3022 enum _ISalnum = _Anonymous_39._ISalnum; 3023 const(ushort)** __ctype_b_loc() @nogc nothrow; 3024 const(__int32_t)** __ctype_tolower_loc() @nogc nothrow; 3025 const(__int32_t)** __ctype_toupper_loc() @nogc nothrow; 3026 pragma(mangle, "isalnum") int isalnum_(int) @nogc nothrow; 3027 pragma(mangle, "isalpha") int isalpha_(int) @nogc nothrow; 3028 pragma(mangle, "iscntrl") int iscntrl_(int) @nogc nothrow; 3029 pragma(mangle, "isdigit") int isdigit_(int) @nogc nothrow; 3030 pragma(mangle, "islower") int islower_(int) @nogc nothrow; 3031 pragma(mangle, "isgraph") int isgraph_(int) @nogc nothrow; 3032 pragma(mangle, "isprint") int isprint_(int) @nogc nothrow; 3033 pragma(mangle, "ispunct") int ispunct_(int) @nogc nothrow; 3034 pragma(mangle, "isspace") int isspace_(int) @nogc nothrow; 3035 pragma(mangle, "isupper") int isupper_(int) @nogc nothrow; 3036 pragma(mangle, "isxdigit") int isxdigit_(int) @nogc nothrow; 3037 int tolower(int) @nogc nothrow; 3038 int toupper(int) @nogc nothrow; 3039 pragma(mangle, "isblank") int isblank_(int) @nogc nothrow; 3040 pragma(mangle, "isascii") int isascii_(int) @nogc nothrow; 3041 pragma(mangle, "toascii") int toascii_(int) @nogc nothrow; 3042 pragma(mangle, "_toupper") int _toupper_(int) @nogc nothrow; 3043 pragma(mangle, "_tolower") int _tolower_(int) @nogc nothrow; 3044 void _IO_free_backup_area(_IO_FILE*) @nogc nothrow; 3045 __off64_t _IO_seekpos(_IO_FILE*, __off64_t, int) @nogc nothrow; 3046 pragma(mangle, "isalnum_l") int isalnum_l_(int, locale_t) @nogc nothrow; 3047 pragma(mangle, "isalpha_l") int isalpha_l_(int, locale_t) @nogc nothrow; 3048 pragma(mangle, "iscntrl_l") int iscntrl_l_(int, locale_t) @nogc nothrow; 3049 pragma(mangle, "isdigit_l") int isdigit_l_(int, locale_t) @nogc nothrow; 3050 pragma(mangle, "islower_l") int islower_l_(int, locale_t) @nogc nothrow; 3051 pragma(mangle, "isgraph_l") int isgraph_l_(int, locale_t) @nogc nothrow; 3052 pragma(mangle, "isprint_l") int isprint_l_(int, locale_t) @nogc nothrow; 3053 pragma(mangle, "ispunct_l") int ispunct_l_(int, locale_t) @nogc nothrow; 3054 pragma(mangle, "isspace_l") int isspace_l_(int, locale_t) @nogc nothrow; 3055 pragma(mangle, "isupper_l") int isupper_l_(int, locale_t) @nogc nothrow; 3056 pragma(mangle, "isxdigit_l") int isxdigit_l_(int, locale_t) @nogc nothrow; 3057 pragma(mangle, "isblank_l") int isblank_l_(int, locale_t) @nogc nothrow; 3058 int __tolower_l(int, locale_t) @nogc nothrow; 3059 int tolower_l(int, locale_t) @nogc nothrow; 3060 int __toupper_l(int, locale_t) @nogc nothrow; 3061 int toupper_l(int, locale_t) @nogc nothrow; 3062 __off64_t _IO_seekoff(_IO_FILE*, __off64_t, int, int) @nogc nothrow; 3063 size_t _IO_sgetn(_IO_FILE*, void*, size_t) @nogc nothrow; 3064 __ssize_t _IO_padn(_IO_FILE*, int, __ssize_t) @nogc nothrow; 3065 int _IO_vfprintf(_IO_FILE*, const(char)*, va_list) @nogc nothrow; 3066 int _IO_vfscanf(_IO_FILE*, const(char)*, va_list, int*) @nogc nothrow; 3067 pragma(mangle, "_IO_ftrylockfile") int _IO_ftrylockfile_(_IO_FILE*) @nogc nothrow; 3068 pragma(mangle, "_IO_funlockfile") void _IO_funlockfile_(_IO_FILE*) @nogc nothrow; 3069 pragma(mangle, "_IO_flockfile") void _IO_flockfile_(_IO_FILE*) @nogc nothrow; 3070 int _IO_peekc_locked(_IO_FILE*) @nogc nothrow; 3071 int _IO_ferror(_IO_FILE*) @nogc nothrow; 3072 int _IO_feof(_IO_FILE*) @nogc nothrow; 3073 int _IO_putc(int, _IO_FILE*) @nogc nothrow; 3074 int _IO_getc(_IO_FILE*) @nogc nothrow; 3075 int __overflow(_IO_FILE*, int) @nogc nothrow; 3076 int __uflow(_IO_FILE*) @nogc nothrow; 3077 int __underflow(_IO_FILE*) @nogc nothrow; 3078 alias __io_close_fn = int function(void*) @nogc nothrow; 3079 alias __io_seek_fn = int function(void*, __off64_t*, int) @nogc nothrow; 3080 alias __io_write_fn = c_long function(void*, const(char)*, size_t) @nogc nothrow; 3081 alias __io_read_fn = c_long function(void*, char*, size_t) @nogc nothrow; 3082 struct _IO_FILE_plus; 3083 enum __codecvt_result 3084 { 3085 __codecvt_ok = 0, 3086 __codecvt_partial = 1, 3087 __codecvt_error = 2, 3088 __codecvt_noconv = 3, 3089 } 3090 enum __codecvt_ok = __codecvt_result.__codecvt_ok; 3091 enum __codecvt_partial = __codecvt_result.__codecvt_partial; 3092 enum __codecvt_error = __codecvt_result.__codecvt_error; 3093 enum __codecvt_noconv = __codecvt_result.__codecvt_noconv; 3094 struct _IO_marker 3095 { 3096 _IO_marker* _next; 3097 _IO_FILE* _sbuf; 3098 int _pos; 3099 } 3100 alias _IO_lock_t = void; 3101 struct _IO_jump_t; 3102 int* __errno_location() @nogc nothrow; 3103 int getopt(int, char**, const(char)*) @nogc nothrow; 3104 extern __gshared int optopt; 3105 extern __gshared int opterr; 3106 extern __gshared int optind; 3107 extern __gshared char* optarg; 3108 alias _Float64x = real; 3109 alias _Float32x = double; 3110 alias _Float64 = double; 3111 alias _Float32 = float; 3112 alias int_least8_t = byte; 3113 alias int_least16_t = short; 3114 alias int_least32_t = int; 3115 alias int_least64_t = c_long; 3116 alias uint_least8_t = ubyte; 3117 alias uint_least16_t = ushort; 3118 alias uint_least32_t = uint; 3119 alias uint_least64_t = c_ulong; 3120 alias int_fast8_t = byte; 3121 alias int_fast16_t = c_long; 3122 alias int_fast32_t = c_long; 3123 alias int_fast64_t = c_long; 3124 alias uint_fast8_t = ubyte; 3125 alias uint_fast16_t = c_ulong; 3126 alias uint_fast32_t = c_ulong; 3127 alias uint_fast64_t = c_ulong; 3128 alias intptr_t = c_long; 3129 alias uintptr_t = c_ulong; 3130 alias intmax_t = c_long; 3131 alias uintmax_t = c_ulong; 3132 enum _Anonymous_40 3133 { 3134 _CS_PATH = 0, 3135 _CS_V6_WIDTH_RESTRICTED_ENVS = 1, 3136 _CS_GNU_LIBC_VERSION = 2, 3137 _CS_GNU_LIBPTHREAD_VERSION = 3, 3138 _CS_V5_WIDTH_RESTRICTED_ENVS = 4, 3139 _CS_V7_WIDTH_RESTRICTED_ENVS = 5, 3140 _CS_LFS_CFLAGS = 1000, 3141 _CS_LFS_LDFLAGS = 1001, 3142 _CS_LFS_LIBS = 1002, 3143 _CS_LFS_LINTFLAGS = 1003, 3144 _CS_LFS64_CFLAGS = 1004, 3145 _CS_LFS64_LDFLAGS = 1005, 3146 _CS_LFS64_LIBS = 1006, 3147 _CS_LFS64_LINTFLAGS = 1007, 3148 _CS_XBS5_ILP32_OFF32_CFLAGS = 1100, 3149 _CS_XBS5_ILP32_OFF32_LDFLAGS = 1101, 3150 _CS_XBS5_ILP32_OFF32_LIBS = 1102, 3151 _CS_XBS5_ILP32_OFF32_LINTFLAGS = 1103, 3152 _CS_XBS5_ILP32_OFFBIG_CFLAGS = 1104, 3153 _CS_XBS5_ILP32_OFFBIG_LDFLAGS = 1105, 3154 _CS_XBS5_ILP32_OFFBIG_LIBS = 1106, 3155 _CS_XBS5_ILP32_OFFBIG_LINTFLAGS = 1107, 3156 _CS_XBS5_LP64_OFF64_CFLAGS = 1108, 3157 _CS_XBS5_LP64_OFF64_LDFLAGS = 1109, 3158 _CS_XBS5_LP64_OFF64_LIBS = 1110, 3159 _CS_XBS5_LP64_OFF64_LINTFLAGS = 1111, 3160 _CS_XBS5_LPBIG_OFFBIG_CFLAGS = 1112, 3161 _CS_XBS5_LPBIG_OFFBIG_LDFLAGS = 1113, 3162 _CS_XBS5_LPBIG_OFFBIG_LIBS = 1114, 3163 _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS = 1115, 3164 _CS_POSIX_V6_ILP32_OFF32_CFLAGS = 1116, 3165 _CS_POSIX_V6_ILP32_OFF32_LDFLAGS = 1117, 3166 _CS_POSIX_V6_ILP32_OFF32_LIBS = 1118, 3167 _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS = 1119, 3168 _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS = 1120, 3169 _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS = 1121, 3170 _CS_POSIX_V6_ILP32_OFFBIG_LIBS = 1122, 3171 _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS = 1123, 3172 _CS_POSIX_V6_LP64_OFF64_CFLAGS = 1124, 3173 _CS_POSIX_V6_LP64_OFF64_LDFLAGS = 1125, 3174 _CS_POSIX_V6_LP64_OFF64_LIBS = 1126, 3175 _CS_POSIX_V6_LP64_OFF64_LINTFLAGS = 1127, 3176 _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS = 1128, 3177 _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS = 1129, 3178 _CS_POSIX_V6_LPBIG_OFFBIG_LIBS = 1130, 3179 _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS = 1131, 3180 _CS_POSIX_V7_ILP32_OFF32_CFLAGS = 1132, 3181 _CS_POSIX_V7_ILP32_OFF32_LDFLAGS = 1133, 3182 _CS_POSIX_V7_ILP32_OFF32_LIBS = 1134, 3183 _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS = 1135, 3184 _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS = 1136, 3185 _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS = 1137, 3186 _CS_POSIX_V7_ILP32_OFFBIG_LIBS = 1138, 3187 _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS = 1139, 3188 _CS_POSIX_V7_LP64_OFF64_CFLAGS = 1140, 3189 _CS_POSIX_V7_LP64_OFF64_LDFLAGS = 1141, 3190 _CS_POSIX_V7_LP64_OFF64_LIBS = 1142, 3191 _CS_POSIX_V7_LP64_OFF64_LINTFLAGS = 1143, 3192 _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS = 1144, 3193 _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS = 1145, 3194 _CS_POSIX_V7_LPBIG_OFFBIG_LIBS = 1146, 3195 _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS = 1147, 3196 _CS_V6_ENV = 1148, 3197 _CS_V7_ENV = 1149, 3198 } 3199 enum _CS_PATH = _Anonymous_40._CS_PATH; 3200 enum _CS_V6_WIDTH_RESTRICTED_ENVS = _Anonymous_40._CS_V6_WIDTH_RESTRICTED_ENVS; 3201 enum _CS_GNU_LIBC_VERSION = _Anonymous_40._CS_GNU_LIBC_VERSION; 3202 enum _CS_GNU_LIBPTHREAD_VERSION = _Anonymous_40._CS_GNU_LIBPTHREAD_VERSION; 3203 enum _CS_V5_WIDTH_RESTRICTED_ENVS = _Anonymous_40._CS_V5_WIDTH_RESTRICTED_ENVS; 3204 enum _CS_V7_WIDTH_RESTRICTED_ENVS = _Anonymous_40._CS_V7_WIDTH_RESTRICTED_ENVS; 3205 enum _CS_LFS_CFLAGS = _Anonymous_40._CS_LFS_CFLAGS; 3206 enum _CS_LFS_LDFLAGS = _Anonymous_40._CS_LFS_LDFLAGS; 3207 enum _CS_LFS_LIBS = _Anonymous_40._CS_LFS_LIBS; 3208 enum _CS_LFS_LINTFLAGS = _Anonymous_40._CS_LFS_LINTFLAGS; 3209 enum _CS_LFS64_CFLAGS = _Anonymous_40._CS_LFS64_CFLAGS; 3210 enum _CS_LFS64_LDFLAGS = _Anonymous_40._CS_LFS64_LDFLAGS; 3211 enum _CS_LFS64_LIBS = _Anonymous_40._CS_LFS64_LIBS; 3212 enum _CS_LFS64_LINTFLAGS = _Anonymous_40._CS_LFS64_LINTFLAGS; 3213 enum _CS_XBS5_ILP32_OFF32_CFLAGS = _Anonymous_40._CS_XBS5_ILP32_OFF32_CFLAGS; 3214 enum _CS_XBS5_ILP32_OFF32_LDFLAGS = _Anonymous_40._CS_XBS5_ILP32_OFF32_LDFLAGS; 3215 enum _CS_XBS5_ILP32_OFF32_LIBS = _Anonymous_40._CS_XBS5_ILP32_OFF32_LIBS; 3216 enum _CS_XBS5_ILP32_OFF32_LINTFLAGS = _Anonymous_40._CS_XBS5_ILP32_OFF32_LINTFLAGS; 3217 enum _CS_XBS5_ILP32_OFFBIG_CFLAGS = _Anonymous_40._CS_XBS5_ILP32_OFFBIG_CFLAGS; 3218 enum _CS_XBS5_ILP32_OFFBIG_LDFLAGS = _Anonymous_40._CS_XBS5_ILP32_OFFBIG_LDFLAGS; 3219 enum _CS_XBS5_ILP32_OFFBIG_LIBS = _Anonymous_40._CS_XBS5_ILP32_OFFBIG_LIBS; 3220 enum _CS_XBS5_ILP32_OFFBIG_LINTFLAGS = _Anonymous_40._CS_XBS5_ILP32_OFFBIG_LINTFLAGS; 3221 enum _CS_XBS5_LP64_OFF64_CFLAGS = _Anonymous_40._CS_XBS5_LP64_OFF64_CFLAGS; 3222 enum _CS_XBS5_LP64_OFF64_LDFLAGS = _Anonymous_40._CS_XBS5_LP64_OFF64_LDFLAGS; 3223 enum _CS_XBS5_LP64_OFF64_LIBS = _Anonymous_40._CS_XBS5_LP64_OFF64_LIBS; 3224 enum _CS_XBS5_LP64_OFF64_LINTFLAGS = _Anonymous_40._CS_XBS5_LP64_OFF64_LINTFLAGS; 3225 enum _CS_XBS5_LPBIG_OFFBIG_CFLAGS = _Anonymous_40._CS_XBS5_LPBIG_OFFBIG_CFLAGS; 3226 enum _CS_XBS5_LPBIG_OFFBIG_LDFLAGS = _Anonymous_40._CS_XBS5_LPBIG_OFFBIG_LDFLAGS; 3227 enum _CS_XBS5_LPBIG_OFFBIG_LIBS = _Anonymous_40._CS_XBS5_LPBIG_OFFBIG_LIBS; 3228 enum _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS = _Anonymous_40._CS_XBS5_LPBIG_OFFBIG_LINTFLAGS; 3229 enum _CS_POSIX_V6_ILP32_OFF32_CFLAGS = _Anonymous_40._CS_POSIX_V6_ILP32_OFF32_CFLAGS; 3230 enum _CS_POSIX_V6_ILP32_OFF32_LDFLAGS = _Anonymous_40._CS_POSIX_V6_ILP32_OFF32_LDFLAGS; 3231 enum _CS_POSIX_V6_ILP32_OFF32_LIBS = _Anonymous_40._CS_POSIX_V6_ILP32_OFF32_LIBS; 3232 enum _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS = _Anonymous_40._CS_POSIX_V6_ILP32_OFF32_LINTFLAGS; 3233 enum _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS = _Anonymous_40._CS_POSIX_V6_ILP32_OFFBIG_CFLAGS; 3234 enum _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS = _Anonymous_40._CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS; 3235 enum _CS_POSIX_V6_ILP32_OFFBIG_LIBS = _Anonymous_40._CS_POSIX_V6_ILP32_OFFBIG_LIBS; 3236 enum _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS = _Anonymous_40._CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS; 3237 enum _CS_POSIX_V6_LP64_OFF64_CFLAGS = _Anonymous_40._CS_POSIX_V6_LP64_OFF64_CFLAGS; 3238 enum _CS_POSIX_V6_LP64_OFF64_LDFLAGS = _Anonymous_40._CS_POSIX_V6_LP64_OFF64_LDFLAGS; 3239 enum _CS_POSIX_V6_LP64_OFF64_LIBS = _Anonymous_40._CS_POSIX_V6_LP64_OFF64_LIBS; 3240 enum _CS_POSIX_V6_LP64_OFF64_LINTFLAGS = _Anonymous_40._CS_POSIX_V6_LP64_OFF64_LINTFLAGS; 3241 enum _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS = _Anonymous_40._CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS; 3242 enum _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS = _Anonymous_40._CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS; 3243 enum _CS_POSIX_V6_LPBIG_OFFBIG_LIBS = _Anonymous_40._CS_POSIX_V6_LPBIG_OFFBIG_LIBS; 3244 enum _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS = _Anonymous_40._CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS; 3245 enum _CS_POSIX_V7_ILP32_OFF32_CFLAGS = _Anonymous_40._CS_POSIX_V7_ILP32_OFF32_CFLAGS; 3246 enum _CS_POSIX_V7_ILP32_OFF32_LDFLAGS = _Anonymous_40._CS_POSIX_V7_ILP32_OFF32_LDFLAGS; 3247 enum _CS_POSIX_V7_ILP32_OFF32_LIBS = _Anonymous_40._CS_POSIX_V7_ILP32_OFF32_LIBS; 3248 enum _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS = _Anonymous_40._CS_POSIX_V7_ILP32_OFF32_LINTFLAGS; 3249 enum _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS = _Anonymous_40._CS_POSIX_V7_ILP32_OFFBIG_CFLAGS; 3250 enum _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS = _Anonymous_40._CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS; 3251 enum _CS_POSIX_V7_ILP32_OFFBIG_LIBS = _Anonymous_40._CS_POSIX_V7_ILP32_OFFBIG_LIBS; 3252 enum _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS = _Anonymous_40._CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS; 3253 enum _CS_POSIX_V7_LP64_OFF64_CFLAGS = _Anonymous_40._CS_POSIX_V7_LP64_OFF64_CFLAGS; 3254 enum _CS_POSIX_V7_LP64_OFF64_LDFLAGS = _Anonymous_40._CS_POSIX_V7_LP64_OFF64_LDFLAGS; 3255 enum _CS_POSIX_V7_LP64_OFF64_LIBS = _Anonymous_40._CS_POSIX_V7_LP64_OFF64_LIBS; 3256 enum _CS_POSIX_V7_LP64_OFF64_LINTFLAGS = _Anonymous_40._CS_POSIX_V7_LP64_OFF64_LINTFLAGS; 3257 enum _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS = _Anonymous_40._CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS; 3258 enum _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS = _Anonymous_40._CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS; 3259 enum _CS_POSIX_V7_LPBIG_OFFBIG_LIBS = _Anonymous_40._CS_POSIX_V7_LPBIG_OFFBIG_LIBS; 3260 enum _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS = _Anonymous_40._CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS; 3261 enum _CS_V6_ENV = _Anonymous_40._CS_V6_ENV; 3262 enum _CS_V7_ENV = _Anonymous_40._CS_V7_ENV; 3263 enum _Anonymous_41 3264 { 3265 _SC_ARG_MAX = 0, 3266 _SC_CHILD_MAX = 1, 3267 _SC_CLK_TCK = 2, 3268 _SC_NGROUPS_MAX = 3, 3269 _SC_OPEN_MAX = 4, 3270 _SC_STREAM_MAX = 5, 3271 _SC_TZNAME_MAX = 6, 3272 _SC_JOB_CONTROL = 7, 3273 _SC_SAVED_IDS = 8, 3274 _SC_REALTIME_SIGNALS = 9, 3275 _SC_PRIORITY_SCHEDULING = 10, 3276 _SC_TIMERS = 11, 3277 _SC_ASYNCHRONOUS_IO = 12, 3278 _SC_PRIORITIZED_IO = 13, 3279 _SC_SYNCHRONIZED_IO = 14, 3280 _SC_FSYNC = 15, 3281 _SC_MAPPED_FILES = 16, 3282 _SC_MEMLOCK = 17, 3283 _SC_MEMLOCK_RANGE = 18, 3284 _SC_MEMORY_PROTECTION = 19, 3285 _SC_MESSAGE_PASSING = 20, 3286 _SC_SEMAPHORES = 21, 3287 _SC_SHARED_MEMORY_OBJECTS = 22, 3288 _SC_AIO_LISTIO_MAX = 23, 3289 _SC_AIO_MAX = 24, 3290 _SC_AIO_PRIO_DELTA_MAX = 25, 3291 _SC_DELAYTIMER_MAX = 26, 3292 _SC_MQ_OPEN_MAX = 27, 3293 _SC_MQ_PRIO_MAX = 28, 3294 _SC_VERSION = 29, 3295 _SC_PAGESIZE = 30, 3296 _SC_RTSIG_MAX = 31, 3297 _SC_SEM_NSEMS_MAX = 32, 3298 _SC_SEM_VALUE_MAX = 33, 3299 _SC_SIGQUEUE_MAX = 34, 3300 _SC_TIMER_MAX = 35, 3301 _SC_BC_BASE_MAX = 36, 3302 _SC_BC_DIM_MAX = 37, 3303 _SC_BC_SCALE_MAX = 38, 3304 _SC_BC_STRING_MAX = 39, 3305 _SC_COLL_WEIGHTS_MAX = 40, 3306 _SC_EQUIV_CLASS_MAX = 41, 3307 _SC_EXPR_NEST_MAX = 42, 3308 _SC_LINE_MAX = 43, 3309 _SC_RE_DUP_MAX = 44, 3310 _SC_CHARCLASS_NAME_MAX = 45, 3311 _SC_2_VERSION = 46, 3312 _SC_2_C_BIND = 47, 3313 _SC_2_C_DEV = 48, 3314 _SC_2_FORT_DEV = 49, 3315 _SC_2_FORT_RUN = 50, 3316 _SC_2_SW_DEV = 51, 3317 _SC_2_LOCALEDEF = 52, 3318 _SC_PII = 53, 3319 _SC_PII_XTI = 54, 3320 _SC_PII_SOCKET = 55, 3321 _SC_PII_INTERNET = 56, 3322 _SC_PII_OSI = 57, 3323 _SC_POLL = 58, 3324 _SC_SELECT = 59, 3325 _SC_UIO_MAXIOV = 60, 3326 _SC_IOV_MAX = 60, 3327 _SC_PII_INTERNET_STREAM = 61, 3328 _SC_PII_INTERNET_DGRAM = 62, 3329 _SC_PII_OSI_COTS = 63, 3330 _SC_PII_OSI_CLTS = 64, 3331 _SC_PII_OSI_M = 65, 3332 _SC_T_IOV_MAX = 66, 3333 _SC_THREADS = 67, 3334 _SC_THREAD_SAFE_FUNCTIONS = 68, 3335 _SC_GETGR_R_SIZE_MAX = 69, 3336 _SC_GETPW_R_SIZE_MAX = 70, 3337 _SC_LOGIN_NAME_MAX = 71, 3338 _SC_TTY_NAME_MAX = 72, 3339 _SC_THREAD_DESTRUCTOR_ITERATIONS = 73, 3340 _SC_THREAD_KEYS_MAX = 74, 3341 _SC_THREAD_STACK_MIN = 75, 3342 _SC_THREAD_THREADS_MAX = 76, 3343 _SC_THREAD_ATTR_STACKADDR = 77, 3344 _SC_THREAD_ATTR_STACKSIZE = 78, 3345 _SC_THREAD_PRIORITY_SCHEDULING = 79, 3346 _SC_THREAD_PRIO_INHERIT = 80, 3347 _SC_THREAD_PRIO_PROTECT = 81, 3348 _SC_THREAD_PROCESS_SHARED = 82, 3349 _SC_NPROCESSORS_CONF = 83, 3350 _SC_NPROCESSORS_ONLN = 84, 3351 _SC_PHYS_PAGES = 85, 3352 _SC_AVPHYS_PAGES = 86, 3353 _SC_ATEXIT_MAX = 87, 3354 _SC_PASS_MAX = 88, 3355 _SC_XOPEN_VERSION = 89, 3356 _SC_XOPEN_XCU_VERSION = 90, 3357 _SC_XOPEN_UNIX = 91, 3358 _SC_XOPEN_CRYPT = 92, 3359 _SC_XOPEN_ENH_I18N = 93, 3360 _SC_XOPEN_SHM = 94, 3361 _SC_2_CHAR_TERM = 95, 3362 _SC_2_C_VERSION = 96, 3363 _SC_2_UPE = 97, 3364 _SC_XOPEN_XPG2 = 98, 3365 _SC_XOPEN_XPG3 = 99, 3366 _SC_XOPEN_XPG4 = 100, 3367 _SC_CHAR_BIT = 101, 3368 _SC_CHAR_MAX = 102, 3369 _SC_CHAR_MIN = 103, 3370 _SC_INT_MAX = 104, 3371 _SC_INT_MIN = 105, 3372 _SC_LONG_BIT = 106, 3373 _SC_WORD_BIT = 107, 3374 _SC_MB_LEN_MAX = 108, 3375 _SC_NZERO = 109, 3376 _SC_SSIZE_MAX = 110, 3377 _SC_SCHAR_MAX = 111, 3378 _SC_SCHAR_MIN = 112, 3379 _SC_SHRT_MAX = 113, 3380 _SC_SHRT_MIN = 114, 3381 _SC_UCHAR_MAX = 115, 3382 _SC_UINT_MAX = 116, 3383 _SC_ULONG_MAX = 117, 3384 _SC_USHRT_MAX = 118, 3385 _SC_NL_ARGMAX = 119, 3386 _SC_NL_LANGMAX = 120, 3387 _SC_NL_MSGMAX = 121, 3388 _SC_NL_NMAX = 122, 3389 _SC_NL_SETMAX = 123, 3390 _SC_NL_TEXTMAX = 124, 3391 _SC_XBS5_ILP32_OFF32 = 125, 3392 _SC_XBS5_ILP32_OFFBIG = 126, 3393 _SC_XBS5_LP64_OFF64 = 127, 3394 _SC_XBS5_LPBIG_OFFBIG = 128, 3395 _SC_XOPEN_LEGACY = 129, 3396 _SC_XOPEN_REALTIME = 130, 3397 _SC_XOPEN_REALTIME_THREADS = 131, 3398 _SC_ADVISORY_INFO = 132, 3399 _SC_BARRIERS = 133, 3400 _SC_BASE = 134, 3401 _SC_C_LANG_SUPPORT = 135, 3402 _SC_C_LANG_SUPPORT_R = 136, 3403 _SC_CLOCK_SELECTION = 137, 3404 _SC_CPUTIME = 138, 3405 _SC_THREAD_CPUTIME = 139, 3406 _SC_DEVICE_IO = 140, 3407 _SC_DEVICE_SPECIFIC = 141, 3408 _SC_DEVICE_SPECIFIC_R = 142, 3409 _SC_FD_MGMT = 143, 3410 _SC_FIFO = 144, 3411 _SC_PIPE = 145, 3412 _SC_FILE_ATTRIBUTES = 146, 3413 _SC_FILE_LOCKING = 147, 3414 _SC_FILE_SYSTEM = 148, 3415 _SC_MONOTONIC_CLOCK = 149, 3416 _SC_MULTI_PROCESS = 150, 3417 _SC_SINGLE_PROCESS = 151, 3418 _SC_NETWORKING = 152, 3419 _SC_READER_WRITER_LOCKS = 153, 3420 _SC_SPIN_LOCKS = 154, 3421 _SC_REGEXP = 155, 3422 _SC_REGEX_VERSION = 156, 3423 _SC_SHELL = 157, 3424 _SC_SIGNALS = 158, 3425 _SC_SPAWN = 159, 3426 _SC_SPORADIC_SERVER = 160, 3427 _SC_THREAD_SPORADIC_SERVER = 161, 3428 _SC_SYSTEM_DATABASE = 162, 3429 _SC_SYSTEM_DATABASE_R = 163, 3430 _SC_TIMEOUTS = 164, 3431 _SC_TYPED_MEMORY_OBJECTS = 165, 3432 _SC_USER_GROUPS = 166, 3433 _SC_USER_GROUPS_R = 167, 3434 _SC_2_PBS = 168, 3435 _SC_2_PBS_ACCOUNTING = 169, 3436 _SC_2_PBS_LOCATE = 170, 3437 _SC_2_PBS_MESSAGE = 171, 3438 _SC_2_PBS_TRACK = 172, 3439 _SC_SYMLOOP_MAX = 173, 3440 _SC_STREAMS = 174, 3441 _SC_2_PBS_CHECKPOINT = 175, 3442 _SC_V6_ILP32_OFF32 = 176, 3443 _SC_V6_ILP32_OFFBIG = 177, 3444 _SC_V6_LP64_OFF64 = 178, 3445 _SC_V6_LPBIG_OFFBIG = 179, 3446 _SC_HOST_NAME_MAX = 180, 3447 _SC_TRACE = 181, 3448 _SC_TRACE_EVENT_FILTER = 182, 3449 _SC_TRACE_INHERIT = 183, 3450 _SC_TRACE_LOG = 184, 3451 _SC_LEVEL1_ICACHE_SIZE = 185, 3452 _SC_LEVEL1_ICACHE_ASSOC = 186, 3453 _SC_LEVEL1_ICACHE_LINESIZE = 187, 3454 _SC_LEVEL1_DCACHE_SIZE = 188, 3455 _SC_LEVEL1_DCACHE_ASSOC = 189, 3456 _SC_LEVEL1_DCACHE_LINESIZE = 190, 3457 _SC_LEVEL2_CACHE_SIZE = 191, 3458 _SC_LEVEL2_CACHE_ASSOC = 192, 3459 _SC_LEVEL2_CACHE_LINESIZE = 193, 3460 _SC_LEVEL3_CACHE_SIZE = 194, 3461 _SC_LEVEL3_CACHE_ASSOC = 195, 3462 _SC_LEVEL3_CACHE_LINESIZE = 196, 3463 _SC_LEVEL4_CACHE_SIZE = 197, 3464 _SC_LEVEL4_CACHE_ASSOC = 198, 3465 _SC_LEVEL4_CACHE_LINESIZE = 199, 3466 _SC_IPV6 = 235, 3467 _SC_RAW_SOCKETS = 236, 3468 _SC_V7_ILP32_OFF32 = 237, 3469 _SC_V7_ILP32_OFFBIG = 238, 3470 _SC_V7_LP64_OFF64 = 239, 3471 _SC_V7_LPBIG_OFFBIG = 240, 3472 _SC_SS_REPL_MAX = 241, 3473 _SC_TRACE_EVENT_NAME_MAX = 242, 3474 _SC_TRACE_NAME_MAX = 243, 3475 _SC_TRACE_SYS_MAX = 244, 3476 _SC_TRACE_USER_EVENT_MAX = 245, 3477 _SC_XOPEN_STREAMS = 246, 3478 _SC_THREAD_ROBUST_PRIO_INHERIT = 247, 3479 _SC_THREAD_ROBUST_PRIO_PROTECT = 248, 3480 } 3481 enum _SC_ARG_MAX = _Anonymous_41._SC_ARG_MAX; 3482 enum _SC_CHILD_MAX = _Anonymous_41._SC_CHILD_MAX; 3483 enum _SC_CLK_TCK = _Anonymous_41._SC_CLK_TCK; 3484 enum _SC_NGROUPS_MAX = _Anonymous_41._SC_NGROUPS_MAX; 3485 enum _SC_OPEN_MAX = _Anonymous_41._SC_OPEN_MAX; 3486 enum _SC_STREAM_MAX = _Anonymous_41._SC_STREAM_MAX; 3487 enum _SC_TZNAME_MAX = _Anonymous_41._SC_TZNAME_MAX; 3488 enum _SC_JOB_CONTROL = _Anonymous_41._SC_JOB_CONTROL; 3489 enum _SC_SAVED_IDS = _Anonymous_41._SC_SAVED_IDS; 3490 enum _SC_REALTIME_SIGNALS = _Anonymous_41._SC_REALTIME_SIGNALS; 3491 enum _SC_PRIORITY_SCHEDULING = _Anonymous_41._SC_PRIORITY_SCHEDULING; 3492 enum _SC_TIMERS = _Anonymous_41._SC_TIMERS; 3493 enum _SC_ASYNCHRONOUS_IO = _Anonymous_41._SC_ASYNCHRONOUS_IO; 3494 enum _SC_PRIORITIZED_IO = _Anonymous_41._SC_PRIORITIZED_IO; 3495 enum _SC_SYNCHRONIZED_IO = _Anonymous_41._SC_SYNCHRONIZED_IO; 3496 enum _SC_FSYNC = _Anonymous_41._SC_FSYNC; 3497 enum _SC_MAPPED_FILES = _Anonymous_41._SC_MAPPED_FILES; 3498 enum _SC_MEMLOCK = _Anonymous_41._SC_MEMLOCK; 3499 enum _SC_MEMLOCK_RANGE = _Anonymous_41._SC_MEMLOCK_RANGE; 3500 enum _SC_MEMORY_PROTECTION = _Anonymous_41._SC_MEMORY_PROTECTION; 3501 enum _SC_MESSAGE_PASSING = _Anonymous_41._SC_MESSAGE_PASSING; 3502 enum _SC_SEMAPHORES = _Anonymous_41._SC_SEMAPHORES; 3503 enum _SC_SHARED_MEMORY_OBJECTS = _Anonymous_41._SC_SHARED_MEMORY_OBJECTS; 3504 enum _SC_AIO_LISTIO_MAX = _Anonymous_41._SC_AIO_LISTIO_MAX; 3505 enum _SC_AIO_MAX = _Anonymous_41._SC_AIO_MAX; 3506 enum _SC_AIO_PRIO_DELTA_MAX = _Anonymous_41._SC_AIO_PRIO_DELTA_MAX; 3507 enum _SC_DELAYTIMER_MAX = _Anonymous_41._SC_DELAYTIMER_MAX; 3508 enum _SC_MQ_OPEN_MAX = _Anonymous_41._SC_MQ_OPEN_MAX; 3509 enum _SC_MQ_PRIO_MAX = _Anonymous_41._SC_MQ_PRIO_MAX; 3510 enum _SC_VERSION = _Anonymous_41._SC_VERSION; 3511 enum _SC_PAGESIZE = _Anonymous_41._SC_PAGESIZE; 3512 enum _SC_RTSIG_MAX = _Anonymous_41._SC_RTSIG_MAX; 3513 enum _SC_SEM_NSEMS_MAX = _Anonymous_41._SC_SEM_NSEMS_MAX; 3514 enum _SC_SEM_VALUE_MAX = _Anonymous_41._SC_SEM_VALUE_MAX; 3515 enum _SC_SIGQUEUE_MAX = _Anonymous_41._SC_SIGQUEUE_MAX; 3516 enum _SC_TIMER_MAX = _Anonymous_41._SC_TIMER_MAX; 3517 enum _SC_BC_BASE_MAX = _Anonymous_41._SC_BC_BASE_MAX; 3518 enum _SC_BC_DIM_MAX = _Anonymous_41._SC_BC_DIM_MAX; 3519 enum _SC_BC_SCALE_MAX = _Anonymous_41._SC_BC_SCALE_MAX; 3520 enum _SC_BC_STRING_MAX = _Anonymous_41._SC_BC_STRING_MAX; 3521 enum _SC_COLL_WEIGHTS_MAX = _Anonymous_41._SC_COLL_WEIGHTS_MAX; 3522 enum _SC_EQUIV_CLASS_MAX = _Anonymous_41._SC_EQUIV_CLASS_MAX; 3523 enum _SC_EXPR_NEST_MAX = _Anonymous_41._SC_EXPR_NEST_MAX; 3524 enum _SC_LINE_MAX = _Anonymous_41._SC_LINE_MAX; 3525 enum _SC_RE_DUP_MAX = _Anonymous_41._SC_RE_DUP_MAX; 3526 enum _SC_CHARCLASS_NAME_MAX = _Anonymous_41._SC_CHARCLASS_NAME_MAX; 3527 enum _SC_2_VERSION = _Anonymous_41._SC_2_VERSION; 3528 enum _SC_2_C_BIND = _Anonymous_41._SC_2_C_BIND; 3529 enum _SC_2_C_DEV = _Anonymous_41._SC_2_C_DEV; 3530 enum _SC_2_FORT_DEV = _Anonymous_41._SC_2_FORT_DEV; 3531 enum _SC_2_FORT_RUN = _Anonymous_41._SC_2_FORT_RUN; 3532 enum _SC_2_SW_DEV = _Anonymous_41._SC_2_SW_DEV; 3533 enum _SC_2_LOCALEDEF = _Anonymous_41._SC_2_LOCALEDEF; 3534 enum _SC_PII = _Anonymous_41._SC_PII; 3535 enum _SC_PII_XTI = _Anonymous_41._SC_PII_XTI; 3536 enum _SC_PII_SOCKET = _Anonymous_41._SC_PII_SOCKET; 3537 enum _SC_PII_INTERNET = _Anonymous_41._SC_PII_INTERNET; 3538 enum _SC_PII_OSI = _Anonymous_41._SC_PII_OSI; 3539 enum _SC_POLL = _Anonymous_41._SC_POLL; 3540 enum _SC_SELECT = _Anonymous_41._SC_SELECT; 3541 enum _SC_UIO_MAXIOV = _Anonymous_41._SC_UIO_MAXIOV; 3542 enum _SC_IOV_MAX = _Anonymous_41._SC_IOV_MAX; 3543 enum _SC_PII_INTERNET_STREAM = _Anonymous_41._SC_PII_INTERNET_STREAM; 3544 enum _SC_PII_INTERNET_DGRAM = _Anonymous_41._SC_PII_INTERNET_DGRAM; 3545 enum _SC_PII_OSI_COTS = _Anonymous_41._SC_PII_OSI_COTS; 3546 enum _SC_PII_OSI_CLTS = _Anonymous_41._SC_PII_OSI_CLTS; 3547 enum _SC_PII_OSI_M = _Anonymous_41._SC_PII_OSI_M; 3548 enum _SC_T_IOV_MAX = _Anonymous_41._SC_T_IOV_MAX; 3549 enum _SC_THREADS = _Anonymous_41._SC_THREADS; 3550 enum _SC_THREAD_SAFE_FUNCTIONS = _Anonymous_41._SC_THREAD_SAFE_FUNCTIONS; 3551 enum _SC_GETGR_R_SIZE_MAX = _Anonymous_41._SC_GETGR_R_SIZE_MAX; 3552 enum _SC_GETPW_R_SIZE_MAX = _Anonymous_41._SC_GETPW_R_SIZE_MAX; 3553 enum _SC_LOGIN_NAME_MAX = _Anonymous_41._SC_LOGIN_NAME_MAX; 3554 enum _SC_TTY_NAME_MAX = _Anonymous_41._SC_TTY_NAME_MAX; 3555 enum _SC_THREAD_DESTRUCTOR_ITERATIONS = _Anonymous_41._SC_THREAD_DESTRUCTOR_ITERATIONS; 3556 enum _SC_THREAD_KEYS_MAX = _Anonymous_41._SC_THREAD_KEYS_MAX; 3557 enum _SC_THREAD_STACK_MIN = _Anonymous_41._SC_THREAD_STACK_MIN; 3558 enum _SC_THREAD_THREADS_MAX = _Anonymous_41._SC_THREAD_THREADS_MAX; 3559 enum _SC_THREAD_ATTR_STACKADDR = _Anonymous_41._SC_THREAD_ATTR_STACKADDR; 3560 enum _SC_THREAD_ATTR_STACKSIZE = _Anonymous_41._SC_THREAD_ATTR_STACKSIZE; 3561 enum _SC_THREAD_PRIORITY_SCHEDULING = _Anonymous_41._SC_THREAD_PRIORITY_SCHEDULING; 3562 enum _SC_THREAD_PRIO_INHERIT = _Anonymous_41._SC_THREAD_PRIO_INHERIT; 3563 enum _SC_THREAD_PRIO_PROTECT = _Anonymous_41._SC_THREAD_PRIO_PROTECT; 3564 enum _SC_THREAD_PROCESS_SHARED = _Anonymous_41._SC_THREAD_PROCESS_SHARED; 3565 enum _SC_NPROCESSORS_CONF = _Anonymous_41._SC_NPROCESSORS_CONF; 3566 enum _SC_NPROCESSORS_ONLN = _Anonymous_41._SC_NPROCESSORS_ONLN; 3567 enum _SC_PHYS_PAGES = _Anonymous_41._SC_PHYS_PAGES; 3568 enum _SC_AVPHYS_PAGES = _Anonymous_41._SC_AVPHYS_PAGES; 3569 enum _SC_ATEXIT_MAX = _Anonymous_41._SC_ATEXIT_MAX; 3570 enum _SC_PASS_MAX = _Anonymous_41._SC_PASS_MAX; 3571 enum _SC_XOPEN_VERSION = _Anonymous_41._SC_XOPEN_VERSION; 3572 enum _SC_XOPEN_XCU_VERSION = _Anonymous_41._SC_XOPEN_XCU_VERSION; 3573 enum _SC_XOPEN_UNIX = _Anonymous_41._SC_XOPEN_UNIX; 3574 enum _SC_XOPEN_CRYPT = _Anonymous_41._SC_XOPEN_CRYPT; 3575 enum _SC_XOPEN_ENH_I18N = _Anonymous_41._SC_XOPEN_ENH_I18N; 3576 enum _SC_XOPEN_SHM = _Anonymous_41._SC_XOPEN_SHM; 3577 enum _SC_2_CHAR_TERM = _Anonymous_41._SC_2_CHAR_TERM; 3578 enum _SC_2_C_VERSION = _Anonymous_41._SC_2_C_VERSION; 3579 enum _SC_2_UPE = _Anonymous_41._SC_2_UPE; 3580 enum _SC_XOPEN_XPG2 = _Anonymous_41._SC_XOPEN_XPG2; 3581 enum _SC_XOPEN_XPG3 = _Anonymous_41._SC_XOPEN_XPG3; 3582 enum _SC_XOPEN_XPG4 = _Anonymous_41._SC_XOPEN_XPG4; 3583 enum _SC_CHAR_BIT = _Anonymous_41._SC_CHAR_BIT; 3584 enum _SC_CHAR_MAX = _Anonymous_41._SC_CHAR_MAX; 3585 enum _SC_CHAR_MIN = _Anonymous_41._SC_CHAR_MIN; 3586 enum _SC_INT_MAX = _Anonymous_41._SC_INT_MAX; 3587 enum _SC_INT_MIN = _Anonymous_41._SC_INT_MIN; 3588 enum _SC_LONG_BIT = _Anonymous_41._SC_LONG_BIT; 3589 enum _SC_WORD_BIT = _Anonymous_41._SC_WORD_BIT; 3590 enum _SC_MB_LEN_MAX = _Anonymous_41._SC_MB_LEN_MAX; 3591 enum _SC_NZERO = _Anonymous_41._SC_NZERO; 3592 enum _SC_SSIZE_MAX = _Anonymous_41._SC_SSIZE_MAX; 3593 enum _SC_SCHAR_MAX = _Anonymous_41._SC_SCHAR_MAX; 3594 enum _SC_SCHAR_MIN = _Anonymous_41._SC_SCHAR_MIN; 3595 enum _SC_SHRT_MAX = _Anonymous_41._SC_SHRT_MAX; 3596 enum _SC_SHRT_MIN = _Anonymous_41._SC_SHRT_MIN; 3597 enum _SC_UCHAR_MAX = _Anonymous_41._SC_UCHAR_MAX; 3598 enum _SC_UINT_MAX = _Anonymous_41._SC_UINT_MAX; 3599 enum _SC_ULONG_MAX = _Anonymous_41._SC_ULONG_MAX; 3600 enum _SC_USHRT_MAX = _Anonymous_41._SC_USHRT_MAX; 3601 enum _SC_NL_ARGMAX = _Anonymous_41._SC_NL_ARGMAX; 3602 enum _SC_NL_LANGMAX = _Anonymous_41._SC_NL_LANGMAX; 3603 enum _SC_NL_MSGMAX = _Anonymous_41._SC_NL_MSGMAX; 3604 enum _SC_NL_NMAX = _Anonymous_41._SC_NL_NMAX; 3605 enum _SC_NL_SETMAX = _Anonymous_41._SC_NL_SETMAX; 3606 enum _SC_NL_TEXTMAX = _Anonymous_41._SC_NL_TEXTMAX; 3607 enum _SC_XBS5_ILP32_OFF32 = _Anonymous_41._SC_XBS5_ILP32_OFF32; 3608 enum _SC_XBS5_ILP32_OFFBIG = _Anonymous_41._SC_XBS5_ILP32_OFFBIG; 3609 enum _SC_XBS5_LP64_OFF64 = _Anonymous_41._SC_XBS5_LP64_OFF64; 3610 enum _SC_XBS5_LPBIG_OFFBIG = _Anonymous_41._SC_XBS5_LPBIG_OFFBIG; 3611 enum _SC_XOPEN_LEGACY = _Anonymous_41._SC_XOPEN_LEGACY; 3612 enum _SC_XOPEN_REALTIME = _Anonymous_41._SC_XOPEN_REALTIME; 3613 enum _SC_XOPEN_REALTIME_THREADS = _Anonymous_41._SC_XOPEN_REALTIME_THREADS; 3614 enum _SC_ADVISORY_INFO = _Anonymous_41._SC_ADVISORY_INFO; 3615 enum _SC_BARRIERS = _Anonymous_41._SC_BARRIERS; 3616 enum _SC_BASE = _Anonymous_41._SC_BASE; 3617 enum _SC_C_LANG_SUPPORT = _Anonymous_41._SC_C_LANG_SUPPORT; 3618 enum _SC_C_LANG_SUPPORT_R = _Anonymous_41._SC_C_LANG_SUPPORT_R; 3619 enum _SC_CLOCK_SELECTION = _Anonymous_41._SC_CLOCK_SELECTION; 3620 enum _SC_CPUTIME = _Anonymous_41._SC_CPUTIME; 3621 enum _SC_THREAD_CPUTIME = _Anonymous_41._SC_THREAD_CPUTIME; 3622 enum _SC_DEVICE_IO = _Anonymous_41._SC_DEVICE_IO; 3623 enum _SC_DEVICE_SPECIFIC = _Anonymous_41._SC_DEVICE_SPECIFIC; 3624 enum _SC_DEVICE_SPECIFIC_R = _Anonymous_41._SC_DEVICE_SPECIFIC_R; 3625 enum _SC_FD_MGMT = _Anonymous_41._SC_FD_MGMT; 3626 enum _SC_FIFO = _Anonymous_41._SC_FIFO; 3627 enum _SC_PIPE = _Anonymous_41._SC_PIPE; 3628 enum _SC_FILE_ATTRIBUTES = _Anonymous_41._SC_FILE_ATTRIBUTES; 3629 enum _SC_FILE_LOCKING = _Anonymous_41._SC_FILE_LOCKING; 3630 enum _SC_FILE_SYSTEM = _Anonymous_41._SC_FILE_SYSTEM; 3631 enum _SC_MONOTONIC_CLOCK = _Anonymous_41._SC_MONOTONIC_CLOCK; 3632 enum _SC_MULTI_PROCESS = _Anonymous_41._SC_MULTI_PROCESS; 3633 enum _SC_SINGLE_PROCESS = _Anonymous_41._SC_SINGLE_PROCESS; 3634 enum _SC_NETWORKING = _Anonymous_41._SC_NETWORKING; 3635 enum _SC_READER_WRITER_LOCKS = _Anonymous_41._SC_READER_WRITER_LOCKS; 3636 enum _SC_SPIN_LOCKS = _Anonymous_41._SC_SPIN_LOCKS; 3637 enum _SC_REGEXP = _Anonymous_41._SC_REGEXP; 3638 enum _SC_REGEX_VERSION = _Anonymous_41._SC_REGEX_VERSION; 3639 enum _SC_SHELL = _Anonymous_41._SC_SHELL; 3640 enum _SC_SIGNALS = _Anonymous_41._SC_SIGNALS; 3641 enum _SC_SPAWN = _Anonymous_41._SC_SPAWN; 3642 enum _SC_SPORADIC_SERVER = _Anonymous_41._SC_SPORADIC_SERVER; 3643 enum _SC_THREAD_SPORADIC_SERVER = _Anonymous_41._SC_THREAD_SPORADIC_SERVER; 3644 enum _SC_SYSTEM_DATABASE = _Anonymous_41._SC_SYSTEM_DATABASE; 3645 enum _SC_SYSTEM_DATABASE_R = _Anonymous_41._SC_SYSTEM_DATABASE_R; 3646 enum _SC_TIMEOUTS = _Anonymous_41._SC_TIMEOUTS; 3647 enum _SC_TYPED_MEMORY_OBJECTS = _Anonymous_41._SC_TYPED_MEMORY_OBJECTS; 3648 enum _SC_USER_GROUPS = _Anonymous_41._SC_USER_GROUPS; 3649 enum _SC_USER_GROUPS_R = _Anonymous_41._SC_USER_GROUPS_R; 3650 enum _SC_2_PBS = _Anonymous_41._SC_2_PBS; 3651 enum _SC_2_PBS_ACCOUNTING = _Anonymous_41._SC_2_PBS_ACCOUNTING; 3652 enum _SC_2_PBS_LOCATE = _Anonymous_41._SC_2_PBS_LOCATE; 3653 enum _SC_2_PBS_MESSAGE = _Anonymous_41._SC_2_PBS_MESSAGE; 3654 enum _SC_2_PBS_TRACK = _Anonymous_41._SC_2_PBS_TRACK; 3655 enum _SC_SYMLOOP_MAX = _Anonymous_41._SC_SYMLOOP_MAX; 3656 enum _SC_STREAMS = _Anonymous_41._SC_STREAMS; 3657 enum _SC_2_PBS_CHECKPOINT = _Anonymous_41._SC_2_PBS_CHECKPOINT; 3658 enum _SC_V6_ILP32_OFF32 = _Anonymous_41._SC_V6_ILP32_OFF32; 3659 enum _SC_V6_ILP32_OFFBIG = _Anonymous_41._SC_V6_ILP32_OFFBIG; 3660 enum _SC_V6_LP64_OFF64 = _Anonymous_41._SC_V6_LP64_OFF64; 3661 enum _SC_V6_LPBIG_OFFBIG = _Anonymous_41._SC_V6_LPBIG_OFFBIG; 3662 enum _SC_HOST_NAME_MAX = _Anonymous_41._SC_HOST_NAME_MAX; 3663 enum _SC_TRACE = _Anonymous_41._SC_TRACE; 3664 enum _SC_TRACE_EVENT_FILTER = _Anonymous_41._SC_TRACE_EVENT_FILTER; 3665 enum _SC_TRACE_INHERIT = _Anonymous_41._SC_TRACE_INHERIT; 3666 enum _SC_TRACE_LOG = _Anonymous_41._SC_TRACE_LOG; 3667 enum _SC_LEVEL1_ICACHE_SIZE = _Anonymous_41._SC_LEVEL1_ICACHE_SIZE; 3668 enum _SC_LEVEL1_ICACHE_ASSOC = _Anonymous_41._SC_LEVEL1_ICACHE_ASSOC; 3669 enum _SC_LEVEL1_ICACHE_LINESIZE = _Anonymous_41._SC_LEVEL1_ICACHE_LINESIZE; 3670 enum _SC_LEVEL1_DCACHE_SIZE = _Anonymous_41._SC_LEVEL1_DCACHE_SIZE; 3671 enum _SC_LEVEL1_DCACHE_ASSOC = _Anonymous_41._SC_LEVEL1_DCACHE_ASSOC; 3672 enum _SC_LEVEL1_DCACHE_LINESIZE = _Anonymous_41._SC_LEVEL1_DCACHE_LINESIZE; 3673 enum _SC_LEVEL2_CACHE_SIZE = _Anonymous_41._SC_LEVEL2_CACHE_SIZE; 3674 enum _SC_LEVEL2_CACHE_ASSOC = _Anonymous_41._SC_LEVEL2_CACHE_ASSOC; 3675 enum _SC_LEVEL2_CACHE_LINESIZE = _Anonymous_41._SC_LEVEL2_CACHE_LINESIZE; 3676 enum _SC_LEVEL3_CACHE_SIZE = _Anonymous_41._SC_LEVEL3_CACHE_SIZE; 3677 enum _SC_LEVEL3_CACHE_ASSOC = _Anonymous_41._SC_LEVEL3_CACHE_ASSOC; 3678 enum _SC_LEVEL3_CACHE_LINESIZE = _Anonymous_41._SC_LEVEL3_CACHE_LINESIZE; 3679 enum _SC_LEVEL4_CACHE_SIZE = _Anonymous_41._SC_LEVEL4_CACHE_SIZE; 3680 enum _SC_LEVEL4_CACHE_ASSOC = _Anonymous_41._SC_LEVEL4_CACHE_ASSOC; 3681 enum _SC_LEVEL4_CACHE_LINESIZE = _Anonymous_41._SC_LEVEL4_CACHE_LINESIZE; 3682 enum _SC_IPV6 = _Anonymous_41._SC_IPV6; 3683 enum _SC_RAW_SOCKETS = _Anonymous_41._SC_RAW_SOCKETS; 3684 enum _SC_V7_ILP32_OFF32 = _Anonymous_41._SC_V7_ILP32_OFF32; 3685 enum _SC_V7_ILP32_OFFBIG = _Anonymous_41._SC_V7_ILP32_OFFBIG; 3686 enum _SC_V7_LP64_OFF64 = _Anonymous_41._SC_V7_LP64_OFF64; 3687 enum _SC_V7_LPBIG_OFFBIG = _Anonymous_41._SC_V7_LPBIG_OFFBIG; 3688 enum _SC_SS_REPL_MAX = _Anonymous_41._SC_SS_REPL_MAX; 3689 enum _SC_TRACE_EVENT_NAME_MAX = _Anonymous_41._SC_TRACE_EVENT_NAME_MAX; 3690 enum _SC_TRACE_NAME_MAX = _Anonymous_41._SC_TRACE_NAME_MAX; 3691 enum _SC_TRACE_SYS_MAX = _Anonymous_41._SC_TRACE_SYS_MAX; 3692 enum _SC_TRACE_USER_EVENT_MAX = _Anonymous_41._SC_TRACE_USER_EVENT_MAX; 3693 enum _SC_XOPEN_STREAMS = _Anonymous_41._SC_XOPEN_STREAMS; 3694 enum _SC_THREAD_ROBUST_PRIO_INHERIT = _Anonymous_41._SC_THREAD_ROBUST_PRIO_INHERIT; 3695 enum _SC_THREAD_ROBUST_PRIO_PROTECT = _Anonymous_41._SC_THREAD_ROBUST_PRIO_PROTECT; 3696 enum _Anonymous_42 3697 { 3698 _PC_LINK_MAX = 0, 3699 _PC_MAX_CANON = 1, 3700 _PC_MAX_INPUT = 2, 3701 _PC_NAME_MAX = 3, 3702 _PC_PATH_MAX = 4, 3703 _PC_PIPE_BUF = 5, 3704 _PC_CHOWN_RESTRICTED = 6, 3705 _PC_NO_TRUNC = 7, 3706 _PC_VDISABLE = 8, 3707 _PC_SYNC_IO = 9, 3708 _PC_ASYNC_IO = 10, 3709 _PC_PRIO_IO = 11, 3710 _PC_SOCK_MAXBUF = 12, 3711 _PC_FILESIZEBITS = 13, 3712 _PC_REC_INCR_XFER_SIZE = 14, 3713 _PC_REC_MAX_XFER_SIZE = 15, 3714 _PC_REC_MIN_XFER_SIZE = 16, 3715 _PC_REC_XFER_ALIGN = 17, 3716 _PC_ALLOC_SIZE_MIN = 18, 3717 _PC_SYMLINK_MAX = 19, 3718 _PC_2_SYMLINKS = 20, 3719 } 3720 enum _PC_LINK_MAX = _Anonymous_42._PC_LINK_MAX; 3721 enum _PC_MAX_CANON = _Anonymous_42._PC_MAX_CANON; 3722 enum _PC_MAX_INPUT = _Anonymous_42._PC_MAX_INPUT; 3723 enum _PC_NAME_MAX = _Anonymous_42._PC_NAME_MAX; 3724 enum _PC_PATH_MAX = _Anonymous_42._PC_PATH_MAX; 3725 enum _PC_PIPE_BUF = _Anonymous_42._PC_PIPE_BUF; 3726 enum _PC_CHOWN_RESTRICTED = _Anonymous_42._PC_CHOWN_RESTRICTED; 3727 enum _PC_NO_TRUNC = _Anonymous_42._PC_NO_TRUNC; 3728 enum _PC_VDISABLE = _Anonymous_42._PC_VDISABLE; 3729 enum _PC_SYNC_IO = _Anonymous_42._PC_SYNC_IO; 3730 enum _PC_ASYNC_IO = _Anonymous_42._PC_ASYNC_IO; 3731 enum _PC_PRIO_IO = _Anonymous_42._PC_PRIO_IO; 3732 enum _PC_SOCK_MAXBUF = _Anonymous_42._PC_SOCK_MAXBUF; 3733 enum _PC_FILESIZEBITS = _Anonymous_42._PC_FILESIZEBITS; 3734 enum _PC_REC_INCR_XFER_SIZE = _Anonymous_42._PC_REC_INCR_XFER_SIZE; 3735 enum _PC_REC_MAX_XFER_SIZE = _Anonymous_42._PC_REC_MAX_XFER_SIZE; 3736 enum _PC_REC_MIN_XFER_SIZE = _Anonymous_42._PC_REC_MIN_XFER_SIZE; 3737 enum _PC_REC_XFER_ALIGN = _Anonymous_42._PC_REC_XFER_ALIGN; 3738 enum _PC_ALLOC_SIZE_MIN = _Anonymous_42._PC_ALLOC_SIZE_MIN; 3739 enum _PC_SYMLINK_MAX = _Anonymous_42._PC_SYMLINK_MAX; 3740 enum _PC_2_SYMLINKS = _Anonymous_42._PC_2_SYMLINKS; 3741 struct _G_fpos64_t 3742 { 3743 __off64_t __pos; 3744 __mbstate_t __state; 3745 } 3746 struct _G_fpos_t 3747 { 3748 __off_t __pos; 3749 __mbstate_t __state; 3750 } 3751 alias off_t = c_long; 3752 alias ssize_t = c_long; 3753 alias fpos_t = _G_fpos_t; 3754 int getentropy(void*, size_t) @nogc nothrow; 3755 int fdatasync(int) @nogc nothrow; 3756 extern __gshared _IO_FILE* stdin; 3757 extern __gshared _IO_FILE* stdout; 3758 extern __gshared _IO_FILE* stderr; 3759 int lockf(int, int, __off_t) @nogc nothrow; 3760 int remove(const(char)*) @nogc nothrow; 3761 int rename(const(char)*, const(char)*) @nogc nothrow; 3762 int renameat(int, const(char)*, int, const(char)*) @nogc nothrow; 3763 FILE* tmpfile() @nogc nothrow; 3764 char* tmpnam(char*) @nogc nothrow; 3765 char* tmpnam_r(char*) @nogc nothrow; 3766 char* tempnam(const(char)*, const(char)*) @nogc nothrow; 3767 int fclose(FILE*) @nogc nothrow; 3768 int fflush(FILE*) @nogc nothrow; 3769 int fflush_unlocked(FILE*) @nogc nothrow; 3770 FILE* fopen(const(char)*, const(char)*) @nogc nothrow; 3771 FILE* freopen(const(char)*, const(char)*, FILE*) @nogc nothrow; 3772 FILE* fdopen(int, const(char)*) @nogc nothrow; 3773 FILE* fmemopen(void*, size_t, const(char)*) @nogc nothrow; 3774 FILE* open_memstream(char**, size_t*) @nogc nothrow; 3775 void setbuf(FILE*, char*) @nogc nothrow; 3776 int setvbuf(FILE*, char*, int, size_t) @nogc nothrow; 3777 void setbuffer(FILE*, char*, size_t) @nogc nothrow; 3778 void setlinebuf(FILE*) @nogc nothrow; 3779 int fprintf(FILE*, const(char)*, ...) @nogc nothrow; 3780 int printf(const(char)*, ...) @nogc nothrow; 3781 int sprintf(char*, const(char)*, ...) @nogc nothrow; 3782 int vfprintf(FILE*, const(char)*, va_list) @nogc nothrow; 3783 int vprintf(const(char)*, va_list) @nogc nothrow; 3784 int vsprintf(char*, const(char)*, va_list) @nogc nothrow; 3785 int snprintf(char*, size_t, const(char)*, ...) @nogc nothrow; 3786 int vsnprintf(char*, size_t, const(char)*, va_list) @nogc nothrow; 3787 int vdprintf(int, const(char)*, va_list) @nogc nothrow; 3788 int dprintf(int, const(char)*, ...) @nogc nothrow; 3789 int fscanf(FILE*, const(char)*, ...) @nogc nothrow; 3790 int scanf(const(char)*, ...) @nogc nothrow; 3791 int sscanf(const(char)*, const(char)*, ...) @nogc nothrow; 3792 int vfscanf(FILE*, const(char)*, va_list) @nogc nothrow; 3793 int vscanf(const(char)*, va_list) @nogc nothrow; 3794 int vsscanf(const(char)*, const(char)*, va_list) @nogc nothrow; 3795 int fgetc(FILE*) @nogc nothrow; 3796 pragma(mangle, "getc") int getc_(FILE*) @nogc nothrow; 3797 int getchar() @nogc nothrow; 3798 c_long syscall(c_long, ...) @nogc nothrow; 3799 int getc_unlocked(FILE*) @nogc nothrow; 3800 int getchar_unlocked() @nogc nothrow; 3801 int fgetc_unlocked(FILE*) @nogc nothrow; 3802 int fputc(int, FILE*) @nogc nothrow; 3803 pragma(mangle, "putc") int putc_(int, FILE*) @nogc nothrow; 3804 int putchar(int) @nogc nothrow; 3805 int fputc_unlocked(int, FILE*) @nogc nothrow; 3806 int putc_unlocked(int, FILE*) @nogc nothrow; 3807 int putchar_unlocked(int) @nogc nothrow; 3808 int getw(FILE*) @nogc nothrow; 3809 int putw(int, FILE*) @nogc nothrow; 3810 char* fgets(char*, int, FILE*) @nogc nothrow; 3811 __ssize_t __getdelim(char**, size_t*, int, FILE*) @nogc nothrow; 3812 __ssize_t getdelim(char**, size_t*, int, FILE*) @nogc nothrow; 3813 __ssize_t getline(char**, size_t*, FILE*) @nogc nothrow; 3814 int fputs(const(char)*, FILE*) @nogc nothrow; 3815 int puts(const(char)*) @nogc nothrow; 3816 int ungetc(int, FILE*) @nogc nothrow; 3817 size_t fread(void*, size_t, size_t, FILE*) @nogc nothrow; 3818 size_t fwrite(const(void)*, size_t, size_t, FILE*) @nogc nothrow; 3819 size_t fread_unlocked(void*, size_t, size_t, FILE*) @nogc nothrow; 3820 size_t fwrite_unlocked(const(void)*, size_t, size_t, FILE*) @nogc nothrow; 3821 int fseek(FILE*, c_long, int) @nogc nothrow; 3822 c_long ftell(FILE*) @nogc nothrow; 3823 void rewind(FILE*) @nogc nothrow; 3824 int fseeko(FILE*, __off_t, int) @nogc nothrow; 3825 __off_t ftello(FILE*) @nogc nothrow; 3826 int fgetpos(FILE*, fpos_t*) @nogc nothrow; 3827 int fsetpos(FILE*, const(fpos_t)*) @nogc nothrow; 3828 void clearerr(FILE*) @nogc nothrow; 3829 int feof(FILE*) @nogc nothrow; 3830 int ferror(FILE*) @nogc nothrow; 3831 void clearerr_unlocked(FILE*) @nogc nothrow; 3832 int feof_unlocked(FILE*) @nogc nothrow; 3833 int ferror_unlocked(FILE*) @nogc nothrow; 3834 void perror(const(char)*) @nogc nothrow; 3835 int fileno(FILE*) @nogc nothrow; 3836 int fileno_unlocked(FILE*) @nogc nothrow; 3837 FILE* popen(const(char)*, const(char)*) @nogc nothrow; 3838 int pclose(FILE*) @nogc nothrow; 3839 char* ctermid(char*) @nogc nothrow; 3840 void flockfile(FILE*) @nogc nothrow; 3841 int ftrylockfile(FILE*) @nogc nothrow; 3842 void funlockfile(FILE*) @nogc nothrow; 3843 void* sbrk(intptr_t) @nogc nothrow; 3844 int brk(void*) @nogc nothrow; 3845 int ftruncate(int, __off_t) @nogc nothrow; 3846 struct div_t 3847 { 3848 int quot; 3849 int rem; 3850 } 3851 struct ldiv_t 3852 { 3853 c_long quot; 3854 c_long rem; 3855 } 3856 struct lldiv_t 3857 { 3858 long quot; 3859 long rem; 3860 } 3861 int truncate(const(char)*, __off_t) @nogc nothrow; 3862 size_t __ctype_get_mb_cur_max() @nogc nothrow; 3863 double atof(const(char)*) @nogc nothrow; 3864 int atoi(const(char)*) @nogc nothrow; 3865 c_long atol(const(char)*) @nogc nothrow; 3866 long atoll(const(char)*) @nogc nothrow; 3867 double strtod(const(char)*, char**) @nogc nothrow; 3868 float strtof(const(char)*, char**) @nogc nothrow; 3869 real strtold(const(char)*, char**) @nogc nothrow; 3870 c_long strtol(const(char)*, char**, int) @nogc nothrow; 3871 c_ulong strtoul(const(char)*, char**, int) @nogc nothrow; 3872 long strtoq(const(char)*, char**, int) @nogc nothrow; 3873 ulong strtouq(const(char)*, char**, int) @nogc nothrow; 3874 long strtoll(const(char)*, char**, int) @nogc nothrow; 3875 ulong strtoull(const(char)*, char**, int) @nogc nothrow; 3876 char* l64a(c_long) @nogc nothrow; 3877 c_long a64l(const(char)*) @nogc nothrow; 3878 c_long random() @nogc nothrow; 3879 void srandom(uint) @nogc nothrow; 3880 char* initstate(uint, char*, size_t) @nogc nothrow; 3881 char* setstate(char*) @nogc nothrow; 3882 struct random_data 3883 { 3884 int32_t* fptr; 3885 int32_t* rptr; 3886 int32_t* state; 3887 int rand_type; 3888 int rand_deg; 3889 int rand_sep; 3890 int32_t* end_ptr; 3891 } 3892 int random_r(random_data*, int32_t*) @nogc nothrow; 3893 int srandom_r(uint, random_data*) @nogc nothrow; 3894 int initstate_r(uint, char*, size_t, random_data*) @nogc nothrow; 3895 int setstate_r(char*, random_data*) @nogc nothrow; 3896 int rand() @nogc nothrow; 3897 void srand(uint) @nogc nothrow; 3898 int rand_r(uint*) @nogc nothrow; 3899 double drand48() @nogc nothrow; 3900 double erand48(ushort*) @nogc nothrow; 3901 c_long lrand48() @nogc nothrow; 3902 c_long nrand48(ushort*) @nogc nothrow; 3903 c_long mrand48() @nogc nothrow; 3904 c_long jrand48(ushort*) @nogc nothrow; 3905 void srand48(c_long) @nogc nothrow; 3906 ushort* seed48(ushort*) @nogc nothrow; 3907 void lcong48(ushort*) @nogc nothrow; 3908 struct drand48_data 3909 { 3910 ushort[3] __x; 3911 ushort[3] __old_x; 3912 ushort __c; 3913 ushort __init; 3914 ulong __a; 3915 } 3916 int drand48_r(drand48_data*, double*) @nogc nothrow; 3917 int erand48_r(ushort*, drand48_data*, double*) @nogc nothrow; 3918 int lrand48_r(drand48_data*, c_long*) @nogc nothrow; 3919 int nrand48_r(ushort*, drand48_data*, c_long*) @nogc nothrow; 3920 int mrand48_r(drand48_data*, c_long*) @nogc nothrow; 3921 int jrand48_r(ushort*, drand48_data*, c_long*) @nogc nothrow; 3922 int srand48_r(c_long, drand48_data*) @nogc nothrow; 3923 int seed48_r(ushort*, drand48_data*) @nogc nothrow; 3924 int lcong48_r(ushort*, drand48_data*) @nogc nothrow; 3925 void* malloc(size_t) @nogc nothrow; 3926 void* calloc(size_t, size_t) @nogc nothrow; 3927 void* realloc(void*, size_t) @nogc nothrow; 3928 void free(void*) @nogc nothrow; 3929 void* valloc(size_t) @nogc nothrow; 3930 int posix_memalign(void**, size_t, size_t) @nogc nothrow; 3931 void* aligned_alloc(size_t, size_t) @nogc nothrow; 3932 void abort() @nogc nothrow; 3933 int atexit(void function()) @nogc nothrow; 3934 int at_quick_exit(void function()) @nogc nothrow; 3935 int on_exit(void function(int, void*), void*) @nogc nothrow; 3936 void exit(int) @nogc nothrow; 3937 void quick_exit(int) @nogc nothrow; 3938 void _Exit(int) @nogc nothrow; 3939 char* getenv(const(char)*) @nogc nothrow; 3940 int putenv(char*) @nogc nothrow; 3941 int setenv(const(char)*, const(char)*, int) @nogc nothrow; 3942 int unsetenv(const(char)*) @nogc nothrow; 3943 int clearenv() @nogc nothrow; 3944 char* mktemp(char*) @nogc nothrow; 3945 int mkstemp(char*) @nogc nothrow; 3946 int mkstemps(char*, int) @nogc nothrow; 3947 char* mkdtemp(char*) @nogc nothrow; 3948 int system(const(char)*) @nogc nothrow; 3949 char* realpath(const(char)*, char*) @nogc nothrow; 3950 int getdtablesize() @nogc nothrow; 3951 alias __compar_fn_t = int function(const(void)*, const(void)*) @nogc nothrow; 3952 void* bsearch(const(void)*, const(void)*, size_t, size_t, __compar_fn_t) @nogc nothrow; 3953 void qsort(void*, size_t, size_t, __compar_fn_t) @nogc nothrow; 3954 int abs(int) @nogc nothrow; 3955 c_long labs(c_long) @nogc nothrow; 3956 long llabs(long) @nogc nothrow; 3957 div_t div(int, int) @nogc nothrow; 3958 ldiv_t ldiv(c_long, c_long) @nogc nothrow; 3959 lldiv_t lldiv(long, long) @nogc nothrow; 3960 char* ecvt(double, int, int*, int*) @nogc nothrow; 3961 char* fcvt(double, int, int*, int*) @nogc nothrow; 3962 char* gcvt(double, int, char*) @nogc nothrow; 3963 char* qecvt(real, int, int*, int*) @nogc nothrow; 3964 char* qfcvt(real, int, int*, int*) @nogc nothrow; 3965 char* qgcvt(real, int, char*) @nogc nothrow; 3966 int ecvt_r(double, int, int*, int*, char*, size_t) @nogc nothrow; 3967 int fcvt_r(double, int, int*, int*, char*, size_t) @nogc nothrow; 3968 int qecvt_r(real, int, int*, int*, char*, size_t) @nogc nothrow; 3969 int qfcvt_r(real, int, int*, int*, char*, size_t) @nogc nothrow; 3970 int mblen(const(char)*, size_t) @nogc nothrow; 3971 int mbtowc(wchar_t*, const(char)*, size_t) @nogc nothrow; 3972 int wctomb(char*, wchar_t) @nogc nothrow; 3973 size_t mbstowcs(wchar_t*, const(char)*, size_t) @nogc nothrow; 3974 size_t wcstombs(char*, const(wchar_t)*, size_t) @nogc nothrow; 3975 int rpmatch(const(char)*) @nogc nothrow; 3976 int getsubopt(char**, char**, char**) @nogc nothrow; 3977 int getloadavg(double*, int) @nogc nothrow; 3978 int getpagesize() @nogc nothrow; 3979 void* memcpy(void*, const(void)*, size_t) @nogc nothrow; 3980 void* memmove(void*, const(void)*, size_t) @nogc nothrow; 3981 void* memccpy(void*, const(void)*, int, size_t) @nogc nothrow; 3982 void* memset(void*, int, size_t) @nogc nothrow; 3983 int memcmp(const(void)*, const(void)*, size_t) @nogc nothrow; 3984 void* memchr(const(void)*, int, size_t) @nogc nothrow; 3985 char* strcpy(char*, const(char)*) @nogc nothrow; 3986 char* strncpy(char*, const(char)*, size_t) @nogc nothrow; 3987 char* strcat(char*, const(char)*) @nogc nothrow; 3988 char* strncat(char*, const(char)*, size_t) @nogc nothrow; 3989 int strcmp(const(char)*, const(char)*) @nogc nothrow; 3990 int strncmp(const(char)*, const(char)*, size_t) @nogc nothrow; 3991 int strcoll(const(char)*, const(char)*) @nogc nothrow; 3992 c_ulong strxfrm(char*, const(char)*, size_t) @nogc nothrow; 3993 int strcoll_l(const(char)*, const(char)*, locale_t) @nogc nothrow; 3994 size_t strxfrm_l(char*, const(char)*, size_t, locale_t) @nogc nothrow; 3995 char* strdup(const(char)*) @nogc nothrow; 3996 char* strndup(const(char)*, size_t) @nogc nothrow; 3997 char* strchr(const(char)*, int) @nogc nothrow; 3998 char* strrchr(const(char)*, int) @nogc nothrow; 3999 c_ulong strcspn(const(char)*, const(char)*) @nogc nothrow; 4000 c_ulong strspn(const(char)*, const(char)*) @nogc nothrow; 4001 char* strpbrk(const(char)*, const(char)*) @nogc nothrow; 4002 char* strstr(const(char)*, const(char)*) @nogc nothrow; 4003 char* strtok(char*, const(char)*) @nogc nothrow; 4004 char* __strtok_r(char*, const(char)*, char**) @nogc nothrow; 4005 char* strtok_r(char*, const(char)*, char**) @nogc nothrow; 4006 c_ulong strlen(const(char)*) @nogc nothrow; 4007 size_t strnlen(const(char)*, size_t) @nogc nothrow; 4008 char* strerror(int) @nogc nothrow; 4009 int strerror_r(int, char*, size_t) @nogc nothrow; 4010 char* strerror_l(int, locale_t) @nogc nothrow; 4011 void explicit_bzero(void*, size_t) @nogc nothrow; 4012 char* strsep(char**, const(char)*) @nogc nothrow; 4013 char* strsignal(int) @nogc nothrow; 4014 char* __stpcpy(char*, const(char)*) @nogc nothrow; 4015 char* stpcpy(char*, const(char)*) @nogc nothrow; 4016 char* __stpncpy(char*, const(char)*, size_t) @nogc nothrow; 4017 char* stpncpy(char*, const(char)*, size_t) @nogc nothrow; 4018 void sync() @nogc nothrow; 4019 int bcmp(const(void)*, const(void)*, size_t) @nogc nothrow; 4020 void bcopy(const(void)*, void*, size_t) @nogc nothrow; 4021 void bzero(void*, size_t) @nogc nothrow; 4022 char* index(const(char)*, int) @nogc nothrow; 4023 char* rindex(const(char)*, int) @nogc nothrow; 4024 int ffs(int) @nogc nothrow; 4025 int ffsl(c_long) @nogc nothrow; 4026 int ffsll(long) @nogc nothrow; 4027 int strcasecmp(const(char)*, const(char)*) @nogc nothrow; 4028 int strncasecmp(const(char)*, const(char)*, size_t) @nogc nothrow; 4029 int strcasecmp_l(const(char)*, const(char)*, locale_t) @nogc nothrow; 4030 int strncasecmp_l(const(char)*, const(char)*, size_t, locale_t) @nogc nothrow; 4031 c_long gethostid() @nogc nothrow; 4032 int fsync(int) @nogc nothrow; 4033 struct sigevent; 4034 clock_t clock() @nogc nothrow; 4035 time_t time(time_t*) @nogc nothrow; 4036 double difftime(time_t, time_t) @nogc nothrow; 4037 time_t mktime(tm*) @nogc nothrow; 4038 size_t strftime(char*, size_t, const(char)*, const(tm)*) @nogc nothrow; 4039 size_t strftime_l(char*, size_t, const(char)*, const(tm)*, locale_t) @nogc nothrow; 4040 tm* gmtime(const(time_t)*) @nogc nothrow; 4041 tm* localtime(const(time_t)*) @nogc nothrow; 4042 tm* gmtime_r(const(time_t)*, tm*) @nogc nothrow; 4043 tm* localtime_r(const(time_t)*, tm*) @nogc nothrow; 4044 char* asctime(const(tm)*) @nogc nothrow; 4045 char* ctime(const(time_t)*) @nogc nothrow; 4046 char* asctime_r(const(tm)*, char*) @nogc nothrow; 4047 char* ctime_r(const(time_t)*, char*) @nogc nothrow; 4048 extern __gshared char*[2] __tzname; 4049 extern __gshared int __daylight; 4050 extern __gshared c_long __timezone; 4051 extern __gshared char*[2] tzname; 4052 void tzset() @nogc nothrow; 4053 extern __gshared int daylight; 4054 extern __gshared c_long timezone; 4055 int stime(const(time_t)*) @nogc nothrow; 4056 char* getpass(const(char)*) @nogc nothrow; 4057 time_t timegm(tm*) @nogc nothrow; 4058 time_t timelocal(tm*) @nogc nothrow; 4059 int dysize(int) @nogc nothrow; 4060 int nanosleep(const(timespec)*, timespec*) @nogc nothrow; 4061 int clock_getres(clockid_t, timespec*) @nogc nothrow; 4062 int clock_gettime(clockid_t, timespec*) @nogc nothrow; 4063 int clock_settime(clockid_t, const(timespec)*) @nogc nothrow; 4064 int clock_nanosleep(clockid_t, int, const(timespec)*, timespec*) @nogc nothrow; 4065 int clock_getcpuclockid(pid_t, clockid_t*) @nogc nothrow; 4066 int timer_create(clockid_t, sigevent*, timer_t*) @nogc nothrow; 4067 int timer_delete(timer_t) @nogc nothrow; 4068 int timer_settime(timer_t, int, const(itimerspec)*, itimerspec*) @nogc nothrow; 4069 int timer_gettime(timer_t, itimerspec*) @nogc nothrow; 4070 int timer_getoverrun(timer_t) @nogc nothrow; 4071 int timespec_get(timespec*, int) @nogc nothrow; 4072 int chroot(const(char)*) @nogc nothrow; 4073 int daemon(int, int) @nogc nothrow; 4074 void setusershell() @nogc nothrow; 4075 void endusershell() @nogc nothrow; 4076 char* getusershell() @nogc nothrow; 4077 int acct(const(char)*) @nogc nothrow; 4078 int profil(ushort*, size_t, size_t, uint) @nogc nothrow; 4079 alias useconds_t = uint; 4080 int revoke(const(char)*) @nogc nothrow; 4081 alias socklen_t = uint; 4082 int vhangup() @nogc nothrow; 4083 int access(const(char)*, int) @nogc nothrow; 4084 int faccessat(int, const(char)*, int, int) @nogc nothrow; 4085 int setdomainname(const(char)*, size_t) @nogc nothrow; 4086 __off_t lseek(int, __off_t, int) @nogc nothrow; 4087 int close(int) @nogc nothrow; 4088 ssize_t read(int, void*, size_t) @nogc nothrow; 4089 ssize_t write(int, const(void)*, size_t) @nogc nothrow; 4090 ssize_t pread(int, void*, size_t, __off_t) @nogc nothrow; 4091 ssize_t pwrite(int, const(void)*, size_t, __off_t) @nogc nothrow; 4092 int pipe(int*) @nogc nothrow; 4093 uint alarm(uint) @nogc nothrow; 4094 uint sleep(uint) @nogc nothrow; 4095 __useconds_t ualarm(__useconds_t, __useconds_t) @nogc nothrow; 4096 int usleep(__useconds_t) @nogc nothrow; 4097 int pause() @nogc nothrow; 4098 int chown(const(char)*, __uid_t, __gid_t) @nogc nothrow; 4099 int fchown(int, __uid_t, __gid_t) @nogc nothrow; 4100 int lchown(const(char)*, __uid_t, __gid_t) @nogc nothrow; 4101 int fchownat(int, const(char)*, __uid_t, __gid_t, int) @nogc nothrow; 4102 int chdir(const(char)*) @nogc nothrow; 4103 int fchdir(int) @nogc nothrow; 4104 char* getcwd(char*, size_t) @nogc nothrow; 4105 char* getwd(char*) @nogc nothrow; 4106 int dup(int) @nogc nothrow; 4107 int dup2(int, int) @nogc nothrow; 4108 extern __gshared char** __environ; 4109 int execve(const(char)*, char**, char**) @nogc nothrow; 4110 int fexecve(int, char**, char**) @nogc nothrow; 4111 int execv(const(char)*, char**) @nogc nothrow; 4112 int execle(const(char)*, const(char)*, ...) @nogc nothrow; 4113 int execl(const(char)*, const(char)*, ...) @nogc nothrow; 4114 int execvp(const(char)*, char**) @nogc nothrow; 4115 int execlp(const(char)*, const(char)*, ...) @nogc nothrow; 4116 int nice(int) @nogc nothrow; 4117 void _exit(int) @nogc nothrow; 4118 c_long pathconf(const(char)*, int) @nogc nothrow; 4119 c_long fpathconf(int, int) @nogc nothrow; 4120 c_long sysconf(int) @nogc nothrow; 4121 size_t confstr(int, char*, size_t) @nogc nothrow; 4122 __pid_t getpid() @nogc nothrow; 4123 __pid_t getppid() @nogc nothrow; 4124 __pid_t getpgrp() @nogc nothrow; 4125 __pid_t __getpgid(__pid_t) @nogc nothrow; 4126 __pid_t getpgid(__pid_t) @nogc nothrow; 4127 int setpgid(__pid_t, __pid_t) @nogc nothrow; 4128 int setpgrp() @nogc nothrow; 4129 __pid_t setsid() @nogc nothrow; 4130 __pid_t getsid(__pid_t) @nogc nothrow; 4131 __uid_t getuid() @nogc nothrow; 4132 __uid_t geteuid() @nogc nothrow; 4133 __gid_t getgid() @nogc nothrow; 4134 __gid_t getegid() @nogc nothrow; 4135 int getgroups(int, __gid_t*) @nogc nothrow; 4136 int setuid(__uid_t) @nogc nothrow; 4137 int setreuid(__uid_t, __uid_t) @nogc nothrow; 4138 int seteuid(__uid_t) @nogc nothrow; 4139 int setgid(__gid_t) @nogc nothrow; 4140 int setregid(__gid_t, __gid_t) @nogc nothrow; 4141 int setegid(__gid_t) @nogc nothrow; 4142 __pid_t fork() @nogc nothrow; 4143 int vfork() @nogc nothrow; 4144 char* ttyname(int) @nogc nothrow; 4145 int ttyname_r(int, char*, size_t) @nogc nothrow; 4146 int isatty(int) @nogc nothrow; 4147 int ttyslot() @nogc nothrow; 4148 int link(const(char)*, const(char)*) @nogc nothrow; 4149 int linkat(int, const(char)*, int, const(char)*, int) @nogc nothrow; 4150 int symlink(const(char)*, const(char)*) @nogc nothrow; 4151 ssize_t readlink(const(char)*, char*, size_t) @nogc nothrow; 4152 int symlinkat(const(char)*, int, const(char)*) @nogc nothrow; 4153 ssize_t readlinkat(int, const(char)*, char*, size_t) @nogc nothrow; 4154 int unlink(const(char)*) @nogc nothrow; 4155 int unlinkat(int, const(char)*, int) @nogc nothrow; 4156 int rmdir(const(char)*) @nogc nothrow; 4157 __pid_t tcgetpgrp(int) @nogc nothrow; 4158 int tcsetpgrp(int, __pid_t) @nogc nothrow; 4159 char* getlogin() @nogc nothrow; 4160 int getlogin_r(char*, size_t) @nogc nothrow; 4161 int setlogin(const(char)*) @nogc nothrow; 4162 int gethostname(char*, size_t) @nogc nothrow; 4163 int sethostname(const(char)*, size_t) @nogc nothrow; 4164 int sethostid(c_long) @nogc nothrow; 4165 int getdomainname(char*, size_t) @nogc nothrow; 4166 }