diff options
-rw-r--r-- | doc/ChangeLog | 5 | ||||
-rw-r--r-- | doc/gawk.info | 228 | ||||
-rw-r--r-- | doc/gawk.texi | 43 | ||||
-rw-r--r-- | doc/gawktexi.in | 43 |
4 files changed, 216 insertions, 103 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog index dfc3bb03..974fe3ab 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,8 @@ +2017-11-17 Arnold D. Robbins <arnold@skeeve.com> + + * gawktexi.in(Changes from API V1): Give a list of things + that changed, with xrefs. Thanks to Andrew Schorr for the push. + 2017-11-09 Arnold D. Robbins <arnold@skeeve.com> * gawktexi.in (For Statement): Small clarification in the text. diff --git a/doc/gawk.info b/doc/gawk.info index 6bea9c5f..3d76c64c 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -25960,7 +25960,33 @@ current version of 'gawk'. the API remains source-code-compatible with the previous API. The major differences are the additional members in the 'awk_ext_func_t' structure, and the addition of the third argument to the C -implementation function. +implementation function (*note Extension Functions::). + + Here is a list of individual features that changed from version 1 to +version 2 of the API: + + * Numeric values can now have MPFR/MPZ variants (*note General Data + Types::). + + * There are new string types: 'AWK_REGEX' and 'AWK_STRNUM' (*note + General Data Types::). + + * The 'ezalloc()' macro is new (*note Memory Allocation Functions::). + + * The 'awk_ext_func_t' structure changed. Instead of + 'num_expected_args', it now has 'max_expected' and 'min_required' + (*note Extension Functions::). + + * For 'get_record()', an input parser can now specify field widths + (*note Input Parsers::). + + * Extensions can now produce nonfatal error messages (*note Printing + Messages::). + + * When flattening an array, you can now specify the index and value + types (*note Array Functions::). + + * The 'get_file()' API is new (*note Redirection API::). File: gawk.info, Node: Finding Extensions, Next: Extension Example, Prev: Extension API Description, Up: Dynamic Extensions @@ -36362,105 +36388,105 @@ Node: Extension GMP/MPFR Versioning1050299 Node: Extension API Informational Variables1051927 Node: Extension API Boilerplate1053000 Node: Changes from API V11056974 -Node: Finding Extensions1057634 -Node: Extension Example1058193 -Node: Internal File Description1058991 -Node: Internal File Ops1063071 -Ref: Internal File Ops-Footnote-11074471 -Node: Using Internal File Ops1074611 -Ref: Using Internal File Ops-Footnote-11076994 -Node: Extension Samples1077268 -Node: Extension Sample File Functions1078797 -Node: Extension Sample Fnmatch1086446 -Node: Extension Sample Fork1087933 -Node: Extension Sample Inplace1089151 -Node: Extension Sample Ord1092368 -Node: Extension Sample Readdir1093204 -Ref: table-readdir-file-types1094093 -Node: Extension Sample Revout1094898 -Node: Extension Sample Rev2way1095487 -Node: Extension Sample Read write array1096227 -Node: Extension Sample Readfile1098169 -Node: Extension Sample Time1099264 -Node: Extension Sample API Tests1100612 -Node: gawkextlib1101104 -Node: Extension summary1103560 -Node: Extension Exercises1107262 -Node: Language History1108760 -Node: V7/SVR3.11110416 -Node: SVR41112568 -Node: POSIX1114002 -Node: BTL1115382 -Node: POSIX/GNU1116111 -Node: Feature History1121889 -Node: Common Extensions1137748 -Node: Ranges and Locales1139031 -Ref: Ranges and Locales-Footnote-11143647 -Ref: Ranges and Locales-Footnote-21143674 -Ref: Ranges and Locales-Footnote-31143909 -Node: Contributors1144130 -Node: History summary1150075 -Node: Installation1151455 -Node: Gawk Distribution1152399 -Node: Getting1152883 -Node: Extracting1153846 -Node: Distribution contents1155484 -Node: Unix Installation1161964 -Node: Quick Installation1162646 -Node: Shell Startup Files1165060 -Node: Additional Configuration Options1166149 -Node: Configuration Philosophy1168138 -Node: Non-Unix Installation1170507 -Node: PC Installation1170967 -Node: PC Binary Installation1171805 -Node: PC Compiling1172240 -Node: PC Using1173357 -Node: Cygwin1176402 -Node: MSYS1177172 -Node: VMS Installation1177673 -Node: VMS Compilation1178464 -Ref: VMS Compilation-Footnote-11179693 -Node: VMS Dynamic Extensions1179751 -Node: VMS Installation Details1181436 -Node: VMS Running1183689 -Node: VMS GNV1187968 -Node: VMS Old Gawk1188703 -Node: Bugs1189174 -Node: Bug address1189837 -Node: Usenet1192629 -Node: Maintainers1193406 -Node: Other Versions1194667 -Node: Installation summary1201429 -Node: Notes1202631 -Node: Compatibility Mode1203496 -Node: Additions1204278 -Node: Accessing The Source1205203 -Node: Adding Code1206640 -Node: New Ports1212859 -Node: Derived Files1217347 -Ref: Derived Files-Footnote-11222993 -Ref: Derived Files-Footnote-21223028 -Ref: Derived Files-Footnote-31223626 -Node: Future Extensions1223740 -Node: Implementation Limitations1224398 -Node: Extension Design1225581 -Node: Old Extension Problems1226735 -Ref: Old Extension Problems-Footnote-11228253 -Node: Extension New Mechanism Goals1228310 -Ref: Extension New Mechanism Goals-Footnote-11231674 -Node: Extension Other Design Decisions1231863 -Node: Extension Future Growth1233976 -Node: Old Extension Mechanism1234812 -Node: Notes summary1236575 -Node: Basic Concepts1237757 -Node: Basic High Level1238438 -Ref: figure-general-flow1238720 -Ref: figure-process-flow1239405 -Ref: Basic High Level-Footnote-11242706 -Node: Basic Data Typing1242891 -Node: Glossary1246219 -Node: Copying1278055 -Node: GNU Free Documentation License1315594 -Node: Index1340712 +Node: Finding Extensions1058546 +Node: Extension Example1059105 +Node: Internal File Description1059903 +Node: Internal File Ops1063983 +Ref: Internal File Ops-Footnote-11075383 +Node: Using Internal File Ops1075523 +Ref: Using Internal File Ops-Footnote-11077906 +Node: Extension Samples1078180 +Node: Extension Sample File Functions1079709 +Node: Extension Sample Fnmatch1087358 +Node: Extension Sample Fork1088845 +Node: Extension Sample Inplace1090063 +Node: Extension Sample Ord1093280 +Node: Extension Sample Readdir1094116 +Ref: table-readdir-file-types1095005 +Node: Extension Sample Revout1095810 +Node: Extension Sample Rev2way1096399 +Node: Extension Sample Read write array1097139 +Node: Extension Sample Readfile1099081 +Node: Extension Sample Time1100176 +Node: Extension Sample API Tests1101524 +Node: gawkextlib1102016 +Node: Extension summary1104472 +Node: Extension Exercises1108174 +Node: Language History1109672 +Node: V7/SVR3.11111328 +Node: SVR41113480 +Node: POSIX1114914 +Node: BTL1116294 +Node: POSIX/GNU1117023 +Node: Feature History1122801 +Node: Common Extensions1138660 +Node: Ranges and Locales1139943 +Ref: Ranges and Locales-Footnote-11144559 +Ref: Ranges and Locales-Footnote-21144586 +Ref: Ranges and Locales-Footnote-31144821 +Node: Contributors1145042 +Node: History summary1150987 +Node: Installation1152367 +Node: Gawk Distribution1153311 +Node: Getting1153795 +Node: Extracting1154758 +Node: Distribution contents1156396 +Node: Unix Installation1162876 +Node: Quick Installation1163558 +Node: Shell Startup Files1165972 +Node: Additional Configuration Options1167061 +Node: Configuration Philosophy1169050 +Node: Non-Unix Installation1171419 +Node: PC Installation1171879 +Node: PC Binary Installation1172717 +Node: PC Compiling1173152 +Node: PC Using1174269 +Node: Cygwin1177314 +Node: MSYS1178084 +Node: VMS Installation1178585 +Node: VMS Compilation1179376 +Ref: VMS Compilation-Footnote-11180605 +Node: VMS Dynamic Extensions1180663 +Node: VMS Installation Details1182348 +Node: VMS Running1184601 +Node: VMS GNV1188880 +Node: VMS Old Gawk1189615 +Node: Bugs1190086 +Node: Bug address1190749 +Node: Usenet1193541 +Node: Maintainers1194318 +Node: Other Versions1195579 +Node: Installation summary1202341 +Node: Notes1203543 +Node: Compatibility Mode1204408 +Node: Additions1205190 +Node: Accessing The Source1206115 +Node: Adding Code1207552 +Node: New Ports1213771 +Node: Derived Files1218259 +Ref: Derived Files-Footnote-11223905 +Ref: Derived Files-Footnote-21223940 +Ref: Derived Files-Footnote-31224538 +Node: Future Extensions1224652 +Node: Implementation Limitations1225310 +Node: Extension Design1226493 +Node: Old Extension Problems1227647 +Ref: Old Extension Problems-Footnote-11229165 +Node: Extension New Mechanism Goals1229222 +Ref: Extension New Mechanism Goals-Footnote-11232586 +Node: Extension Other Design Decisions1232775 +Node: Extension Future Growth1234888 +Node: Old Extension Mechanism1235724 +Node: Notes summary1237487 +Node: Basic Concepts1238669 +Node: Basic High Level1239350 +Ref: figure-general-flow1239632 +Ref: figure-process-flow1240317 +Ref: Basic High Level-Footnote-11243618 +Node: Basic Data Typing1243803 +Node: Glossary1247131 +Node: Copying1278967 +Node: GNU Free Documentation License1316506 +Node: Index1341624 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index 55de34ca..78a21b85 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -35330,7 +35330,48 @@ the current version of @command{gawk}. Fortunately, at the possible expense of some compile-time warnings, the API remains source-code--compatible with the previous API. The major differences are the additional members in the @code{awk_ext_func_t} structure, and the -addition of the third argument to the C implementation function. +addition of the third argument to the C implementation function +(@pxref{Extension Functions}). + +Here is a list of individual features that changed from version 1 to +version 2 of the API: + +@itemize @bullet + +@item +Numeric values can now have MPFR/MPZ variants +(@pxref{General Data Types}). + +@item +There are new string types: @code{AWK_REGEX} and @code{AWK_STRNUM} +(@pxref{General Data Types}). + +@item +The @code{ezalloc()} macro is new +(@pxref{Memory Allocation Functions}). + +@item +The @code{awk_ext_func_t} structure changed. Instead of +@code{num_expected_args}, it now has @code{max_expected} and +@code{min_required} +(@pxref{Extension Functions}). + +@item +For @code{get_record()}, an input parser can now specify field widths +(@pxref{Input Parsers}). + +@item +Extensions can now produce nonfatal error messages +(@pxref{Printing Messages}). + +@item +When flattening an array, you can now specify the index and value types +(@pxref{Array Functions}). + +@item +The @code{get_file()} API is new +(@pxref{Redirection API}). +@end itemize @node Finding Extensions @section How @command{gawk} Finds Extensions diff --git a/doc/gawktexi.in b/doc/gawktexi.in index a0bb8b73..e1b318ca 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -34344,7 +34344,48 @@ the current version of @command{gawk}. Fortunately, at the possible expense of some compile-time warnings, the API remains source-code--compatible with the previous API. The major differences are the additional members in the @code{awk_ext_func_t} structure, and the -addition of the third argument to the C implementation function. +addition of the third argument to the C implementation function +(@pxref{Extension Functions}). + +Here is a list of individual features that changed from version 1 to +version 2 of the API: + +@itemize @bullet + +@item +Numeric values can now have MPFR/MPZ variants +(@pxref{General Data Types}). + +@item +There are new string types: @code{AWK_REGEX} and @code{AWK_STRNUM} +(@pxref{General Data Types}). + +@item +The @code{ezalloc()} macro is new +(@pxref{Memory Allocation Functions}). + +@item +The @code{awk_ext_func_t} structure changed. Instead of +@code{num_expected_args}, it now has @code{max_expected} and +@code{min_required} +(@pxref{Extension Functions}). + +@item +For @code{get_record()}, an input parser can now specify field widths +(@pxref{Input Parsers}). + +@item +Extensions can now produce nonfatal error messages +(@pxref{Printing Messages}). + +@item +When flattening an array, you can now specify the index and value types +(@pxref{Array Functions}). + +@item +The @code{get_file()} API is new +(@pxref{Redirection API}). +@end itemize @node Finding Extensions @section How @command{gawk} Finds Extensions |