diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2013-04-12 14:15:35 +0300 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2013-04-12 14:15:35 +0300 |
commit | 74ad8503620cdccd1624fa52cb80f15d777a8b23 (patch) | |
tree | 140e5fbe6e1d0868e3417f3644407e8d19b83af6 /doc/gawk.info | |
parent | c2e2ed2a5ff176a215f0025598292dbf49b0102a (diff) | |
download | egawk-74ad8503620cdccd1624fa52cb80f15d777a8b23.tar.gz egawk-74ad8503620cdccd1624fa52cb80f15d777a8b23.tar.bz2 egawk-74ad8503620cdccd1624fa52cb80f15d777a8b23.zip |
And more cleanup.
Diffstat (limited to 'doc/gawk.info')
-rw-r--r-- | doc/gawk.info | 549 |
1 files changed, 279 insertions, 270 deletions
diff --git a/doc/gawk.info b/doc/gawk.info index 2959d893..30879eaa 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -13074,8 +13074,9 @@ problem if a program calls an undefined function. If `--lint' is specified (*note Options::), `gawk' reports calls to undefined functions. - Some `awk' implementations generate a runtime error if you use the -`next' statement (*note Next Statement::) inside a user-defined + Some `awk' implementations generate a runtime error if you use +either the `next' statement or the `nextfile' statement (*note Next +Statement::, also *note Nextfile Statement::) inside a user-defined function. `gawk' does not have this limitation. @@ -15250,6 +15251,14 @@ value. Here is a main program to demonstrate: -| a[2][2] = 22 -| a[3] = 3 + Walking an array and processing each element is a general-purpose +operation. You might want to consider generalizing the `walk_array()' +function by adding an additional parameter named `process'. + + Then, inside the loop, instead of simply printing the array element's +index and value, use the indirect function call syntax (*note Indirect +Calls::) on `process', passing it the index and the value. + File: gawk.info, Node: Sample Programs, Next: Internationalization, Prev: Library Functions, Up: Top @@ -32193,273 +32202,273 @@ Node: Function Caveats540688 Node: Calling A Function541109 Node: Variable Scope542224 Node: Pass By Value/Reference545187 -Node: Return Statement548627 -Node: Dynamic Typing551608 -Node: Indirect Calls552539 -Node: Library Functions562224 -Ref: Library Functions-Footnote-1565737 -Ref: Library Functions-Footnote-2565880 -Node: Library Names566051 -Ref: Library Names-Footnote-1569522 -Ref: Library Names-Footnote-2569742 -Node: General Functions569828 -Node: Strtonum Function570781 -Node: Assert Function573711 -Node: Round Function577037 -Node: Cliff Random Function578580 -Node: Ordinal Functions579596 -Ref: Ordinal Functions-Footnote-1582666 -Ref: Ordinal Functions-Footnote-2582918 -Node: Join Function583127 -Ref: Join Function-Footnote-1584898 -Node: Getlocaltime Function585098 -Node: Data File Management588813 -Node: Filetrans Function589445 -Node: Rewind Function593584 -Node: File Checking594971 -Node: Empty Files596065 -Node: Ignoring Assigns598295 -Node: Getopt Function599848 -Ref: Getopt Function-Footnote-1611152 -Node: Passwd Functions611355 -Ref: Passwd Functions-Footnote-1620330 -Node: Group Functions620418 -Node: Walking Arrays628502 -Node: Sample Programs630071 -Node: Running Examples630748 -Node: Clones631476 -Node: Cut Program632700 -Node: Egrep Program642545 -Ref: Egrep Program-Footnote-1650318 -Node: Id Program650428 -Node: Split Program654044 -Ref: Split Program-Footnote-1657563 -Node: Tee Program657691 -Node: Uniq Program660494 -Node: Wc Program667923 -Ref: Wc Program-Footnote-1672189 -Ref: Wc Program-Footnote-2672389 -Node: Miscellaneous Programs672481 -Node: Dupword Program673669 -Node: Alarm Program675700 -Node: Translate Program680449 -Ref: Translate Program-Footnote-1684836 -Ref: Translate Program-Footnote-2685064 -Node: Labels Program685198 -Ref: Labels Program-Footnote-1688569 -Node: Word Sorting688653 -Node: History Sorting692537 -Node: Extract Program694376 -Ref: Extract Program-Footnote-1701877 -Node: Simple Sed702005 -Node: Igawk Program705067 -Ref: Igawk Program-Footnote-1720224 -Ref: Igawk Program-Footnote-2720425 -Node: Anagram Program720563 -Node: Signature Program723631 -Node: Internationalization724731 -Node: I18N and L10N726163 -Node: Explaining gettext726849 -Ref: Explaining gettext-Footnote-1731915 -Ref: Explaining gettext-Footnote-2732099 -Node: Programmer i18n732264 -Node: Translator i18n736464 -Node: String Extraction737257 -Ref: String Extraction-Footnote-1738218 -Node: Printf Ordering738304 -Ref: Printf Ordering-Footnote-1741088 -Node: I18N Portability741152 -Ref: I18N Portability-Footnote-1743601 -Node: I18N Example743664 -Ref: I18N Example-Footnote-1746299 -Node: Gawk I18N746371 -Node: Advanced Features746988 -Node: Nondecimal Data748492 -Node: Array Sorting750075 -Node: Controlling Array Traversal750772 -Node: Array Sorting Functions759010 -Ref: Array Sorting Functions-Footnote-1762684 -Ref: Array Sorting Functions-Footnote-2762777 -Node: Two-way I/O762971 -Ref: Two-way I/O-Footnote-1768403 -Node: TCP/IP Networking768473 -Node: Profiling771317 -Node: Debugger778771 -Node: Debugging779739 -Node: Debugging Concepts780172 -Node: Debugging Terms782028 -Node: Awk Debugging784625 -Node: Sample Debugging Session785517 -Node: Debugger Invocation786037 -Node: Finding The Bug787366 -Node: List of Debugger Commands793854 -Node: Breakpoint Control795188 -Node: Debugger Execution Control798852 -Node: Viewing And Changing Data802212 -Node: Execution Stack805568 -Node: Debugger Info807035 -Node: Miscellaneous Debugger Commands811017 -Node: Readline Support816462 -Node: Limitations817293 -Node: Arbitrary Precision Arithmetic819545 -Ref: Arbitrary Precision Arithmetic-Footnote-1821187 -Node: General Arithmetic821335 -Node: Floating Point Issues823055 -Node: String Conversion Precision823936 -Ref: String Conversion Precision-Footnote-1825642 -Node: Unexpected Results825751 -Node: POSIX Floating Point Problems827904 -Ref: POSIX Floating Point Problems-Footnote-1831729 -Node: Integer Programming831767 -Node: Floating-point Programming833520 -Ref: Floating-point Programming-Footnote-1839829 -Node: Floating-point Representation840093 -Node: Floating-point Context841258 -Ref: table-ieee-formats842100 -Node: Rounding Mode843484 -Ref: table-rounding-modes843963 -Ref: Rounding Mode-Footnote-1846967 -Node: Gawk and MPFR847148 -Node: Arbitrary Precision Floats848390 -Ref: Arbitrary Precision Floats-Footnote-1850819 -Node: Setting Precision851130 -Node: Setting Rounding Mode853863 -Ref: table-gawk-rounding-modes854267 -Node: Floating-point Constants855447 -Node: Changing Precision856871 -Ref: Changing Precision-Footnote-1858271 -Node: Exact Arithmetic858445 -Node: Arbitrary Precision Integers861553 -Ref: Arbitrary Precision Integers-Footnote-1864553 -Node: Dynamic Extensions864700 -Node: Extension Intro866077 -Node: Plugin License867285 -Node: Extension Mechanism Outline867970 -Ref: load-extension868387 -Ref: load-new-function869865 -Ref: call-new-function870860 -Node: Extension API Description872868 -Node: Extension API Functions Introduction874207 -Node: General Data Types878985 -Ref: General Data Types-Footnote-1884587 -Node: Requesting Values884886 -Ref: table-value-types-returned885617 -Node: Constructor Functions886571 -Node: Registration Functions889567 -Node: Extension Functions890252 -Node: Exit Callback Functions892426 -Node: Extension Version String893669 -Node: Input Parsers894319 -Node: Output Wrappers904036 -Node: Two-way processors908452 -Node: Printing Messages910582 -Ref: Printing Messages-Footnote-1911659 -Node: Updating `ERRNO'911811 -Node: Accessing Parameters912550 -Node: Symbol Table Access913780 -Node: Symbol table by name914292 -Node: Symbol table by cookie915865 -Ref: Symbol table by cookie-Footnote-1919994 -Node: Cached values920057 -Ref: Cached values-Footnote-1923500 -Node: Array Manipulation923591 -Ref: Array Manipulation-Footnote-1924689 -Node: Array Data Types924728 -Ref: Array Data Types-Footnote-1927431 -Node: Array Functions927523 -Node: Flattening Arrays931289 -Node: Creating Arrays938128 -Node: Extension API Variables942923 -Node: Extension Versioning943559 -Node: Extension API Informational Variables945460 -Node: Extension API Boilerplate946546 -Node: Finding Extensions950377 -Node: Extension Example950924 -Node: Internal File Description951662 -Node: Internal File Ops955350 -Ref: Internal File Ops-Footnote-1966797 -Node: Using Internal File Ops966937 -Ref: Using Internal File Ops-Footnote-1969290 -Node: Extension Samples969556 -Node: Extension Sample File Functions971080 -Node: Extension Sample Fnmatch979553 -Node: Extension Sample Fork981279 -Node: Extension Sample Inplace982497 -Node: Extension Sample Ord984289 -Node: Extension Sample Readdir985068 -Node: Extension Sample Revout986572 -Node: Extension Sample Rev2way987165 -Node: Extension Sample Read write array987855 -Node: Extension Sample Readfile989738 -Node: Extension Sample API Tests990495 -Node: Extension Sample Time991020 -Node: gawkextlib992327 -Node: Language History994708 -Node: V7/SVR3.1996230 -Node: SVR4998551 -Node: POSIX999993 -Node: BTL1001001 -Node: POSIX/GNU1001806 -Node: Common Extensions1007341 -Node: Ranges and Locales1008448 -Ref: Ranges and Locales-Footnote-11013066 -Ref: Ranges and Locales-Footnote-21013093 -Ref: Ranges and Locales-Footnote-31013353 -Node: Contributors1013574 -Node: Installation1017870 -Node: Gawk Distribution1018764 -Node: Getting1019248 -Node: Extracting1020074 -Node: Distribution contents1021766 -Node: Unix Installation1027027 -Node: Quick Installation1027644 -Node: Additional Configuration Options1029606 -Node: Configuration Philosophy1031083 -Node: Non-Unix Installation1033425 -Node: PC Installation1033883 -Node: PC Binary Installation1035182 -Node: PC Compiling1037030 -Node: PC Testing1039974 -Node: PC Using1041150 -Node: Cygwin1045335 -Node: MSYS1046335 -Node: VMS Installation1046849 -Node: VMS Compilation1047452 -Ref: VMS Compilation-Footnote-11048459 -Node: VMS Installation Details1048517 -Node: VMS Running1050152 -Node: VMS Old Gawk1051759 -Node: Bugs1052233 -Node: Other Versions1056085 -Node: Notes1061415 -Node: Compatibility Mode1062215 -Node: Additions1062998 -Node: Accessing The Source1063925 -Node: Adding Code1065528 -Node: New Ports1071570 -Node: Derived Files1075705 -Ref: Derived Files-Footnote-11081026 -Ref: Derived Files-Footnote-21081060 -Ref: Derived Files-Footnote-31081660 -Node: Future Extensions1081758 -Node: Implementation Limitations1082339 -Node: Extension Design1083591 -Node: Old Extension Problems1084740 -Ref: Old Extension Problems-Footnote-11086248 -Node: Extension New Mechanism Goals1086305 -Ref: Extension New Mechanism Goals-Footnote-11089664 -Node: Extension Other Design Decisions1089850 -Node: Extension Future Growth1091956 -Node: Old Extension Mechansim1092777 -Node: Basic Concepts1094534 -Node: Basic High Level1095215 -Ref: figure-general-flow1095486 -Ref: figure-process-flow1096085 -Ref: Basic High Level-Footnote-11099314 -Node: Basic Data Typing1099499 -Node: Glossary1102854 -Node: Copying1128332 -Node: GNU Free Documentation License1165889 -Node: Index1191026 +Node: Return Statement548695 +Node: Dynamic Typing551676 +Node: Indirect Calls552607 +Node: Library Functions562292 +Ref: Library Functions-Footnote-1565805 +Ref: Library Functions-Footnote-2565948 +Node: Library Names566119 +Ref: Library Names-Footnote-1569590 +Ref: Library Names-Footnote-2569810 +Node: General Functions569896 +Node: Strtonum Function570849 +Node: Assert Function573779 +Node: Round Function577105 +Node: Cliff Random Function578648 +Node: Ordinal Functions579664 +Ref: Ordinal Functions-Footnote-1582734 +Ref: Ordinal Functions-Footnote-2582986 +Node: Join Function583195 +Ref: Join Function-Footnote-1584966 +Node: Getlocaltime Function585166 +Node: Data File Management588881 +Node: Filetrans Function589513 +Node: Rewind Function593652 +Node: File Checking595039 +Node: Empty Files596133 +Node: Ignoring Assigns598363 +Node: Getopt Function599916 +Ref: Getopt Function-Footnote-1611220 +Node: Passwd Functions611423 +Ref: Passwd Functions-Footnote-1620398 +Node: Group Functions620486 +Node: Walking Arrays628570 +Node: Sample Programs630544 +Node: Running Examples631221 +Node: Clones631949 +Node: Cut Program633173 +Node: Egrep Program643018 +Ref: Egrep Program-Footnote-1650791 +Node: Id Program650901 +Node: Split Program654517 +Ref: Split Program-Footnote-1658036 +Node: Tee Program658164 +Node: Uniq Program660967 +Node: Wc Program668396 +Ref: Wc Program-Footnote-1672662 +Ref: Wc Program-Footnote-2672862 +Node: Miscellaneous Programs672954 +Node: Dupword Program674142 +Node: Alarm Program676173 +Node: Translate Program680922 +Ref: Translate Program-Footnote-1685309 +Ref: Translate Program-Footnote-2685537 +Node: Labels Program685671 +Ref: Labels Program-Footnote-1689042 +Node: Word Sorting689126 +Node: History Sorting693010 +Node: Extract Program694849 +Ref: Extract Program-Footnote-1702350 +Node: Simple Sed702478 +Node: Igawk Program705540 +Ref: Igawk Program-Footnote-1720697 +Ref: Igawk Program-Footnote-2720898 +Node: Anagram Program721036 +Node: Signature Program724104 +Node: Internationalization725204 +Node: I18N and L10N726636 +Node: Explaining gettext727322 +Ref: Explaining gettext-Footnote-1732388 +Ref: Explaining gettext-Footnote-2732572 +Node: Programmer i18n732737 +Node: Translator i18n736937 +Node: String Extraction737730 +Ref: String Extraction-Footnote-1738691 +Node: Printf Ordering738777 +Ref: Printf Ordering-Footnote-1741561 +Node: I18N Portability741625 +Ref: I18N Portability-Footnote-1744074 +Node: I18N Example744137 +Ref: I18N Example-Footnote-1746772 +Node: Gawk I18N746844 +Node: Advanced Features747461 +Node: Nondecimal Data748965 +Node: Array Sorting750548 +Node: Controlling Array Traversal751245 +Node: Array Sorting Functions759483 +Ref: Array Sorting Functions-Footnote-1763157 +Ref: Array Sorting Functions-Footnote-2763250 +Node: Two-way I/O763444 +Ref: Two-way I/O-Footnote-1768876 +Node: TCP/IP Networking768946 +Node: Profiling771790 +Node: Debugger779244 +Node: Debugging780212 +Node: Debugging Concepts780645 +Node: Debugging Terms782501 +Node: Awk Debugging785098 +Node: Sample Debugging Session785990 +Node: Debugger Invocation786510 +Node: Finding The Bug787839 +Node: List of Debugger Commands794327 +Node: Breakpoint Control795661 +Node: Debugger Execution Control799325 +Node: Viewing And Changing Data802685 +Node: Execution Stack806041 +Node: Debugger Info807508 +Node: Miscellaneous Debugger Commands811490 +Node: Readline Support816935 +Node: Limitations817766 +Node: Arbitrary Precision Arithmetic820018 +Ref: Arbitrary Precision Arithmetic-Footnote-1821660 +Node: General Arithmetic821808 +Node: Floating Point Issues823528 +Node: String Conversion Precision824409 +Ref: String Conversion Precision-Footnote-1826115 +Node: Unexpected Results826224 +Node: POSIX Floating Point Problems828377 +Ref: POSIX Floating Point Problems-Footnote-1832202 +Node: Integer Programming832240 +Node: Floating-point Programming833993 +Ref: Floating-point Programming-Footnote-1840302 +Node: Floating-point Representation840566 +Node: Floating-point Context841731 +Ref: table-ieee-formats842573 +Node: Rounding Mode843957 +Ref: table-rounding-modes844436 +Ref: Rounding Mode-Footnote-1847440 +Node: Gawk and MPFR847621 +Node: Arbitrary Precision Floats848863 +Ref: Arbitrary Precision Floats-Footnote-1851292 +Node: Setting Precision851603 +Node: Setting Rounding Mode854336 +Ref: table-gawk-rounding-modes854740 +Node: Floating-point Constants855920 +Node: Changing Precision857344 +Ref: Changing Precision-Footnote-1858744 +Node: Exact Arithmetic858918 +Node: Arbitrary Precision Integers862026 +Ref: Arbitrary Precision Integers-Footnote-1865026 +Node: Dynamic Extensions865173 +Node: Extension Intro866550 +Node: Plugin License867758 +Node: Extension Mechanism Outline868443 +Ref: load-extension868860 +Ref: load-new-function870338 +Ref: call-new-function871333 +Node: Extension API Description873341 +Node: Extension API Functions Introduction874680 +Node: General Data Types879458 +Ref: General Data Types-Footnote-1885060 +Node: Requesting Values885359 +Ref: table-value-types-returned886090 +Node: Constructor Functions887044 +Node: Registration Functions890040 +Node: Extension Functions890725 +Node: Exit Callback Functions892899 +Node: Extension Version String894142 +Node: Input Parsers894792 +Node: Output Wrappers904509 +Node: Two-way processors908925 +Node: Printing Messages911055 +Ref: Printing Messages-Footnote-1912132 +Node: Updating `ERRNO'912284 +Node: Accessing Parameters913023 +Node: Symbol Table Access914253 +Node: Symbol table by name914765 +Node: Symbol table by cookie916338 +Ref: Symbol table by cookie-Footnote-1920467 +Node: Cached values920530 +Ref: Cached values-Footnote-1923973 +Node: Array Manipulation924064 +Ref: Array Manipulation-Footnote-1925162 +Node: Array Data Types925201 +Ref: Array Data Types-Footnote-1927904 +Node: Array Functions927996 +Node: Flattening Arrays931762 +Node: Creating Arrays938601 +Node: Extension API Variables943396 +Node: Extension Versioning944032 +Node: Extension API Informational Variables945933 +Node: Extension API Boilerplate947019 +Node: Finding Extensions950850 +Node: Extension Example951397 +Node: Internal File Description952135 +Node: Internal File Ops955823 +Ref: Internal File Ops-Footnote-1967270 +Node: Using Internal File Ops967410 +Ref: Using Internal File Ops-Footnote-1969763 +Node: Extension Samples970029 +Node: Extension Sample File Functions971553 +Node: Extension Sample Fnmatch980026 +Node: Extension Sample Fork981752 +Node: Extension Sample Inplace982970 +Node: Extension Sample Ord984762 +Node: Extension Sample Readdir985541 +Node: Extension Sample Revout987045 +Node: Extension Sample Rev2way987638 +Node: Extension Sample Read write array988328 +Node: Extension Sample Readfile990211 +Node: Extension Sample API Tests990968 +Node: Extension Sample Time991493 +Node: gawkextlib992800 +Node: Language History995181 +Node: V7/SVR3.1996703 +Node: SVR4999024 +Node: POSIX1000466 +Node: BTL1001474 +Node: POSIX/GNU1002279 +Node: Common Extensions1007814 +Node: Ranges and Locales1008921 +Ref: Ranges and Locales-Footnote-11013539 +Ref: Ranges and Locales-Footnote-21013566 +Ref: Ranges and Locales-Footnote-31013826 +Node: Contributors1014047 +Node: Installation1018343 +Node: Gawk Distribution1019237 +Node: Getting1019721 +Node: Extracting1020547 +Node: Distribution contents1022239 +Node: Unix Installation1027500 +Node: Quick Installation1028117 +Node: Additional Configuration Options1030079 +Node: Configuration Philosophy1031556 +Node: Non-Unix Installation1033898 +Node: PC Installation1034356 +Node: PC Binary Installation1035655 +Node: PC Compiling1037503 +Node: PC Testing1040447 +Node: PC Using1041623 +Node: Cygwin1045808 +Node: MSYS1046808 +Node: VMS Installation1047322 +Node: VMS Compilation1047925 +Ref: VMS Compilation-Footnote-11048932 +Node: VMS Installation Details1048990 +Node: VMS Running1050625 +Node: VMS Old Gawk1052232 +Node: Bugs1052706 +Node: Other Versions1056558 +Node: Notes1061888 +Node: Compatibility Mode1062688 +Node: Additions1063471 +Node: Accessing The Source1064398 +Node: Adding Code1066001 +Node: New Ports1072043 +Node: Derived Files1076178 +Ref: Derived Files-Footnote-11081499 +Ref: Derived Files-Footnote-21081533 +Ref: Derived Files-Footnote-31082133 +Node: Future Extensions1082231 +Node: Implementation Limitations1082812 +Node: Extension Design1084064 +Node: Old Extension Problems1085213 +Ref: Old Extension Problems-Footnote-11086721 +Node: Extension New Mechanism Goals1086778 +Ref: Extension New Mechanism Goals-Footnote-11090137 +Node: Extension Other Design Decisions1090323 +Node: Extension Future Growth1092429 +Node: Old Extension Mechansim1093250 +Node: Basic Concepts1095007 +Node: Basic High Level1095688 +Ref: figure-general-flow1095959 +Ref: figure-process-flow1096558 +Ref: Basic High Level-Footnote-11099787 +Node: Basic Data Typing1099972 +Node: Glossary1103327 +Node: Copying1128805 +Node: GNU Free Documentation License1166362 +Node: Index1191499 End Tag Table |