HLA Standard Library Reference Manual
1.2 Passing Parameters by Reference and by Value 2
1.3 Passing Byte Parameters on the Stack 3
1.4 Passing Word Parameters on the Stack 5
1.5 Passing DWord Parameters on the Stack 5
1.6 Passing QWord Parameters on the Stack 6
2.2 Retrieving the Command Line 9
2.3 Argument Count and Item 10
5.1 Conversion Format Control 35
5.3 Blob Internal Representation 36
5.4 Declaring Blob Variables 36
5.4.1 Initializing and Allocating Blob Variables 37
5.5 Blob Accessor Functions 39
5.6 Blob Assignment Functions 42
5.7 Blob Extraction Functions 44
5.8 Blob Comparison Functions 45
5.9 Blob Scanning Functions 45
5.10 Blob Concatenation Functions 48
5.11 Blob Conversion Functions 51
5.12 General Blob I/O Functions 53
7.1 The Console Module Module 73
7.2 Cursor Positioning Functions 73
7.3 Console Clearing Functions 76
8.1 Buffer vs. String Conversions 83
8.2 Conversion Format Control 84
8.3 Hexadecimal Conversions 91
8.3.2 Hexadecimal Numeric Size Functions 92
8.3.2.1 Fixed Size Hexadecimal Size Functions 92
8.3.2.2 Standard Hexadecimal Size Functions 96
8.3.3 Hexadecimal Numeric to Buffer Conversions 101
8.3.3.1 Fixed Length Hexadecimal Numeric to Buffer Conversions 101
8.3.3.2 Variable Length Hexadecimal Numeric to Buffer Conversions 108
8.3.4 Hexadecimal Numeric to String Conversions 115
8.3.4.1 Fixed-Length Numeric to Hexadecimal String Conversions 115
8.3.4.2 Variable-Length Numeric to Hexadecimal String Conversions 130
8.3.5 Hexadecimal Buffer to Numeric Conversions 146
8.3.6 Hexadecimal String to Numeric Conversions 151
8.4 Signed Integer Conversions 157
8.4.2 Integer Size Calculations 157
8.4.3 Signed Integer Numeric to Buffer Conversions 161
8.4.4 Integer Numeric to String Conversions 167
8.4.5 Signed Integer String to Numeric Conversions 182
8.5 Unsigned Integer Conversions 192
8.5.2 Unsigned Integer Size Calculations 193
8.5.3 Unsigned Integer Numeric to Buffer Conversions 197
8.5.4 Unsigned Integer Numeric to String Conversions 203
8.5.5 Unsigned Integer String to Numeric Conversions 219
8.6 Floating Point Conversions 229
8.6.1 Exponential Floating-Point Conversions 229
8.6.2 Floating Point Numeric to Buffer Conversions, Exponential Form 230
8.6.3 Floating Point Numeric to String Conversions, Exponential Form 232
8.6.4 Floating Point Numeric to Character Conversions, Decimal Form 236
8.6.5 Floating-Point Numeric to String Conversions, Decimal Form 240
8.6.6 Floating Point String/Buffer to Numeric Conversions 244
11.7 Reading the Current System Date 289
11.8 Date Output and String Conversion 290
11.9.1 Date Class Methods/Procedures 292
13.1 The Exceptions Module 303
14.1 File Class Methods/Procedures 313
14.3 General File Operations 314
14.4 Opening and Closing Files 315
14.7 Character, Character Set, and String Output 318
14.8 Hexadecimal Numeric Output 319
14.9 Signed Integer Numeric Output 323
14.10 Unsigned Integer Numeric Output 326
14.11 Floating-Point Numeric Output Using Scientific Notation 329
14.12 Floating-Point Numeric Output Using Decimal Notation 330
14.15 Character and String Input 333
14.16 Signed Integer Input 334
14.17 Unsigned Integer Input 336
15.1 Conversion Format Control 341
15.2 General File I/O Functions 341
15.3.1 Miscellaneous Output Routines 354
15.3.2 Character, String, and Character Set Output Routines 358
15.3.3 Hexadecimal Output Routines 365
15.3.4 Signed Integer Output Routines 388
15.3.5 Unsigned Integer Output Routines 402
15.3.6 Floating Point Output Routines 416
15.3.6.1 Real Output Using Scientific Notation 416
15.3.6.2 Real Output Using Decimal Notation 420
15.3.7 Generic File Output Routine 424
15.4.1 General File Input Routines 425
15.4.2 Character and String Input Routines 428
15.4.3 Signed Integer Input Routines 430
15.4.4 Unsigned Integer Input Routines 434
15.4.5 Hexadecimal Input Routines 437
16.1 Filename and Pathname String Functions 445
16.2 Directory and File Predicates 461
17.2 Classification Macros 469
17.3 String to Integer Macros 470
17.4 Label Generation Macro 470
17.5 Procedure Overloading Macro 470
19.2 List_t Class Function Types 489
19.3 Creating New List Class Types 490
19.4 List Procedures, Methods, and Iterators 491
19.5 List Constructor and Destructor 492
19.6.0.1 Adding Nodes to a List 493
19.7 Removing Nodes From a List 495
20.3 64-Bit Arithmetic and Logical Operations 503
20.4 128-Bit Arithmetic and Logical Operations 511
20.5 Transcendental, Logarithmic, and Other Floating-Point Operations 520
24.2 An Introduction to Pattern Matching (a tutorial) 563
24.3 Pattern Matching Functions Versus User Code 567
24.4 Register and Stack Usage in Pattern Matching Statements 568
24.5 Nesting Pattern Matching Statements 570
24.6 Cleanly Nesting Patterns 574
24.9 Lazy / Eager Evaluation and Pattern Matching Performance 579
24.11 Pattern Matching Statements 585
24.13 Pattern Matching Macros 587
24.14 Character Set Matching Functions 590
24.15 Character Matching Functions 595
24.16 Case Insensitive Character Matching Routines 600
24.17 String Extraction Functions 606
24.18 Whitespace and End of String Matching Functions 607
26.2 Socket Initialization and Cleanup 625
26.3 Generic Socket Functions 625
26.4 Low-Level BSD-Style Socket Functions 626
26.7 Client/Server Applications Using the Socket Classes 635
26.8 A Simple Server Application 635
26.9 A Simple Client Application 638
26.10 Client/Server Communication 638
26.11 General Socket Class Operations 639
26.12 Miscellaneous Output 642
26.13 Character, Character Set, and String Output 643
26.14 Hexadecimal Numeric Output 645
26.15 Signed Integer Numeric Output 649
26.16 Unsigned Integer Numeric Output 652
26.17 Floating-Point Numeric Output Using Scientific Notation 654
26.18 Floating-Point Numeric Output Using Decimal Notation 656
26.21 Character and String Input 659
26.22 Signed Integer Input 660
26.23 Unsigned Integer Input 661
27.1 Conversion Format Control 667
27.2 File I/O Routines and the Standard Error Handle 667
27.3 Standard Error Routines 667
27.4 Miscellaneous Output Routines 668
27.6 Character, String, and Character Set Output Routines 670
27.7 Hexadecimal Output Routines 676
27.8 Signed Integer Output Routines 698
27.9 Unsigned Integer Output Routines 711
27.10 Floating Point Output Routines 725
27.10.1 Real Output Using Scientific Notation 725
28.1 Conversion Format Control 735
28.2 File I/O Routines and the Standard Output Handle 735
28.3 Standard Input Routines 735
28.4 General Standard Input Routines 736
28.5 Character and String Input Routines 738
28.6 Hexadecimal Input Routines 739
28.7 Signed Integer Input Routines 742
29.1 Conversion Format Control 749
29.2 File I/O Routines and the Standard Output Handle 749
29.3 Standard Output Routines 749
29.4 Miscellaneous Output Routines 750
29.6 Character, String, and Character Set Output Routines 752
29.7 Hexadecimal Output Routines 759
29.8 Signed Integer Output Routines 781
29.9 Unsigned Integer Output Routines 794
29.10 Floating Point Output Routines 807
29.10.1 Real Output Using Scientific Notation 807
30.1 Introduction to the HLA STL 817
30.2 Type Declarations Created by a Template 818
30.3 Template Objects are Classes 818
30.4.2 Compile-Time Traits 820
30.4.4.1 stl.isContainer_c Trait 821
30.4.4.2 stl.isRandomAccess_c Trait 822
30.4.4.3 stl.isArray_c Trait 822
30.4.4.4 stl.isVector_c Trait 822
30.4.4.5 stl.isDeque_c Trait 822
30.4.4.6 stl.isList_c Trait 822
30.4.4.7 stl.isTable_c Trait 822
30.4.4.8 stl.supportsOutput_c Trait 822
30.4.4.9 stl.supportsCompare_c Trait 822
30.4.4.10 stl.supportsInsert_c Trait 822
30.4.4.11 stl.supportsRemove_c Trait 822
30.4.4.12 stl.supportsAppend_c Trait 822
30.4.4.13 stl.supportsPrepend_c Trait 822
30.4.4.14 stl.supportsForEach_c and supportsrForeach_c Traits 823
30.4.4.15 stl.supportsCursor_c Trait 823
30.4.4.16 stl.supportsSearch_c Trait 823
30.4.4.17 stl.supportsElementSwap_c Trait 823
30.4.4.18 stl.supportsObjSwap_c Trait 823
30.4.4.19 stl.elementsAreObjects_c Trait 823
30.4.4.20 stl.fastInsert_c Trait 823
30.4.4.21 stl.fastRemove_c Trait 823
30.4.4.22 stl.fastAppend_c Trait 823
30.4.4.23 stl.fastPrepend_c Trait 823
30.4.4.24 stl.fastSwap_c Trait 824
30.4.4.25 stl.fastSearch_c Trait 824
30.4.4.26 stl.fastElementSwap_c Trait 824
31.1 The HLA String Data Type 825
31.2 String Allocation Macros and Functions 827
31.3 String Length Calculations 828
31.6 String Insertion and Deletion Functions 836
31.7 String Comparison Functions 844
31.8 String Searching Functions 850
31.9 Character Set Searching Functions 863
31.10 String Parsing Functions 869
31.11 String Formatting Functions 885
31.12 String Conversion Functions 897
31.13 String Concatentation Functions 904
31.14 String Value Concatentation Functions 911
31.14.2 Character, String, and Character Set Concatenation Routines 912
31.14.3 Hexadecimal Concatenation Routines 917
31.14.4 Signed Integer Concatenation Routines 932
31.14.5 Unsigned Integer Concatenation Routines 942
31.15 Floating-Point Concatenation Routines 952
31.15.1 Real to String Output Using Scientific Notation 953
35.6 Reading the Current System Time 986
35.7 Time String Conversions and Output 987
35.9 Time Class Methods/Procedures 988