home *** CD-ROM | disk | FTP | other *** search
/ Acorn User 10 / AU_CD10.iso / Updates / Perl / Docs / !PerlDocs / Chapter32 / Text
ZLIB Compressed Data  |  1997-07-17  |  194.5 KB

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: ZLIB Compressed Data (archive/zlib).

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert ZLIB Compressed Data (archive/zlib) magic Supported
100% file zlib compressed data default
99% file data default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 58 09 03 00 01 00 00 00 | 00 00 00 00 06 08 00 00 |X.......|........|
|00000010| 00 08 00 00 01 10 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 10 00 00 02 18 00 00 | c8 00 00 00 00 00 00 00 |........|........|
|00000030| 07 3c c1 00 00 00 00 00 | 00 18 00 00 a5 78 00 00 |.<......|.....x..|
|00000040| 43 40 06 05 40 25 ff ff | 60 73 ff ff d8 3b 00 00 |C@..@%..|`s...;..|
|00000050| 16 00 00 00 b0 fc 07 00 | 00 00 00 00 07 3c c1 00 |........|.....<..|
|00000060| 07 3c c1 00 07 3c c1 00 | 00 00 00 00 70 65 72 6c |.<...<..|....perl|
|00000070| 67 75 74 73 20 2d 20 50 | 65 72 6c 27 73 20 49 6e |guts - P|erl's In|
|00000080| 74 65 72 6e 61 6c 05 05 | 20 46 75 6e 63 74 69 6f |ternal..| Functio|
|00000090| 6e 73 0d 08 07 3c c1 00 | 00 00 00 00 07 00 50 13 |ns...<..|......P.|
|000000a0| 08 af a5 00 08 af a5 00 | 00 00 00 00 05 00 00 00 |........|........|
|000000b0| 00 78 00 00 a5 30 00 00 | 40 a2 5f 01 a0 98 fe ff |.x...0..|@._.....|
|000000c0| f0 de fe ff 68 37 00 00 | 44 65 73 63 72 69 70 74 |....h7..|Descript|
|000000d0| 69 6f 6e 0d 08 65 73 63 | 08 b0 a5 00 00 00 00 00 |ion..esc|........|
|000000e0| 00 30 00 00 05 84 00 00 | 00 b0 8a 07 3f 40 fe ff |.0......|....?@..|
|000000f0| 1f 6f fe ff 20 22 00 00 | 54 68 69 73 20 64 6f 63 |.o.. "..|This doc|
|00000100| 75 6d 65 6e 74 20 61 74 | 74 65 6d 70 74 73 20 74 |ument at|tempts t|
|00000110| 6f 20 64 65 73 63 72 69 | 62 65 20 73 6f 6d 65 20 |o descri|be some |
|00000120| 6f 66 20 74 68 65 20 69 | 6e 74 65 72 6e 61 6c 20 |of the i|nternal |
|00000130| 66 75 6e 63 74 69 6f 6e | 73 20 6f 66 20 74 68 65 |function|s of the|
|00000140| 20 50 65 72 6c 20 65 78 | 65 63 75 74 61 62 6c 65 | Perl ex|ecutable|
|00000150| 2e 20 20 49 74 20 69 73 | 20 66 61 72 20 66 72 6f |. It is| far fro|
|00000160| 6d 20 00 00 00 84 00 00 | a5 90 00 00 40 e0 c0 07 |m ......|....@...|
|00000170| 18 08 fe ff f8 36 fe ff | 20 22 00 00 63 6f 6d 70 |.....6..| "..comp|
|00000180| 6c 65 74 65 20 61 6e 64 | 20 70 72 6f 62 61 62 6c |lete and| probabl|
|00000190| 79 20 63 6f 6e 74 61 69 | 6e 73 20 6d 61 6e 79 20 |y contai|ns many |
|000001a0| 65 72 72 6f 72 73 2e 20 | 50 6c 65 61 73 65 20 72 |errors. |Please r|
|000001b0| 65 66 65 72 20 61 6e 79 | 20 71 75 65 73 74 69 6f |efer any| questio|
|000001c0| 6e 73 20 6f 72 20 63 6f | 6d 6d 65 6e 74 73 20 74 |ns or co|mments t|
|000001d0| 6f 20 74 68 65 20 61 75 | 74 68 6f 72 20 62 65 6c |o the au|thor bel|
|000001e0| 6f 77 2e 0d 07 00 00 00 | 08 b1 a5 00 08 b1 a5 00 |ow......|........|
|000001f0| 00 00 00 00 00 90 00 00 | a5 3c 00 00 40 dc 1f 01 |........|.<..@...|
|00000200| d1 81 fd ff 21 c8 fd ff | 68 37 00 00 56 61 72 69 |....!...|h7..Vari|
|00000210| 61 62 6c 65 73 0d 08 65 | 08 b2 a5 00 00 00 00 00 |ables..e|........|
|00000220| 07 61 20 74 0a b3 a5 00 | 0a b3 a5 00 00 00 00 00 |.a t....|........|
|00000230| 00 3c 00 00 a5 3c 00 00 | 40 34 f6 00 a0 21 fd ff |.<...<..|@4...!..|
|00000240| 50 58 fd ff 18 2b 00 00 | 44 61 74 61 74 79 70 65 |PX...+..|Datatype|
|00000250| 73 0d 08 00 0a b4 a5 00 | 00 00 00 00 07 63 61 6c |s.......|.....cal|
|00000260| 14 b5 a5 00 14 b5 a5 00 | 00 00 00 00 00 3c 00 00 |........|.....<..|
|00000270| a5 88 00 00 40 b4 9e 04 | 6b cc fc ff 4b fb fc ff |....@...|k...K...|
|00000280| 20 22 00 00 50 65 72 6c | 20 68 61 73 20 74 68 72 | "..Perl| has thr|
|00000290| 65 65 20 74 79 70 65 64 | 65 66 73 20 74 68 61 74 |ee typed|efs that|
|000002a0| 20 68 61 6e 64 6c 65 20 | 50 65 72 6c 27 73 20 74 | handle |Perl's t|
|000002b0| 68 72 65 65 20 6d 61 69 | 6e 20 64 61 74 61 20 74 |hree mai|n data t|
|000002c0| 79 70 65 73 3a 0d 08 70 | 14 00 00 00 00 00 00 00 |ypes:..p|........|
|000002d0| 07 73 70 65 12 b6 a5 00 | 12 b6 a5 00 00 00 00 00 |.spe....|........|
|000002e0| 07 73 20 74 0c b7 a5 00 | 12 b6 a5 00 0c b7 a5 00 |.s t....|........|
|000002f0| 00 00 00 00 00 88 00 00 | 25 2c 00 00 40 00 77 01 |........|%,..@.w.|
|00000300| 64 65 fc ff 74 8c fc ff | 70 1a 00 00 53 56 20 20 |de..t...|p...SV |
|00000310| 53 63 61 6c 61 72 20 56 | 61 6c 75 65 0d 00 00 00 |Scalar V|alue....|
|00000320| 00 2c 00 00 25 28 00 00 | 40 90 5f 01 84 36 fc ff |.,..%(..|@._..6..|
|00000330| 94 5d fc ff 70 1a 00 00 | 41 56 20 20 41 72 72 61 |.]..p...|AV Arra|
|00000340| 79 20 56 61 6c 75 65 0d | 00 28 00 00 a5 50 00 00 |y Value.|.(...P..|
|00000350| 40 20 48 01 a4 07 fc ff | b4 2e fc ff 70 1a 00 00 |@ H.....|....p...|
|00000360| 48 56 20 20 48 61 73 68 | 20 56 61 6c 75 65 0d 08 |HV Hash| Value..|
|00000370| 0c b8 a5 00 12 b6 a5 00 | 00 00 00 00 08 72 61 6e |........|.....ran|
|00000380| 12 00 00 00 00 00 00 00 | 07 65 20 6c 18 b9 a5 00 |........|.e l....|
|00000390| 18 b9 a5 00 00 00 00 00 | 00 50 00 00 a5 24 00 00 |........|.P...$..|
|000003a0| 40 00 00 00 14 f3 fb ff | d4 ff fb ff 00 00 00 00 |@.......|........|
|000003b0| 0d 08 20 61 18 ba a5 00 | 00 00 00 00 00 24 00 00 |.. a....|.....$..|
|000003c0| a5 70 00 00 40 70 5d 05 | 44 9a fb ff 24 c9 fb ff |.p..@p].|D...$...|
|000003d0| 20 22 00 00 45 61 63 68 | 20 74 79 70 65 64 65 66 | "..Each| typedef|
|000003e0| 20 68 61 73 20 73 70 65 | 63 69 66 69 63 20 72 6f | has spe|cific ro|
|000003f0| 75 74 69 6e 65 73 20 74 | 68 61 74 20 6d 61 6e 69 |utines t|hat mani|
|00000400| 70 75 6c 61 74 65 20 74 | 68 65 20 76 61 72 69 6f |pulate t|he vario|
|00000410| 75 73 20 64 61 74 61 20 | 74 79 70 65 73 2e 0d 07 |us data |types...|
|00000420| 0a bb a5 00 0a bb a5 00 | 00 00 00 00 00 70 00 00 |........|.....p..|
|00000430| a5 34 00 00 40 76 8a 01 | 9d 23 fb ff 4d 5a fb ff |.4..@v..|.#..MZ..|
|00000440| 18 2b 00 00 57 68 61 74 | 20 69 73 20 61 6e 20 22 |.+..What| is an "|
|00000450| 49 56 22 3f 0d 08 56 73 | 0a bc a5 00 00 00 00 00 |IV"?..Vs|........|
|00000460| 00 34 00 00 05 88 00 00 | 00 78 d4 07 68 ce fa ff |.4......|.x..h...|
|00000470| 48 fd fa ff 20 22 00 00 | 50 65 72 6c 20 75 73 65 |H... "..|Perl use|
|00000480| 73 20 61 20 73 70 65 63 | 69 61 6c 20 74 79 70 65 |s a spec|ial type|
|00000490| 64 65 66 20 49 56 20 77 | 68 69 63 68 20 69 73 20 |def IV w|hich is |
|000004a0| 61 20 73 69 6d 70 6c 65 | 20 69 6e 74 65 67 65 72 |a simple| integer|
|000004b0| 20 74 79 70 65 20 74 68 | 61 74 20 69 73 20 67 75 | type th|at is gu|
|000004c0| 61 72 61 6e 74 65 65 64 | 20 74 6f 20 62 65 20 6c |aranteed| to be l|
|000004d0| 61 72 67 65 20 65 6e 6f | 75 67 68 20 74 6f 20 68 |arge eno|ugh to h|
|000004e0| 6f 6c 64 20 61 20 00 00 | 00 88 00 00 25 3c 00 00 |old a ..|....%<..|
|000004f0| 40 90 37 02 41 96 fa ff | 21 c5 fa ff 20 22 00 00 |@.7.A...|!... "..|
|00000500| 70 6f 69 6e 74 65 72 20 | 28 61 73 20 77 65 6c 6c |pointer |(as well|
|00000510| 20 61 73 20 61 6e 20 69 | 6e 74 65 67 65 72 29 2e | as an i|nteger).|
|00000520| 0d 00 00 00 00 3c 00 00 | 05 84 00 00 00 f4 82 07 |.....<..|........|
|00000530| 6a 27 fa ff 4a 56 fa ff | 20 22 00 00 50 65 72 6c |j'..JV..| "..Perl|
|00000540| 20 61 6c 73 6f 20 75 73 | 65 73 20 74 77 6f 20 73 | also us|es two s|
|00000550| 70 65 63 69 61 6c 20 74 | 79 70 65 64 65 66 73 2c |pecial t|ypedefs,|
|00000560| 20 49 33 32 20 61 6e 64 | 20 49 31 36 2c 20 77 68 | I32 and| I16, wh|
|00000570| 69 63 68 20 77 69 6c 6c | 20 61 6c 77 61 79 73 20 |ich will| always |
|00000580| 62 65 20 61 74 20 6c 65 | 61 73 74 20 33 32 2d 62 |be at le|ast 32-b|
|00000590| 69 74 73 20 61 6e 64 20 | 31 36 2d 62 69 74 73 20 |its and |16-bits |
|000005a0| 6c 6f 6e 67 2c 20 00 00 | 00 84 00 00 a5 34 00 00 |long, ..|.....4..|
|000005b0| 40 2c eb 00 43 ef f9 ff | 23 1e fa ff 20 22 00 00 |@,..C...|#... "..|
|000005c0| 72 65 73 70 65 63 74 69 | 76 65 6c 79 2e 0d 07 53 |respecti|vely...S|
|000005d0| 0a bd a5 00 0a bd a5 00 | 00 00 00 00 00 34 00 00 |........|.....4..|
|000005e0| a5 34 00 00 40 7e ab 01 | 9c 78 f9 ff 4c af f9 ff |.4..@~..|.x..L...|
|000005f0| 18 2b 00 00 57 6f 72 6b | 69 6e 67 20 77 69 74 68 |.+..Work|ing with|
|00000600| 20 53 56 73 0d 08 a5 00 | 0a be a5 00 00 00 00 00 | SVs....|........|
|00000610| 00 34 00 00 05 84 00 00 | 00 cc da 07 67 23 f9 ff |.4......|....g#..|
|00000620| 47 52 f9 ff 20 22 00 00 | 41 6e 20 53 56 20 63 61 |GR.. "..|An SV ca|
|00000630| 6e 20 62 65 20 63 72 65 | 61 74 65 64 20 61 6e 64 |n be cre|ated and|
|00000640| 20 6c 6f 61 64 65 64 20 | 77 69 74 68 20 6f 6e 65 | loaded |with one|
|00000650| 20 63 6f 6d 6d 61 6e 64 | 2e 20 20 54 68 65 72 65 | command|. There|
|00000660| 20 61 72 65 20 66 6f 75 | 72 20 74 79 70 65 73 20 | are fou|r types |
|00000670| 6f 66 20 76 61 6c 75 65 | 73 20 74 68 61 74 20 63 |of value|s that c|
|00000680| 61 6e 20 62 65 20 6c 6f | 61 64 65 64 3a 20 61 6e |an be lo|aded: an|
|00000690| 20 00 00 00 00 84 00 00 | a5 74 00 00 40 54 6a 05 | .......|.t..@Tj.|
|000006a0| 40 eb f8 ff 20 1a f9 ff | 20 22 00 00 69 6e 74 65 |@... ...| "..inte|
|000006b0| 67 65 72 20 76 61 6c 75 | 65 20 28 49 56 29 2c 20 |ger valu|e (IV), |
|000006c0| 61 20 64 6f 75 62 6c 65 | 20 28 4e 56 29 2c 20 61 |a double| (NV), a|
|000006d0| 20 73 74 72 69 6e 67 2c | 20 28 50 56 29 2c 20 61 | string,| (PV), a|
|000006e0| 6e 64 20 61 6e 6f 74 68 | 65 72 20 73 63 61 6c 61 |nd anoth|er scala|
|000006f0| 72 20 28 53 56 29 2e 0d | 07 76 5f 73 14 bf a5 00 |r (SV)..|.v_s....|
|00000700| 14 bf a5 00 00 00 00 00 | 00 74 00 00 a5 5c 00 00 |........|.t...\..|
|00000710| 40 3c 92 01 69 7c f8 ff | 49 ab f8 ff 20 22 00 00 |@<..i|..|I... "..|
|00000720| 54 68 65 20 66 69 76 65 | 20 72 6f 75 74 69 6e 65 |The five| routine|
|00000730| 73 20 61 72 65 3a 0d 08 | 14 00 00 00 00 00 00 00 |s are:..|........|
|00000740| 07 73 76 5f 12 c0 a5 00 | 12 c0 a5 00 00 00 00 00 |.sv_....|........|
|00000750| 07 2a 29 3b 0c c1 a5 00 | 12 c0 a5 00 0c c1 a5 00 |.*);....|........|
|00000760| 00 00 00 00 00 5c 00 00 | 25 2c 00 00 40 70 8e 01 |.....\..|%,..@p..|
|00000770| 62 15 f8 ff 72 3c f8 ff | 70 1a 00 00 53 56 2a 20 |b...r<..|p...SV* |
|00000780| 20 6e 65 77 53 56 69 76 | 28 49 56 29 3b 0d 00 00 | newSViv|(IV);...|
|00000790| 00 2c 00 00 25 30 00 00 | 40 30 ec 01 82 e6 f7 ff |.,..%0..|@0......|
|000007a0| 92 0d f8 ff 70 1a 00 00 | 53 56 2a 20 20 6e 65 77 |....p...|SV* new|
|000007b0| 53 56 6e 76 28 64 6f 75 | 62 6c 65 29 3b 0d 00 00 |SVnv(dou|ble);...|
|000007c0| 00 30 00 00 25 34 00 00 | 40 f0 49 02 a2 b7 f7 ff |.0..%4..|@.I.....|
|000007d0| b2 de f7 ff 70 1a 00 00 | 53 56 2a 20 20 6e 65 77 |....p...|SV* new|
|000007e0| 53 56 70 76 28 63 68 61 | 72 2a 2c 20 69 6e 74 29 |SVpv(cha|r*, int)|
|000007f0| 3b 0d 00 00 00 34 00 00 | 25 3c 00 00 40 00 ee 02 |;....4..|%<..@...|
|00000800| c2 88 f7 ff d2 af f7 ff | 70 1a 00 00 53 56 2a 20 |........|p...SV* |
|00000810| 20 6e 65 77 53 56 70 76 | 66 28 63 6f 6e 73 74 20 | newSVpv|f(const |
|00000820| 63 68 61 72 2a 2c 20 2e | 2e 2e 29 3b 0d 00 00 00 |char*, .|..);....|
|00000830| 00 3c 00 00 a5 54 00 00 | 40 e0 a5 01 e2 59 f7 ff |.<...T..|@....Y..|
|00000840| f2 80 f7 ff 70 1a 00 00 | 53 56 2a 20 20 6e 65 77 |....p...|SV* new|
|00000850| 53 56 73 76 28 53 56 2a | 29 3b 0d 08 0c c2 a5 00 |SVsv(SV*|);......|
|00000860| 12 c0 a5 00 00 00 00 00 | 08 cf a5 00 12 00 00 00 |........|........|
|00000870| 00 00 00 00 07 74 70 76 | 18 c3 a5 00 18 c3 a5 00 |.....tpv|........|
|00000880| 00 00 00 00 00 54 00 00 | a5 34 00 00 40 00 00 00 |.....T..|.4..@...|
|00000890| 52 45 f7 ff 12 52 f7 ff | 00 00 00 00 0d 08 20 73 |RE...R..|...... s|
|000008a0| 18 c4 a5 00 00 00 00 00 | 07 75 6d 65 14 c5 a5 00 |........|.ume....|
|000008b0| 14 c5 a5 00 00 00 00 00 | 00 34 00 00 a5 90 00 00 |........|.4......|
|000008c0| 40 bc 38 05 82 ec f6 ff | 62 1b f7 ff 20 22 00 00 |@.8.....|b... "..|
|000008d0| 54 6f 20 63 68 61 6e 67 | 65 20 74 68 65 20 76 61 |To chang|e the va|
|000008e0| 6c 75 65 20 6f 66 20 61 | 6e 20 2a 61 6c 72 65 61 |lue of a|n *alrea|
|000008f0| 64 79 2d 65 78 69 73 74 | 69 6e 67 2a 20 53 56 2c |dy-exist|ing* SV,|
|00000900| 20 74 68 65 72 65 20 61 | 72 65 20 73 69 78 20 72 | there a|re six r|
|00000910| 6f 75 74 69 6e 65 73 3a | 0d 08 67 20 14 00 00 00 |outines:|..g ....|
|00000920| 00 00 00 00 07 d3 a5 00 | 12 c6 a5 00 12 c6 a5 00 |........|........|
|00000930| 00 00 00 00 07 d4 a5 00 | 0c c7 a5 00 12 c6 a5 00 |........|........|
|00000940| 0c c7 a5 00 00 00 00 00 | 00 90 00 00 25 34 00 00 |........|....%4..|
|00000950| 40 80 32 02 7b 85 f6 ff | 8b ac f6 ff 70 1a 00 00 |@.2.{...|....p...|
|00000960| 76 6f 69 64 20 20 73 76 | 5f 73 65 74 69 76 28 53 |void sv|_setiv(S|
|00000970| 56 2a 2c 20 49 56 29 3b | 0d 00 00 00 00 34 00 00 |V*, IV);|.....4..|
|00000980| 25 38 00 00 40 40 90 02 | 9b 56 f6 ff ab 7d f6 ff |%8..@@..|.V...}..|
|00000990| 70 1a 00 00 76 6f 69 64 | 20 20 73 76 5f 73 65 74 |p...void| sv_set|
|000009a0| 6e 76 28 53 56 2a 2c 20 | 64 6f 75 62 6c 65 29 3b |nv(SV*, |double);|
|000009b0| 0d 00 00 00 00 38 00 00 | 25 34 00 00 40 d0 78 02 |.....8..|%4..@.x.|
|000009c0| bb 27 f6 ff cb 4e f6 ff | 70 1a 00 00 76 6f 69 64 |.'...N..|p...void|
|000009d0| 20 20 73 76 5f 73 65 74 | 70 76 28 53 56 2a 2c 20 | sv_set|pv(SV*, |
|000009e0| 63 68 61 72 2a 29 3b 0d | 00 34 00 00 25 3c 00 00 |char*);.|.4..%<..|
|000009f0| 40 00 ee 02 db f8 f5 ff | eb 1f f6 ff 70 1a 00 00 |@.......|....p...|
|00000a00| 76 6f 69 64 20 20 73 76 | 5f 73 65 74 70 76 6e 28 |void sv|_setpvn(|
|00000a10| 53 56 2a 2c 20 63 68 61 | 72 2a 2c 20 69 6e 74 29 |SV*, cha|r*, int)|
|00000a20| 0d 00 00 00 00 3c 00 00 | 25 40 00 00 40 10 92 03 |.....<..|%@..@...|
|00000a30| fb c9 f5 ff 0b f1 f5 ff | 70 1a 00 00 76 6f 69 64 |........|p...void|
|00000a40| 20 20 73 76 5f 73 65 74 | 70 76 66 28 53 56 2a 2c | sv_set|pvf(SV*,|
|00000a50| 20 63 6f 6e 73 74 20 63 | 68 61 72 2a 2c 20 2e 2e | const c|har*, ..|
|00000a60| 2e 29 3b 0d 00 40 00 00 | a5 5c 00 00 40 f0 49 02 |.);..@..|.\..@.I.|
|00000a70| 1b 9b f5 ff 2b c2 f5 ff | 70 1a 00 00 76 6f 69 64 |....+...|p...void|
|00000a80| 20 20 73 76 5f 73 65 74 | 73 76 28 53 56 2a 2c 20 | sv_set|sv(SV*, |
|00000a90| 53 56 2a 29 3b 0d 08 69 | 0c c8 a5 00 12 c6 a5 00 |SV*);..i|........|
|00000aa0| 00 00 00 00 08 6d 70 73 | 12 00 00 00 00 00 00 00 |.....mps|........|
|00000ab0| 07 75 70 74 18 c9 a5 00 | 18 c9 a5 00 00 00 00 00 |.upt....|........|
|00000ac0| 00 5c 00 00 a5 24 00 00 | 40 00 00 00 8b 86 f5 ff |.\...$..|@.......|
|00000ad0| 4b 93 f5 ff 00 00 00 00 | 0d 08 20 74 18 ca a5 00 |K.......|.. t....|
|00000ae0| 00 00 00 00 00 24 00 00 | 85 a4 00 00 00 f8 6f 07 |.....$..|......o.|
|00000af0| bb 2d f5 ff 9b 5c f5 ff | 20 22 00 00 4e 6f 74 69 |.-...\..| "..Noti|
|00000b00| 63 65 20 74 68 61 74 20 | 79 6f 75 20 63 61 6e 20 |ce that |you can |
|00000b10| 63 68 6f 6f 73 65 20 74 | 6f 20 73 70 65 63 69 66 |choose t|o specif|
|00000b20| 79 20 74 68 65 20 6c 65 | 6e 67 74 68 20 6f 66 20 |y the le|ngth of |
|00000b30| 74 68 65 20 73 74 72 69 | 6e 67 20 74 6f 20 62 65 |the stri|ng to be|
|00000b40| 20 61 73 73 69 67 6e 65 | 64 20 62 79 20 75 73 69 | assigne|d by usi|
|00000b50| 6e 67 20 07 0e cb a5 00 | 0e cb a5 00 00 00 00 00 |ng .....|........|
|00000b60| 73 76 5f 73 65 74 70 76 | 6e 08 65 6c 0e cc a5 00 |sv_setpv|n.el....|
|00000b70| 00 00 00 00 20 6f 72 20 | 07 6c 64 20 0e cd a5 00 |.... or |.ld ....|
|00000b80| 0e cd a5 00 00 00 00 00 | 00 a4 00 00 85 a0 00 00 |........|........|
|00000b90| 00 3c 95 07 94 f5 f4 ff | 74 24 f5 ff ba 1f 00 00 |.<......|t$......|
|00000ba0| 6e 65 77 53 56 70 76 08 | 0e ce a5 00 00 00 00 00 |newSVpv.|........|
|00000bb0| 2c 20 6f 72 20 79 6f 75 | 20 6d 61 79 20 61 6c 6c |, or you| may all|
|00000bc0| 6f 77 20 50 65 72 6c 20 | 74 6f 20 63 61 6c 63 75 |ow Perl |to calcu|
|00000bd0| 6c 61 74 65 20 74 68 65 | 20 6c 65 6e 67 74 68 20 |late the| length |
|00000be0| 62 79 20 75 73 69 6e 67 | 20 07 74 68 0e cf a5 00 |by using| .th....|
|00000bf0| 0e cf a5 00 00 00 00 00 | 73 76 5f 73 65 74 70 76 |........|sv_setpv|
|00000c00| 08 6e 20 53 0e d0 a5 00 | 00 00 00 00 20 6f 72 20 |.n S....|.... or |
|00000c10| 62 79 20 73 70 65 63 69 | 66 79 69 6e 67 20 30 20 |by speci|fying 0 |
|00000c20| 61 73 20 74 68 65 20 00 | 00 a0 00 00 85 a4 00 00 |as the .|........|
|00000c30| 00 38 99 07 6d bd f4 ff | 4d ec f4 ff 20 22 00 00 |.8..m...|M... "..|
|00000c40| 73 65 63 6f 6e 64 20 61 | 72 67 75 6d 65 6e 74 20 |second a|rgument |
|00000c50| 74 6f 20 07 0e d1 a5 00 | 0e d1 a5 00 00 00 00 00 |to .....|........|
|00000c60| 6e 65 77 53 56 70 76 08 | 0e d2 a5 00 00 00 00 00 |newSVpv.|........|
|00000c70| 2e 20 20 42 65 20 77 61 | 72 6e 65 64 2c 20 74 68 |. Be wa|rned, th|
|00000c80| 6f 75 67 68 2c 20 74 68 | 61 74 20 50 65 72 6c 20 |ough, th|at Perl |
|00000c90| 77 69 6c 6c 20 64 65 74 | 65 72 6d 69 6e 65 20 74 |will det|ermine t|
|00000ca0| 68 65 20 73 74 72 69 6e | 67 27 73 20 6c 65 6e 67 |he strin|g's leng|
|00000cb0| 74 68 20 62 79 20 75 73 | 69 6e 67 20 07 20 77 69 |th by us|ing . wi|
|00000cc0| 0e d3 a5 00 0e d3 a5 00 | 00 00 00 00 00 a4 00 00 |........|........|
|00000cd0| 85 a0 00 00 00 cc c5 07 | 46 85 f4 ff 26 b4 f4 ff |........|F...&...|
|00000ce0| ba 1f 00 00 73 74 72 6c | 65 6e 08 79 0e d4 a5 00 |....strl|en.y....|
|00000cf0| 00 00 00 00 2c 20 77 68 | 69 63 68 20 64 65 70 65 |...., wh|ich depe|
|00000d00| 6e 64 73 20 6f 6e 20 74 | 68 65 20 73 74 72 69 6e |nds on t|he strin|
|00000d10| 67 20 74 65 72 6d 69 6e | 61 74 69 6e 67 20 77 69 |g termin|ating wi|
|00000d20| 74 68 20 61 20 4e 55 4c | 20 63 68 61 72 61 63 74 |th a NUL| charact|
|00000d30| 65 72 2e 20 20 54 68 65 | 20 61 72 67 75 6d 65 6e |er. The| argumen|
|00000d40| 74 73 20 6f 66 20 07 6f | 0e d5 a5 00 0e d5 a5 00 |ts of .o|........|
|00000d50| 00 00 00 00 73 76 5f 73 | 65 74 70 76 66 08 69 73 |....sv_s|etpvf.is|
|00000d60| 0e d6 a5 00 00 00 00 00 | 20 00 00 00 00 a0 00 00 |........| .......|
|00000d70| a5 78 00 00 40 bc 77 05 | 1f 4d f4 ff ff 7b f4 ff |.x..@.w.|.M...{..|
|00000d80| 20 22 00 00 61 72 65 20 | 70 72 6f 63 65 73 73 65 | "..are |processe|
|00000d90| 64 20 6c 69 6b 65 20 07 | 0e d7 a5 00 0e d7 a5 00 |d like .|........|
|00000da0| 00 00 00 00 73 70 72 69 | 6e 74 66 08 0e d8 a5 00 |....spri|ntf.....|
|00000db0| 00 00 00 00 2c 20 61 6e | 64 20 74 68 65 20 66 6f |...., an|d the fo|
|00000dc0| 72 6d 61 74 74 65 64 20 | 6f 75 74 70 75 74 20 62 |rmatted |output b|
|00000dd0| 65 63 6f 6d 65 73 20 74 | 68 65 20 76 61 6c 75 65 |ecomes t|he value|
|00000de0| 2e 0d 00 00 00 78 00 00 | 01 10 00 00 00 f0 ef 07 |.....x..|........|
|00000df0| 00 00 00 00 00 10 00 00 | 02 14 00 00 64 02 00 00 |........|....d...|
|00000e00| 00 00 00 00 00 00 00 00 | 00 14 00 00 05 94 00 00 |........|........|
|00000e10| 00 f0 ef 07 cf 44 f2 ff | af 73 f2 ff 20 22 00 00 |.....D..|.s.. "..|
|00000e20| 16 00 00 00 b0 fc 07 00 | 00 00 00 00 41 6c 6c 20 |........|....All |
|00000e30| 53 56 73 20 74 68 61 74 | 20 77 69 6c 6c 20 63 6f |SVs that| will co|
|00000e40| 6e 74 61 69 6e 20 73 74 | 72 69 6e 67 73 20 73 68 |ntain st|rings sh|
|00000e50| 6f 75 6c 64 2c 20 62 75 | 74 20 6e 65 65 64 20 6e |ould, bu|t need n|
|00000e60| 6f 74 2c 20 62 65 20 74 | 65 72 6d 69 6e 61 74 65 |ot, be t|erminate|
|00000e70| 64 20 77 69 74 68 20 61 | 20 4e 55 4c 20 63 68 61 |d with a| NUL cha|
|00000e80| 72 61 63 74 65 72 2e 20 | 20 49 66 20 69 74 20 69 |racter. | If it i|
|00000e90| 73 20 6e 6f 74 20 4e 55 | 4c 2d 00 00 00 94 00 00 |s not NU|L-......|
|00000ea0| 05 88 00 00 00 70 e8 07 | a8 0c f2 ff 88 3b f2 ff |.....p..|.....;..|
|00000eb0| 20 22 00 00 74 65 72 6d | 69 6e 61 74 65 64 20 74 | "..term|inated t|
|00000ec0| 68 65 72 65 20 69 73 20 | 61 20 72 69 73 6b 20 6f |here is |a risk o|
|00000ed0| 66 20 63 6f 72 65 20 64 | 75 6d 70 73 20 61 6e 64 |f core d|umps and|
|00000ee0| 20 63 6f 72 72 75 70 74 | 69 6f 6e 73 20 66 72 6f | corrupt|ions fro|
|00000ef0| 6d 20 63 6f 64 65 20 77 | 68 69 63 68 20 70 61 73 |m code w|hich pas|
|00000f00| 73 65 73 20 74 68 65 20 | 73 74 72 69 6e 67 20 74 |ses the |string t|
|00000f10| 6f 20 43 20 66 75 6e 63 | 74 69 6f 6e 73 20 6f 72 |o C func|tions or|
|00000f20| 20 00 00 00 00 88 00 00 | 05 84 00 00 00 2c b7 07 | .......|.....,..|
|00000f30| 81 d4 f1 ff 61 03 f2 ff | 20 22 00 00 73 79 73 74 |....a...| "..syst|
|00000f40| 65 6d 20 63 61 6c 6c 73 | 20 77 68 69 63 68 20 65 |em calls| which e|
|00000f50| 78 70 65 63 74 20 61 20 | 4e 55 4c 2d 74 65 72 6d |xpect a |NUL-term|
|00000f60| 69 6e 61 74 65 64 20 73 | 74 72 69 6e 67 2e 20 50 |inated s|tring. P|
|00000f70| 65 72 6c 27 73 20 6f 77 | 6e 20 66 75 6e 63 74 69 |erl's ow|n functi|
|00000f80| 6f 6e 73 20 74 79 70 69 | 63 61 6c 6c 79 20 61 64 |ons typi|cally ad|
|00000f90| 64 20 61 20 74 72 61 69 | 6c 69 6e 67 20 4e 55 4c |d a trai|ling NUL|
|00000fa0| 20 66 6f 72 20 00 00 00 | 00 84 00 00 05 88 00 00 | for ...|........|
|00000fb0| 00 48 e6 07 5a 9c f1 ff | 3a cb f1 ff 20 22 00 00 |.H..Z...|:... "..|
|00000fc0| 74 68 69 73 20 72 65 61 | 73 6f 6e 2e 20 4e 65 76 |this rea|son. Nev|
|00000fd0| 65 72 74 68 65 6c 65 73 | 73 2c 20 79 6f 75 20 73 |ertheles|s, you s|
|00000fe0| 68 6f 75 6c 64 20 62 65 | 20 76 65 72 79 20 63 61 |hould be| very ca|
|00000ff0| 72 65 66 75 6c 20 77 68 | 65 6e 20 79 6f 75 20 70 |reful wh|en you p|
|00001000| 61 73 73 20 61 20 73 74 | 72 69 6e 67 20 73 74 6f |ass a st|ring sto|
|00001010| 72 65 64 20 69 6e 20 61 | 6e 20 53 56 20 74 6f 20 |red in a|n SV to |
|00001020| 61 20 43 20 66 75 6e 63 | 74 69 6f 6e 20 00 00 00 |a C func|tion ...|
|00001030| 00 88 00 00 a5 38 00 00 | 40 1c 10 01 33 64 f1 ff |.....8..|@...3d..|
|00001040| 13 93 f1 ff 20 22 00 00 | 6f 72 20 73 79 73 74 65 |.... "..|or syste|
|00001050| 6d 20 63 61 6c 6c 2e 0d | 07 4e 20 6e 14 d9 a5 00 |m call..|.N n....|
|00001060| 14 d9 a5 00 00 00 00 00 | 00 38 00 00 a5 90 00 00 |........|.8......|
|00001070| 40 4c 3f 05 5c f5 f0 ff | 3c 24 f1 ff 20 22 00 00 |@L?.\...|<$.. "..|
|00001080| 54 6f 20 61 63 63 65 73 | 73 20 74 68 65 20 61 63 |To acces|s the ac|
|00001090| 74 75 61 6c 20 76 61 6c | 75 65 20 74 68 61 74 20 |tual val|ue that |
|000010a0| 61 6e 20 53 56 20 70 6f | 69 6e 74 73 20 74 6f 2c |an SV po|ints to,|
|000010b0| 20 79 6f 75 20 63 61 6e | 20 75 73 65 20 74 68 65 | you can| use the|
|000010c0| 20 6d 61 63 72 6f 73 3a | 0d 08 6c 6f 14 00 00 00 | macros:|..lo....|
|000010d0| 00 00 00 00 07 66 20 73 | 12 da a5 00 12 da a5 00 |.....f s|........|
|000010e0| 00 00 00 00 07 6c 6c 20 | 0c db a5 00 12 da a5 00 |.....ll |........|
|000010f0| 0c db a5 00 00 00 00 00 | 00 90 00 00 25 24 00 00 |........|....%$..|
|00001100| 40 f0 d2 00 55 8e f0 ff | 65 b5 f0 ff 70 1a 00 00 |@...U...|e...p...|
|00001110| 53 76 49 56 28 53 56 2a | 29 0d 00 00 00 24 00 00 |SvIV(SV*|)....$..|
|00001120| 25 24 00 00 40 f0 d2 00 | 75 5f f0 ff 85 86 f0 ff |%$..@...|u_......|
|00001130| 70 1a 00 00 53 76 4e 56 | 28 53 56 2a 29 0d 00 00 |p...SvNV|(SV*)...|
|00001140| 00 24 00 00 a5 58 00 00 | 40 30 ec 01 95 30 f0 ff |.$...X..|@0...0..|
|00001150| a5 57 f0 ff 70 1a 00 00 | 53 76 50 56 28 53 56 2a |.W..p...|SvPV(SV*|
|00001160| 2c 20 53 54 52 4c 45 4e | 20 6c 65 6e 29 0d 08 20 |, STRLEN| len).. |
|00001170| 0c dc a5 00 12 da a5 00 | 00 00 00 00 08 53 56 20 |........|.....SV |
|00001180| 12 00 00 00 00 00 00 00 | 07 69 74 20 18 dd a5 00 |........|.it ....|
|00001190| 18 dd a5 00 00 00 00 00 | 00 58 00 00 a5 24 00 00 |........|.X...$..|
|000011a0| 40 00 00 00 05 1c f0 ff | c5 28 f0 ff 00 00 00 00 |@.......|.(......|
|000011b0| 0d 08 74 68 18 de a5 00 | 00 00 00 00 00 24 00 00 |..th....|.....$..|
|000011c0| 25 70 00 00 40 c0 09 06 | 35 c3 ef ff 15 f2 ef ff |%p..@...|5.......|
|000011d0| 20 22 00 00 77 68 69 63 | 68 20 77 69 6c 6c 20 61 | "..whic|h will a|
|000011e0| 75 74 6f 6d 61 74 69 63 | 61 6c 6c 79 20 63 6f 65 |utomatic|ally coe|
|000011f0| 72 63 65 20 74 68 65 20 | 61 63 74 75 61 6c 20 73 |rce the |actual s|
|00001200| 63 61 6c 61 72 20 74 79 | 70 65 20 69 6e 74 6f 20 |calar ty|pe into |
|00001210| 61 6e 20 49 56 2c 20 64 | 6f 75 62 6c 65 2c 20 6f |an IV, d|ouble, o|
|00001220| 72 20 73 74 72 69 6e 67 | 2e 0d 00 00 00 70 00 00 |r string|.....p..|
|00001230| 85 b8 00 00 00 00 dd 07 | 5e 54 ef ff 3e 83 ef ff |........|^T..>...|
|00001240| 20 22 00 00 49 6e 20 74 | 68 65 20 07 0e df a5 00 | "..In t|he .....|
|00001250| 0e df a5 00 00 00 00 00 | 53 76 50 56 08 73 20 73 |........|SvPV.s s|
|00001260| 0e e0 a5 00 00 00 00 00 | 20 6d 61 63 72 6f 2c 20 |........| macro, |
|00001270| 74 68 65 20 6c 65 6e 67 | 74 68 20 6f 66 20 74 68 |the leng|th of th|
|00001280| 65 20 73 74 72 69 6e 67 | 20 72 65 74 75 72 6e 65 |e string| returne|
|00001290| 64 20 69 73 20 70 6c 61 | 63 65 64 20 69 6e 74 6f |d is pla|ced into|
|000012a0| 20 74 68 65 20 76 61 72 | 69 61 62 6c 65 20 07 0d | the var|iable ..|
|000012b0| 0e e1 a5 00 0e e1 a5 00 | 00 00 00 00 6c 65 6e 08 |........|....len.|
|000012c0| 0e e2 a5 00 00 00 00 00 | 20 28 74 68 69 73 20 69 |........| (this i|
|000012d0| 73 20 61 20 6d 61 63 72 | 6f 2c 20 73 6f 20 79 6f |s a macr|o, so yo|
|000012e0| 75 20 00 00 00 b8 00 00 | 85 d0 00 00 00 6c e3 07 |u ......|.....l..|
|000012f0| 37 1c ef ff 17 4b ef ff | 20 22 00 00 64 6f 20 07 |7....K..| "..do .|
|00001300| 11 e3 a5 00 11 e3 a5 00 | 00 00 00 00 6e 6f 74 08 |........|....not.|
|00001310| 11 00 00 00 00 00 00 00 | 20 75 73 65 20 07 00 00 |........| use ...|
|00001320| 0e e4 a5 00 0e e4 a5 00 | 00 00 00 00 26 6c 65 6e |........|....&len|
|00001330| 08 fe a5 00 0e e5 a5 00 | 00 00 00 00 29 2e 20 20 |........|....). |
|00001340| 49 66 20 79 6f 75 20 64 | 6f 20 6e 6f 74 20 63 61 |If you d|o not ca|
|00001350| 72 65 20 77 68 61 74 20 | 74 68 65 20 6c 65 6e 67 |re what |the leng|
|00001360| 74 68 20 6f 66 20 74 68 | 65 20 64 61 74 61 20 69 |th of th|e data i|
|00001370| 73 2c 20 75 73 65 20 74 | 68 65 20 67 6c 6f 62 61 |s, use t|he globa|
|00001380| 6c 20 76 61 72 69 61 62 | 6c 65 20 07 0e e6 a5 00 |l variab|le .....|
|00001390| 0e e6 a5 00 00 00 00 00 | 6e 61 08 0d 0e e7 a5 00 |........|na......|
|000013a0| 00 00 00 00 2e 20 20 52 | 65 6d 65 6d 62 65 72 2c |..... R|emember,|
|000013b0| 20 00 00 00 00 d0 00 00 | 05 84 00 00 00 e4 da 07 | .......|........|
|000013c0| 10 e4 ee ff f0 12 ef ff | 20 22 00 00 68 6f 77 65 |........| "..howe|
|000013d0| 76 65 72 2c 20 74 68 61 | 74 20 50 65 72 6c 20 61 |ver, tha|t Perl a|
|000013e0| 6c 6c 6f 77 73 20 61 72 | 62 69 74 72 61 72 79 20 |llows ar|bitrary |
|000013f0| 73 74 72 69 6e 67 73 20 | 6f 66 20 64 61 74 61 20 |strings |of data |
|00001400| 74 68 61 74 20 6d 61 79 | 20 62 6f 74 68 20 63 6f |that may| both co|
|00001410| 6e 74 61 69 6e 20 4e 55 | 4c 73 20 61 6e 64 20 6d |ntain NU|Ls and m|
|00001420| 69 67 68 74 20 6e 6f 74 | 20 62 65 20 74 65 72 6d |ight not| be term|
|00001430| 69 6e 61 74 65 64 20 00 | 00 84 00 00 a5 30 00 00 |inated .|.....0..|
|00001440| 40 2c c7 00 e9 ab ee ff | c9 da ee ff 20 22 00 00 |@,......|.... "..|
|00001450| 62 79 20 61 20 4e 55 4c | 2e 0d 07 66 14 e8 a5 00 |by a NUL|...f....|
|00001460| 14 e8 a5 00 00 00 00 00 | 00 30 00 00 a5 84 00 00 |........|.0......|
|00001470| 40 d0 85 04 12 3d ee ff | f2 6b ee ff 20 22 00 00 |@....=..|.k.. "..|
|00001480| 49 66 20 79 6f 75 20 77 | 61 6e 74 20 74 6f 20 6b |If you w|ant to k|
|00001490| 6e 6f 77 20 69 66 20 74 | 68 65 20 73 63 61 6c 61 |now if t|he scala|
|000014a0| 72 20 76 61 6c 75 65 20 | 69 73 20 54 52 55 45 2c |r value |is TRUE,|
|000014b0| 20 79 6f 75 20 63 61 6e | 20 75 73 65 3a 0d 08 56 | you can| use:..V|
|000014c0| 14 00 00 00 00 00 00 00 | 07 05 a6 00 12 e9 a5 00 |........|........|
|000014d0| 12 e9 a5 00 00 00 00 00 | 07 00 00 00 0c ea a5 00 |........|........|
|000014e0| 12 e9 a5 00 0c ea a5 00 | 00 00 00 00 00 84 00 00 |........|........|
|000014f0| a5 50 00 00 40 d0 01 01 | 0b d6 ed ff 1b fd ed ff |.P..@...|........|
|00001500| 70 1a 00 00 53 76 54 52 | 55 45 28 53 56 2a 29 0d |p...SvTR|UE(SV*).|
|00001510| 08 74 68 72 0c eb a5 00 | 12 e9 a5 00 00 00 00 00 |.thr....|........|
|00001520| 08 20 76 61 12 00 00 00 | 00 00 00 00 07 69 66 20 |. va....|.....if |
|00001530| 18 ec a5 00 18 ec a5 00 | 00 00 00 00 00 50 00 00 |........|.....P..|
|00001540| a5 24 00 00 40 00 00 00 | 7b c1 ed ff 3b ce ed ff |.$..@...|{...;...|
|00001550| 00 00 00 00 0d 08 75 65 | 18 ed a5 00 00 00 00 00 |......ue|........|
|00001560| 00 24 00 00 05 88 00 00 | 00 e4 f2 07 ab 68 ed ff |.$......|.....h..|
|00001570| 8b 97 ed ff 20 22 00 00 | 41 6c 74 68 6f 75 67 68 |.... "..|Although|
|00001580| 20 50 65 72 6c 20 77 69 | 6c 6c 20 61 75 74 6f 6d | Perl wi|ll autom|
|00001590| 61 74 69 63 61 6c 6c 79 | 20 67 72 6f 77 20 73 74 |atically| grow st|
|000015a0| 72 69 6e 67 73 20 66 6f | 72 20 79 6f 75 2c 20 69 |rings fo|r you, i|
|000015b0| 66 20 79 6f 75 20 6e 65 | 65 64 20 74 6f 20 66 6f |f you ne|ed to fo|
|000015c0| 72 63 65 20 50 65 72 6c | 20 74 6f 20 61 6c 6c 6f |rce Perl| to allo|
|000015d0| 63 61 74 65 20 6d 6f 72 | 65 20 6d 65 6d 6f 72 79 |cate mor|e memory|
|000015e0| 20 66 6f 72 20 00 00 00 | 00 88 00 00 a5 58 00 00 | for ...|.....X..|
|000015f0| 40 18 52 02 84 30 ed ff | 64 5f ed ff 20 22 00 00 |@.R..0..|d_.. "..|
|00001600| 79 6f 75 72 20 53 56 2c | 20 79 6f 75 20 63 61 6e |your SV,| you can|
|00001610| 20 75 73 65 20 74 68 65 | 20 6d 61 63 72 6f 0d 07 | use the| macro..|
|00001620| 12 ee a5 00 12 ee a5 00 | 00 00 00 00 07 76 28 53 |........|.....v(S|
|00001630| 0c ef a5 00 12 ee a5 00 | 0c ef a5 00 00 00 00 00 |........|........|
|00001640| 00 58 00 00 a5 5c 00 00 | 40 60 61 02 7d c9 ec ff |.X...\..|@`a.}...|
|00001650| 8d f0 ec ff 70 1a 00 00 | 53 76 47 52 4f 57 28 53 |....p...|SvGROW(S|
|00001660| 56 2a 2c 20 53 54 52 4c | 45 4e 20 6e 65 77 6c 65 |V*, STRL|EN newle|
|00001670| 6e 29 0d 08 0c f0 a5 00 | 12 ee a5 00 00 00 00 00 |n)......|........|
|00001680| 08 2e 2e 29 12 00 00 00 | 00 00 00 00 07 76 5f 63 |...)....|.....v_c|
|00001690| 18 f1 a5 00 18 f1 a5 00 | 00 00 00 00 00 5c 00 00 |........|.....\..|
|000016a0| a5 24 00 00 40 00 00 00 | ed b4 ec ff ad c1 ec ff |.$..@...|........|
|000016b0| 00 00 00 00 0d 08 00 00 | 18 f2 a5 00 00 00 00 00 |........|........|
|000016c0| 00 24 00 00 85 9c 00 00 | 00 74 e7 07 1d 5c ec ff |.$......|.t...\..|
|000016d0| fd 8a ec ff 20 22 00 00 | 77 68 69 63 68 20 77 69 |.... "..|which wi|
|000016e0| 6c 6c 20 64 65 74 65 72 | 6d 69 6e 65 20 69 66 20 |ll deter|mine if |
|000016f0| 6d 6f 72 65 20 6d 65 6d | 6f 72 79 20 6e 65 65 64 |more mem|ory need|
|00001700| 73 20 74 6f 20 62 65 20 | 61 6c 6c 6f 63 61 74 65 |s to be |allocate|
|00001710| 64 2e 20 20 49 66 20 73 | 6f 2c 20 69 74 20 77 69 |d. If s|o, it wi|
|00001720| 6c 6c 20 63 61 6c 6c 20 | 74 68 65 20 66 75 6e 63 |ll call |the func|
|00001730| 74 69 6f 6e 20 07 a5 00 | 0e f3 a5 00 0e f3 a5 00 |tion ...|........|
|00001740| 00 00 00 00 73 76 5f 67 | 72 6f 77 08 0e f4 a5 00 |....sv_g|row.....|
|00001750| 00 00 00 00 2e 20 20 4e | 6f 74 65 20 00 9c 00 00 |..... N|ote ....|
|00001760| 85 94 00 00 00 ec 1b 07 | f6 23 ec ff d6 52 ec ff |........|.#...R..|
|00001770| 20 22 00 00 74 68 61 74 | 20 07 65 20 0e f5 a5 00 | "..that| .e ....|
|00001780| 0e f5 a5 00 00 00 00 00 | 53 76 47 52 4f 57 08 63 |........|SvGROW.c|
|00001790| 0e f6 a5 00 00 00 00 00 | 20 63 61 6e 20 6f 6e 6c |........| can onl|
|000017a0| 79 20 69 6e 63 72 65 61 | 73 65 2c 20 6e 6f 74 20 |y increa|se, not |
|000017b0| 64 65 63 72 65 61 73 65 | 2c 20 74 68 65 20 61 6c |decrease|, the al|
|000017c0| 6c 6f 63 61 74 65 64 20 | 6d 65 6d 6f 72 79 20 6f |located |memory o|
|000017d0| 66 20 61 6e 20 53 56 20 | 61 6e 64 20 74 68 61 74 |f an SV |and that|
|000017e0| 20 69 74 20 64 6f 65 73 | 20 6e 6f 74 20 00 00 00 | it does| not ...|
|000017f0| 00 94 00 00 85 8c 00 00 | 00 48 8c 07 cf eb eb ff |........|.H......|
|00001800| af 1a ec ff 20 22 00 00 | 61 75 74 6f 6d 61 74 69 |.... "..|automati|
|00001810| 63 61 6c 6c 79 20 61 64 | 64 20 61 20 62 79 74 65 |cally ad|d a byte|
|00001820| 20 66 6f 72 20 74 68 65 | 20 61 20 74 72 61 69 6c | for the| a trail|
|00001830| 69 6e 67 20 4e 55 4c 20 | 28 70 65 72 6c 27 73 20 |ing NUL |(perl's |
|00001840| 6f 77 6e 20 73 74 72 69 | 6e 67 20 66 75 6e 63 74 |own stri|ng funct|
|00001850| 69 6f 6e 73 20 74 79 70 | 69 63 61 6c 6c 79 20 64 |ions typ|ically d|
|00001860| 6f 20 07 05 0e f7 a5 00 | 0e f7 a5 00 00 00 00 00 |o ......|........|
|00001870| 53 76 47 52 4f 57 28 73 | 76 2c 20 00 00 8c 00 00 |SvGROW(s|v, .....|
|00001880| a5 30 00 00 40 54 fc 00 | a8 b3 eb ff 88 e2 eb ff |.0..@T..|........|
|00001890| ba 1f 00 00 6c 65 6e 20 | 2b 20 31 29 08 6c 65 20 |....len |+ 1).le |
|000018a0| 0e f8 a5 00 00 00 00 00 | 29 2e 0d 00 00 30 00 00 |........|)....0..|
|000018b0| 05 84 00 00 00 90 d1 07 | d1 44 eb ff b1 73 eb ff |........|.D...s..|
|000018c0| 20 22 00 00 49 66 20 79 | 6f 75 20 68 61 76 65 20 | "..If y|ou have |
|000018d0| 61 6e 20 53 56 20 61 6e | 64 20 77 61 6e 74 20 74 |an SV an|d want t|
|000018e0| 6f 20 6b 6e 6f 77 20 77 | 68 61 74 20 6b 69 6e 64 |o know w|hat kind|
|000018f0| 20 6f 66 20 64 61 74 61 | 20 50 65 72 6c 20 74 68 | of data| Perl th|
|00001900| 69 6e 6b 73 20 69 73 20 | 73 74 6f 72 65 64 20 69 |inks is |stored i|
|00001910| 6e 20 69 74 2c 20 79 6f | 75 20 63 61 6e 20 75 73 |n it, yo|u can us|
|00001920| 65 20 74 68 65 20 66 6f | 6c 6c 6f 77 69 6e 67 20 |e the fo|llowing |
|00001930| 00 84 00 00 a5 64 00 00 | 40 8c 0d 03 aa 0c eb ff |.....d..|@.......|
|00001940| 8a 3b eb ff 20 22 00 00 | 6d 61 63 72 6f 73 20 74 |.;.. "..|macros t|
|00001950| 6f 20 63 68 65 63 6b 20 | 74 68 65 20 74 79 70 65 |o check |the type|
|00001960| 20 6f 66 20 53 56 20 79 | 6f 75 20 68 61 76 65 2e | of SV y|ou have.|
|00001970| 0d 07 69 6e 12 f9 a5 00 | 12 f9 a5 00 00 00 00 00 |..in....|........|
|00001980| 07 75 6c 61 0c fa a5 00 | 12 f9 a5 00 0c fa a5 00 |.ula....|........|
|00001990| 00 00 00 00 00 64 00 00 | 25 24 00 00 40 60 ea 00 |.....d..|%$..@`..|
|000019a0| a3 a5 ea ff b3 cc ea ff | 70 1a 00 00 53 76 49 4f |........|p...SvIO|
|000019b0| 4b 28 53 56 2a 29 0d 00 | 00 24 00 00 25 24 00 00 |K(SV*)..|.$..%$..|
|000019c0| 40 60 ea 00 c3 76 ea ff | d3 9d ea ff 70 1a 00 00 |@`...v..|....p...|
|000019d0| 53 76 4e 4f 4b 28 53 56 | 2a 29 0d 00 00 24 00 00 |SvNOK(SV|*)...$..|
|000019e0| a5 4c 00 00 40 60 ea 00 | e3 47 ea ff f3 6e ea ff |.L..@`..|.G...n..|
|000019f0| 70 1a 00 00 53 76 50 4f | 4b 28 53 56 2a 29 0d 08 |p...SvPO|K(SV*)..|
|00001a00| 0c fb a5 00 12 f9 a5 00 | 00 00 00 00 08 20 67 75 |........|..... gu|
|00001a10| 12 00 00 00 00 00 00 00 | 07 74 6f 20 18 fc a5 00 |........|.to ....|
|00001a20| 18 fc a5 00 00 00 00 00 | 00 4c 00 00 a5 34 00 00 |........|.L...4..|
|00001a30| 40 00 00 00 53 33 ea ff | 13 40 ea ff 00 00 00 00 |@...S3..|.@......|
|00001a40| 0d 08 77 65 18 fd a5 00 | 00 00 00 00 07 69 6e 74 |..we....|.....int|
|00001a50| 14 fe a5 00 14 fe a5 00 | 00 00 00 00 00 34 00 00 |........|.....4..|
|00001a60| a5 a8 00 00 40 14 e5 06 | 83 da e9 ff 63 09 ea ff |....@...|....c...|
|00001a70| 20 22 00 00 59 6f 75 20 | 63 61 6e 20 67 65 74 20 | "..You |can get |
|00001a80| 61 6e 64 20 73 65 74 20 | 74 68 65 20 63 75 72 72 |and set |the curr|
|00001a90| 65 6e 74 20 6c 65 6e 67 | 74 68 20 6f 66 20 74 68 |ent leng|th of th|
|00001aa0| 65 20 73 74 72 69 6e 67 | 20 73 74 6f 72 65 64 20 |e string| stored |
|00001ab0| 69 6e 20 61 6e 20 53 56 | 20 77 69 74 68 20 74 68 |in an SV| with th|
|00001ac0| 65 20 66 6f 6c 6c 6f 77 | 69 6e 67 20 6d 61 63 72 |e follow|ing macr|
|00001ad0| 6f 73 3a 0d 08 bd a5 00 | 14 00 00 00 00 00 00 00 |os:.....|........|
|00001ae0| 07 6e 67 20 12 ff a5 00 | 12 ff a5 00 00 00 00 00 |.ng ....|........|
|00001af0| 07 be a5 00 0c 00 a6 00 | 12 ff a5 00 0c 00 a6 00 |........|........|
|00001b00| 00 00 00 00 00 a8 00 00 | 25 24 00 00 40 60 ea 00 |........|%$..@`..|
|00001b10| 7c 73 e9 ff 8c 9a e9 ff | 70 1a 00 00 53 76 43 55 ||s......|p...SvCU|
|00001b20| 52 28 53 56 2a 29 0d 00 | 00 24 00 00 a5 5c 00 00 |R(SV*)..|.$...\..|
|00001b30| 40 10 1b 02 9c 44 e9 ff | ac 6b e9 ff 70 1a 00 00 |@....D..|.k..p...|
|00001b40| 53 76 43 55 52 5f 73 65 | 74 28 53 56 2a 2c 20 49 |SvCUR_se|t(SV*, I|
|00001b50| 33 32 20 76 61 6c 29 0d | 08 64 65 64 0c 01 a6 00 |32 val).|.ded....|
|00001b60| 12 ff a5 00 00 00 00 00 | 08 76 61 6c 12 00 00 00 |........|.val....|
|00001b70| 00 00 00 00 07 61 20 64 | 18 02 a6 00 18 02 a6 00 |.....a d|........|
|00001b80| 00 00 00 00 00 5c 00 00 | a5 34 00 00 40 00 00 00 |.....\..|.4..@...|
|00001b90| 0c 30 e9 ff cc 3c e9 ff | 00 00 00 00 0d 08 72 20 |.0...<..|......r |
|00001ba0| 18 03 a6 00 00 00 00 00 | 07 56 29 2e 14 04 a6 00 |........|.V).....|
|00001bb0| 14 04 a6 00 00 00 00 00 | 00 34 00 00 a5 9c 00 00 |........|.4......|
|00001bc0| 40 28 05 06 3c d7 e8 ff | 1c 06 e9 ff 20 22 00 00 |@(..<...|.... "..|
|00001bd0| 59 6f 75 20 63 61 6e 20 | 61 6c 73 6f 20 67 65 74 |You can |also get|
|00001be0| 20 61 20 70 6f 69 6e 74 | 65 72 20 74 6f 20 74 68 | a point|er to th|
|00001bf0| 65 20 65 6e 64 20 6f 66 | 20 74 68 65 20 73 74 72 |e end of| the str|
|00001c00| 69 6e 67 20 73 74 6f 72 | 65 64 20 69 6e 20 74 68 |ing stor|ed in th|
|00001c10| 65 20 53 56 20 77 69 74 | 68 20 74 68 65 20 6d 61 |e SV wit|h the ma|
|00001c20| 63 72 6f 3a 0d 08 3b 0d | 14 00 00 00 00 00 00 00 |cro:..;.|........|
|00001c30| 07 56 70 76 12 05 a6 00 | 12 05 a6 00 00 00 00 00 |.Vpv....|........|
|00001c40| 07 0d 53 56 0c 06 a6 00 | 12 05 a6 00 0c 06 a6 00 |..SV....|........|
|00001c50| 00 00 00 00 00 9c 00 00 | a5 4c 00 00 40 60 ea 00 |........|.L..@`..|
|00001c60| 35 70 e8 ff 45 97 e8 ff | 70 1a 00 00 53 76 45 4e |5p..E...|p...SvEN|
|00001c70| 44 28 53 56 2a 29 0d 08 | 0c 07 a6 00 12 05 a6 00 |D(SV*)..|........|
|00001c80| 00 00 00 00 08 05 05 05 | 12 00 00 00 00 00 00 00 |........|........|
|00001c90| 07 05 05 05 18 08 a6 00 | 18 08 a6 00 00 00 00 00 |........|........|
|00001ca0| 00 4c 00 00 a5 24 00 00 | 40 00 00 00 a5 5b e8 ff |.L...$..|@....[..|
|00001cb0| 65 68 e8 ff 00 00 00 00 | 0d 08 00 00 18 09 a6 00 |eh......|........|
|00001cc0| 00 00 00 00 00 24 00 00 | a5 88 00 00 40 58 39 05 |.....$..|....@X9.|
|00001cd0| d5 02 e8 ff b5 31 e8 ff | 20 22 00 00 42 75 74 20 |.....1..| "..But |
|00001ce0| 6e 6f 74 65 20 74 68 61 | 74 20 74 68 65 73 65 20 |note tha|t these |
|00001cf0| 6c 61 73 74 20 74 68 72 | 65 65 20 6d 61 63 72 6f |last thr|ee macro|
|00001d00| 73 20 61 72 65 20 76 61 | 6c 69 64 20 6f 6e 6c 79 |s are va|lid only|
|00001d10| 20 69 66 20 07 c6 a5 00 | 0e 0a a6 00 0e 0a a6 00 | if ....|........|
|00001d20| 00 00 00 00 53 76 50 4f | 4b 28 29 08 0e 0b a6 00 |....SvPO|K().....|
|00001d30| 00 00 00 00 20 69 73 20 | 74 72 75 65 2e 0d 07 74 |.... is |true...t|
|00001d40| 14 0c a6 00 14 0c a6 00 | 00 00 00 00 00 88 00 00 |........|........|
|00001d50| 01 10 00 00 41 c8 e1 07 | 00 00 00 00 00 10 00 00 |....A...|........|
|00001d60| 02 18 00 00 00 04 00 00 | 00 00 00 00 14 0c a6 00 |........|........|
|00001d70| 00 00 00 00 00 18 00 00 | a5 dc 00 00 40 c8 e1 07 |........|....@...|
|00001d80| 1e 45 e5 ff fe 73 e5 ff | 20 22 00 00 16 00 00 00 |.E...s..| "......|
|00001d90| b0 fc 07 00 00 00 00 00 | 49 66 20 79 6f 75 20 77 |........|If you w|
|00001da0| 61 6e 74 20 74 6f 20 61 | 70 70 65 6e 64 20 73 6f |ant to a|ppend so|
|00001db0| 6d 65 74 68 69 6e 67 20 | 74 6f 20 74 68 65 20 65 |mething |to the e|
|00001dc0| 6e 64 20 6f 66 20 73 74 | 72 69 6e 67 20 73 74 6f |nd of st|ring sto|
|00001dd0| 72 65 64 20 69 6e 20 61 | 6e 20 07 6f 0e 0d a6 00 |red in a|n .o....|
|00001de0| 14 0c a6 00 0e 0d a6 00 | 00 00 00 00 53 56 2a 08 |........|....SV*.|
|00001df0| 0e 0e a6 00 14 0c a6 00 | 00 00 00 00 2c 20 79 6f |........|...., yo|
|00001e00| 75 20 63 61 6e 20 75 73 | 65 20 74 68 65 20 66 6f |u can us|e the fo|
|00001e10| 6c 6c 6f 77 69 6e 67 20 | 66 75 6e 63 74 69 6f 6e |llowing |function|
|00001e20| 73 3a 0d 08 14 00 00 00 | 00 00 00 00 07 00 00 00 |s:......|........|
|00001e30| 12 0f a6 00 12 0f a6 00 | 00 00 00 00 07 63 61 74 |........|.....cat|
|00001e40| 0c 10 a6 00 12 0f a6 00 | 0c 10 a6 00 00 00 00 00 |........|........|
|00001e50| 00 dc 00 00 25 34 00 00 | 40 d0 78 02 17 de e4 ff |....%4..|@.x.....|
|00001e60| 27 05 e5 ff 70 1a 00 00 | 76 6f 69 64 20 20 73 76 |'...p...|void sv|
|00001e70| 5f 63 61 74 70 76 28 53 | 56 2a 2c 20 63 68 61 72 |_catpv(S|V*, char|
|00001e80| 2a 29 3b 0d 00 34 00 00 | 25 3c 00 00 40 70 05 03 |*);..4..|%<..@p..|
|00001e90| 37 af e4 ff 47 d6 e4 ff | 70 1a 00 00 76 6f 69 64 |7...G...|p...void|
|00001ea0| 20 20 73 76 5f 63 61 74 | 70 76 6e 28 53 56 2a 2c | sv_cat|pvn(SV*,|
|00001eb0| 20 63 68 61 72 2a 2c 20 | 69 6e 74 29 3b 0d 00 00 | char*, |int);...|
|00001ec0| 00 3c 00 00 25 40 00 00 | 40 10 92 03 57 80 e4 ff |.<..%@..|@...W...|
|00001ed0| 67 a7 e4 ff 70 1a 00 00 | 76 6f 69 64 20 20 73 76 |g...p...|void sv|
|00001ee0| 5f 63 61 74 70 76 66 28 | 53 56 2a 2c 20 63 6f 6e |_catpvf(|SV*, con|
|00001ef0| 73 74 20 63 68 61 72 2a | 2c 20 2e 2e 2e 29 3b 0d |st char*|, ...);.|
|00001f00| 00 40 00 00 a5 5c 00 00 | 40 f0 49 02 77 51 e4 ff |.@...\..|@.I.wQ..|
|00001f10| 87 78 e4 ff 70 1a 00 00 | 76 6f 69 64 20 20 73 76 |.x..p...|void sv|
|00001f20| 5f 63 61 74 73 76 28 53 | 56 2a 2c 20 53 56 2a 29 |_catsv(S|V*, SV*)|
|00001f30| 3b 0d 08 73 0c 11 a6 00 | 12 0f a6 00 00 00 00 00 |;..s....|........|
|00001f40| 08 74 20 74 12 00 00 00 | 00 00 00 00 07 d1 a5 00 |.t t....|........|
|00001f50| 18 12 a6 00 18 12 a6 00 | 00 00 00 00 00 5c 00 00 |........|.....\..|
|00001f60| a5 24 00 00 40 00 00 00 | e7 3c e4 ff a7 49 e4 ff |.$..@...|.<...I..|
|00001f70| 00 00 00 00 0d 08 67 68 | 18 13 a6 00 00 00 00 00 |......gh|........|
|00001f80| 00 24 00 00 85 9c 00 00 | 00 80 c3 07 17 e4 e3 ff |.$......|........|
|00001f90| f7 12 e4 ff 20 22 00 00 | 54 68 65 20 66 69 72 73 |.... "..|The firs|
|00001fa0| 74 20 66 75 6e 63 74 69 | 6f 6e 20 63 61 6c 63 75 |t functi|on calcu|
|00001fb0| 6c 61 74 65 73 20 74 68 | 65 20 6c 65 6e 67 74 68 |lates th|e length|
|00001fc0| 20 6f 66 20 74 68 65 20 | 73 74 72 69 6e 67 20 74 | of the |string t|
|00001fd0| 6f 20 62 65 20 61 70 70 | 65 6e 64 65 64 20 62 79 |o be app|ended by|
|00001fe0| 20 75 73 69 6e 67 20 07 | 0e 14 a6 00 0e 14 a6 00 | using .|........|
|00001ff0| 00 00 00 00 73 74 72 6c | 65 6e 08 69 0e 15 a6 00 |....strl|en.i....|
|00002000| 00 00 00 00 2e 20 20 49 | 6e 20 74 68 65 20 73 65 |..... I|n the se|
|00002010| 63 6f 6e 64 2c 20 79 6f | 75 20 00 00 00 9c 00 00 |cond, yo|u ......|
|00002020| 85 9c 00 00 00 d8 8f 07 | f0 ab e3 ff d0 da e3 ff |........|........|
|00002030| 20 22 00 00 73 70 65 63 | 69 66 79 20 74 68 65 20 | "..spec|ify the |
|00002040| 6c 65 6e 67 74 68 20 6f | 66 20 74 68 65 20 73 74 |length o|f the st|
|00002050| 72 69 6e 67 20 79 6f 75 | 72 73 65 6c 66 2e 20 20 |ring you|rself. |
|00002060| 54 68 65 20 74 68 69 72 | 64 20 66 75 6e 63 74 69 |The thir|d functi|
|00002070| 6f 6e 20 70 72 6f 63 65 | 73 73 65 73 20 69 74 73 |on proce|sses its|
|00002080| 20 61 72 67 75 6d 65 6e | 74 73 20 6c 69 6b 65 20 | argumen|ts like |
|00002090| 07 74 20 62 0e 16 a6 00 | 0e 16 a6 00 00 00 00 00 |.t b....|........|
|000020a0| 73 70 72 69 6e 74 66 08 | 0e 17 a6 00 00 00 00 00 |sprintf.|........|
|000020b0| 20 61 6e 64 20 00 00 00 | 00 9c 00 00 05 88 00 00 | and ...|........|
|000020c0| 00 04 b8 07 c9 73 e3 ff | a9 a2 e3 ff 20 22 00 00 |.....s..|.... "..|
|000020d0| 61 70 70 65 6e 64 73 20 | 74 68 65 20 66 6f 72 6d |appends |the form|
|000020e0| 61 74 74 65 64 20 6f 75 | 74 70 75 74 2e 20 20 54 |atted ou|tput. T|
|000020f0| 68 65 20 66 6f 75 72 74 | 68 20 66 75 6e 63 74 69 |he fourt|h functi|
|00002100| 6f 6e 20 65 78 74 65 6e | 64 73 20 74 68 65 20 73 |on exten|ds the s|
|00002110| 74 72 69 6e 67 20 73 74 | 6f 72 65 64 20 69 6e 20 |tring st|ored in |
|00002120| 74 68 65 20 66 69 72 73 | 74 20 53 56 20 77 69 74 |the firs|t SV wit|
|00002130| 68 20 74 68 65 20 73 74 | 72 69 6e 67 20 00 00 00 |h the st|ring ...|
|00002140| 00 88 00 00 a5 7c 00 00 | 40 9c fa 05 a2 3b e3 ff |.....|..|@....;..|
|00002150| 82 6a e3 ff 20 22 00 00 | 73 74 6f 72 65 64 20 69 |.j.. "..|stored i|
|00002160| 6e 20 74 68 65 20 73 65 | 63 6f 6e 64 20 53 56 2e |n the se|cond SV.|
|00002170| 20 20 49 74 20 61 6c 73 | 6f 20 66 6f 72 63 65 73 | It als|o forces|
|00002180| 20 74 68 65 20 73 65 63 | 6f 6e 64 20 53 56 20 74 | the sec|ond SV t|
|00002190| 6f 20 62 65 20 69 6e 74 | 65 72 70 72 65 74 65 64 |o be int|erpreted|
|000021a0| 20 61 73 20 61 20 73 74 | 72 69 6e 67 2e 0d 07 69 | as a st|ring...i|
|000021b0| 14 18 a6 00 14 18 a6 00 | 00 00 00 00 00 7c 00 00 |........|.....|..|
|000021c0| a5 a8 00 00 40 e8 19 07 | cb cc e2 ff ab fb e2 ff |....@...|........|
|000021d0| 20 22 00 00 49 66 20 79 | 6f 75 20 6b 6e 6f 77 20 | "..If y|ou know |
|000021e0| 74 68 65 20 6e 61 6d 65 | 20 6f 66 20 61 20 73 63 |the name| of a sc|
|000021f0| 61 6c 61 72 20 76 61 72 | 69 61 62 6c 65 2c 20 79 |alar var|iable, y|
|00002200| 6f 75 20 63 61 6e 20 67 | 65 74 20 61 20 70 6f 69 |ou can g|et a poi|
|00002210| 6e 74 65 72 20 74 6f 20 | 69 74 73 20 53 56 20 62 |nter to |its SV b|
|00002220| 79 20 75 73 69 6e 67 20 | 74 68 65 20 66 6f 6c 6c |y using |the foll|
|00002230| 6f 77 69 6e 67 3a 0d 08 | 14 00 00 00 00 00 00 00 |owing:..|........|
|00002240| 07 61 6e 20 12 19 a6 00 | 12 19 a6 00 00 00 00 00 |.an ....|........|
|00002250| 07 63 74 69 0c 1a a6 00 | 12 19 a6 00 0c 1a a6 00 |.cti....|........|
|00002260| 00 00 00 00 00 a8 00 00 | a5 70 00 00 40 40 07 04 |........|.p..@@..|
|00002270| c4 65 e2 ff d4 8c e2 ff | 70 1a 00 00 53 56 2a 20 |.e......|p...SV* |
|00002280| 20 70 65 72 6c 5f 67 65 | 74 5f 73 76 28 22 70 61 | perl_ge|t_sv("pa|
|00002290| 63 6b 61 67 65 3a 3a 76 | 61 72 6e 61 6d 65 22 2c |ckage::v|arname",|
|000022a0| 20 46 41 4c 53 45 29 3b | 0d 08 61 6e 0c 1b a6 00 | FALSE);|..an....|
|000022b0| 12 19 a6 00 00 00 00 00 | 08 6f 73 3a 12 00 00 00 |........|.os:....|
|000022c0| 00 00 00 00 07 00 00 00 | 18 1c a6 00 18 1c a6 00 |........|........|
|000022d0| 00 00 00 00 00 70 00 00 | a5 24 00 00 40 00 00 00 |.....p..|.$..@...|
|000022e0| 34 51 e2 ff f4 5d e2 ff | 00 00 00 00 0d 08 49 56 |4Q...]..|......IV|
|000022f0| 18 1d a6 00 00 00 00 00 | 00 24 00 00 a5 58 00 00 |........|.$...X..|
|00002300| 40 80 91 03 64 f8 e1 ff | 44 27 e2 ff 20 22 00 00 |@...d...|D'.. "..|
|00002310| 54 68 69 73 20 72 65 74 | 75 72 6e 73 20 4e 55 4c |This ret|urns NUL|
|00002320| 4c 20 69 66 20 74 68 65 | 20 76 61 72 69 61 62 6c |L if the| variabl|
|00002330| 65 20 64 6f 65 73 20 6e | 6f 74 20 65 78 69 73 74 |e does n|ot exist|
|00002340| 2e 0d 07 05 14 1e a6 00 | 14 1e a6 00 00 00 00 00 |........|........|
|00002350| 00 58 00 00 a5 c0 00 00 | 40 68 8e 06 8d 89 e1 ff |.X......|@h......|
|00002360| 6d b8 e1 ff 20 22 00 00 | 49 66 20 79 6f 75 20 77 |m... "..|If you w|
|00002370| 61 6e 74 20 74 6f 20 6b | 6e 6f 77 20 69 66 20 74 |ant to k|now if t|
|00002380| 68 69 73 20 76 61 72 69 | 61 62 6c 65 20 28 6f 72 |his vari|able (or|
|00002390| 20 61 6e 79 20 6f 74 68 | 65 72 20 53 56 29 20 69 | any oth|er SV) i|
|000023a0| 73 20 61 63 74 75 61 6c | 6c 79 20 07 0e 1f a6 00 |s actual|ly .....|
|000023b0| 14 1e a6 00 0e 1f a6 00 | 00 00 00 00 64 65 66 69 |........|....defi|
|000023c0| 6e 65 64 08 0e 20 a6 00 | 14 1e a6 00 00 00 00 00 |ned.. ..|........|
|000023d0| 2c 20 79 6f 75 20 63 61 | 6e 20 63 61 6c 6c 3a 0d |, you ca|n call:.|
|000023e0| 08 20 73 74 14 00 00 00 | 00 00 00 00 07 72 6e 65 |. st....|.....rne|
|000023f0| 12 21 a6 00 12 21 a6 00 | 00 00 00 00 07 6e 74 6f |.!...!..|.....nto|
|00002400| 0c 22 a6 00 12 21 a6 00 | 0c 22 a6 00 00 00 00 00 |."...!..|."......|
|00002410| 00 c0 00 00 a5 4c 00 00 | 40 f0 d2 00 86 22 e1 ff |.....L..|@...."..|
|00002420| 96 49 e1 ff 70 1a 00 00 | 53 76 4f 4b 28 53 56 2a |.I..p...|SvOK(SV*|
|00002430| 29 0d 08 20 0c 23 a6 00 | 12 21 a6 00 00 00 00 00 |).. .#..|.!......|
|00002440| 08 20 64 6f 12 00 00 00 | 00 00 00 00 07 e3 a5 00 |. do....|........|
|00002450| 18 24 a6 00 18 24 a6 00 | 00 00 00 00 00 4c 00 00 |.$...$..|.....L..|
|00002460| a5 24 00 00 40 00 00 00 | f6 0d e1 ff b6 1a e1 ff |.$..@...|........|
|00002470| 00 00 00 00 0d 08 65 6e | 18 25 a6 00 00 00 00 00 |......en|.%......|
|00002480| 00 24 00 00 85 b0 00 00 | 00 10 c4 07 26 b5 e0 ff |.$......|....&...|
|00002490| 06 e4 e0 ff 20 22 00 00 | 54 68 65 20 73 63 61 6c |.... "..|The scal|
|000024a0| 61 72 20 07 0e 26 a6 00 | 0e 26 a6 00 00 00 00 00 |ar ..&..|.&......|
|000024b0| 75 6e 64 65 66 08 20 69 | 0e 27 a6 00 00 00 00 00 |undef. i|.'......|
|000024c0| 20 76 61 6c 75 65 20 69 | 73 20 73 74 6f 72 65 64 | value i|s stored|
|000024d0| 20 69 6e 20 61 6e 20 53 | 56 20 69 6e 73 74 61 6e | in an S|V instan|
|000024e0| 63 65 20 63 61 6c 6c 65 | 64 20 07 00 0e 28 a6 00 |ce calle|d ...(..|
|000024f0| 0e 28 a6 00 00 00 00 00 | 73 76 5f 75 6e 64 65 66 |.(......|sv_undef|
|00002500| 08 20 74 68 0e 29 a6 00 | 00 00 00 00 2e 20 20 49 |. th.)..|..... I|
|00002510| 74 73 20 61 64 64 72 65 | 73 73 20 63 61 6e 20 62 |ts addre|ss can b|
|00002520| 65 20 75 73 65 64 20 77 | 68 65 6e 65 76 65 72 20 |e used w|henever |
|00002530| 00 b0 00 00 a5 40 00 00 | 40 84 53 01 ff 7c e0 ff |.....@..|@.S..|..|
|00002540| df ab e0 ff 20 22 00 00 | 61 6e 20 07 0e 2a a6 00 |.... "..|an ..*..|
|00002550| 0e 2a a6 00 00 00 00 00 | 53 56 2a 08 0e 2b a6 00 |.*......|SV*..+..|
|00002560| 00 00 00 00 20 69 73 20 | 6e 65 65 64 65 64 2e 0d |.... is |needed..|
|00002570| 00 40 00 00 85 a8 00 00 | 00 48 83 07 28 0e e0 ff |.@......|.H..(...|
|00002580| 08 3d e0 ff 20 22 00 00 | 54 68 65 72 65 20 61 72 |.=.. "..|There ar|
|00002590| 65 20 61 6c 73 6f 20 74 | 68 65 20 74 77 6f 20 76 |e also t|he two v|
|000025a0| 61 6c 75 65 73 20 07 54 | 0e 2c a6 00 0e 2c a6 00 |alues .T|.,...,..|
|000025b0| 00 00 00 00 73 76 5f 79 | 65 73 08 05 0e 2d a6 00 |....sv_y|es...-..|
|000025c0| 00 00 00 00 20 61 6e 64 | 20 07 a5 00 0e 2e a6 00 |.... and| .......|
|000025d0| 0e 2e a6 00 00 00 00 00 | 73 76 5f 6e 6f 08 a5 00 |........|sv_no...|
|000025e0| 0e 2f a6 00 00 00 00 00 | 2c 20 77 68 69 63 68 20 |./......|, which |
|000025f0| 63 6f 6e 74 61 69 6e 20 | 42 6f 6f 6c 65 61 6e 20 |contain |Boolean |
|00002600| 54 52 55 45 20 61 6e 64 | 20 46 41 4c 53 45 20 76 |TRUE and| FALSE v|
|00002610| 61 6c 75 65 73 2c 20 00 | 00 a8 00 00 a5 b0 00 00 |alues, .|........|
|00002620| 40 80 79 06 01 d6 df ff | e1 04 e0 ff 20 22 00 00 |@.y.....|.... "..|
|00002630| 72 65 73 70 65 63 74 69 | 76 65 6c 79 2e 20 20 4c |respecti|vely. L|
|00002640| 69 6b 65 20 07 74 69 63 | 0e 30 a6 00 0e 30 a6 00 |ike .tic|.0...0..|
|00002650| 00 00 00 00 73 76 5f 75 | 6e 64 65 66 08 20 79 6f |....sv_u|ndef. yo|
|00002660| 0e 31 a6 00 00 00 00 00 | 2c 20 74 68 65 69 72 20 |.1......|, their |
|00002670| 61 64 64 72 65 73 73 65 | 73 20 63 61 6e 20 62 65 |addresse|s can be|
|00002680| 20 75 73 65 64 20 77 68 | 65 6e 65 76 65 72 20 61 | used wh|enever a|
|00002690| 6e 20 07 79 0e 32 a6 00 | 0e 32 a6 00 00 00 00 00 |n .y.2..|.2......|
|000026a0| 53 56 2a 08 0e 33 a6 00 | 00 00 00 00 20 69 73 20 |SV*..3..|.... is |
|000026b0| 6e 65 65 64 65 64 2e 0d | 07 05 05 05 14 34 a6 00 |needed..|.....4..|
|000026c0| 14 34 a6 00 00 00 00 00 | 00 b0 00 00 a5 e4 00 00 |.4......|........|
|000026d0| 40 20 c1 06 2a 67 df ff | 0a 96 df ff 20 22 00 00 |@ ..*g..|.... "..|
|000026e0| 44 6f 20 6e 6f 74 20 62 | 65 20 66 6f 6f 6c 65 64 |Do not b|e fooled|
|000026f0| 20 69 6e 74 6f 20 74 68 | 69 6e 6b 69 6e 67 20 74 | into th|inking t|
|00002700| 68 61 74 20 07 05 05 05 | 0e 35 a6 00 14 34 a6 00 |hat ....|.5...4..|
|00002710| 0e 35 a6 00 00 00 00 00 | 28 53 56 20 2a 29 20 30 |.5......|(SV *) 0|
|00002720| 08 08 05 05 0e 36 a6 00 | 14 34 a6 00 00 00 00 00 |.....6..|.4......|
|00002730| 20 69 73 20 74 68 65 20 | 73 61 6d 65 20 61 73 20 | is the |same as |
|00002740| 07 69 66 20 0e 37 a6 00 | 14 34 a6 00 0e 37 a6 00 |.if .7..|.4...7..|
|00002750| 00 00 00 00 26 73 76 5f | 75 6e 64 65 66 08 6c 6f |....&sv_|undef.lo|
|00002760| 0e 38 a6 00 14 34 a6 00 | 00 00 00 00 2e 20 54 61 |.8...4..|..... Ta|
|00002770| 6b 65 20 74 68 69 73 20 | 63 6f 64 65 3a 0d 08 20 |ke this |code:.. |
|00002780| 14 00 00 00 00 00 00 00 | 07 07 05 05 12 39 a6 00 |........|.....9..|
|00002790| 12 39 a6 00 00 00 00 00 | 07 76 5f 67 0c 3a a6 00 |.9......|.v_g.:..|
|000027a0| 12 39 a6 00 0c 3a a6 00 | 00 00 00 00 00 e4 00 00 |.9...:..|........|
|000027b0| 25 2c 00 00 40 70 8e 01 | 23 00 df ff 33 27 df ff |%,..@p..|#...3'..|
|000027c0| 70 1a 00 00 53 56 2a 20 | 73 76 20 3d 20 28 53 56 |p...SV* |sv = (SV|
|000027d0| 2a 29 20 30 3b 0d 00 00 | 00 2c 00 00 25 3c 00 00 |*) 0;...|.,..%<..|
|000027e0| 40 e0 1c 03 43 d1 de ff | 53 f8 de ff 70 1a 00 00 |@...C...|S...p...|
|000027f0| 69 66 20 28 49 2d 61 6d | 2d 74 6f 2d 72 65 74 75 |if (I-am|-to-retu|
|00002800| 72 6e 2d 61 2d 72 65 61 | 6c 2d 76 61 6c 75 65 29 |rn-a-rea|l-value)|
|00002810| 20 7b 0d 00 00 3c 00 00 | 25 40 00 00 40 30 63 03 | {...<..|%@..@0c.|
|00002820| 63 a2 de ff 73 c9 de ff | 70 1a 00 00 20 20 20 20 |c...s...|p... |
|00002830| 20 20 20 20 73 76 20 3d | 20 73 76 5f 32 6d 6f 72 | sv =| sv_2mor|
|00002840| 74 61 6c 28 6e 65 77 53 | 56 69 76 28 34 32 29 29 |tal(newS|Viv(42))|
|00002850| 3b 0d 00 00 00 40 00 00 | 25 1c 00 00 40 70 17 00 |;....@..|%...@p..|
|00002860| 83 73 de ff 93 9a de ff | 70 1a 00 00 7d 0d 00 00 |.s......|p...}...|
|00002870| 00 1c 00 00 a5 58 00 00 | 40 c0 d4 01 a3 44 de ff |.....X..|@....D..|
|00002880| b3 6b de ff 70 1a 00 00 | 73 76 5f 73 65 74 73 76 |.k..p...|sv_setsv|
|00002890| 28 53 54 28 30 29 2c 20 | 73 76 29 3b 0d 08 20 2b |(ST(0), |sv);.. +|
|000028a0| 0c 3b a6 00 12 39 a6 00 | 00 00 00 00 08 2e 0d 49 |.;...9..|.......I|
|000028b0| 12 00 00 00 00 00 00 00 | 07 65 20 61 18 3c a6 00 |........|.e a.<..|
|000028c0| 18 3c a6 00 00 00 00 00 | 00 58 00 00 a5 24 00 00 |.<......|.X...$..|
|000028d0| 40 00 00 00 13 30 de ff | d3 3c de ff 00 00 00 00 |@....0..|.<......|
|000028e0| 0d 08 61 20 18 3d a6 00 | 00 00 00 00 00 24 00 00 |..a .=..|.....$..|
|000028f0| 05 84 00 00 00 80 a2 07 | 43 d7 dd ff 23 06 de ff |........|C...#...|
|00002900| 20 22 00 00 54 68 69 73 | 20 63 6f 64 65 20 74 72 | "..This| code tr|
|00002910| 69 65 73 20 74 6f 20 72 | 65 74 75 72 6e 20 61 20 |ies to r|eturn a |
|00002920| 6e 65 77 20 53 56 20 28 | 77 68 69 63 68 20 63 6f |new SV (|which co|
|00002930| 6e 74 61 69 6e 73 20 74 | 68 65 20 76 61 6c 75 65 |ntains t|he value|
|00002940| 20 34 32 29 20 69 66 20 | 69 74 20 73 68 6f 75 6c | 42) if |it shoul|
|00002950| 64 20 72 65 74 75 72 6e | 20 61 20 72 65 61 6c 20 |d return| a real |
|00002960| 76 61 6c 75 65 2c 20 6f | 72 20 75 6e 64 65 66 20 |value, o|r undef |
|00002970| 00 84 00 00 05 88 00 00 | 00 e8 ee 07 1c 9f dd ff |........|........|
|00002980| fc cd dd ff 20 22 00 00 | 6f 74 68 65 72 77 69 73 |.... "..|otherwis|
|00002990| 65 2e 20 20 49 6e 73 74 | 65 61 64 20 69 74 20 68 |e. Inst|ead it h|
|000029a0| 61 73 20 72 65 74 75 72 | 6e 65 64 20 61 20 6e 75 |as retur|ned a nu|
|000029b0| 6c 6c 20 70 6f 69 6e 74 | 65 72 20 77 68 69 63 68 |ll point|er which|
|000029c0| 2c 20 73 6f 6d 65 77 68 | 65 72 65 20 64 6f 77 6e |, somewh|ere down|
|000029d0| 20 74 68 65 20 6c 69 6e | 65 2c 20 77 69 6c 6c 20 | the lin|e, will |
|000029e0| 63 61 75 73 65 20 61 20 | 73 65 67 6d 65 6e 74 61 |cause a |segmenta|
|000029f0| 74 69 6f 6e 20 00 00 00 | 00 88 00 00 85 a0 00 00 |tion ...|........|
|00002a00| 00 84 b0 07 f5 66 dd ff | d5 95 dd ff 20 22 00 00 |.....f..|.... "..|
|00002a10| 76 69 6f 6c 61 74 69 6f | 6e 2c 20 62 75 73 20 65 |violatio|n, bus e|
|00002a20| 72 72 6f 72 2c 20 6f 72 | 20 6a 75 73 74 20 77 65 |rror, or| just we|
|00002a30| 69 72 64 20 72 65 73 75 | 6c 74 73 2e 20 20 43 68 |ird resu|lts. Ch|
|00002a40| 61 6e 67 65 20 74 68 65 | 20 7a 65 72 6f 20 74 6f |ange the| zero to|
|00002a50| 20 07 a6 00 0e 3e a6 00 | 0e 3e a6 00 00 00 00 00 | ....>..|.>......|
|00002a60| 26 73 76 5f 75 6e 64 65 | 66 08 0d 53 0e 3f a6 00 |&sv_unde|f..S.?..|
|00002a70| 00 00 00 00 20 69 6e 20 | 74 68 65 20 66 69 72 73 |.... in |the firs|
|00002a80| 74 20 6c 69 6e 65 20 61 | 6e 64 20 61 6c 6c 20 77 |t line a|nd all w|
|00002a90| 69 6c 6c 20 62 65 20 00 | 00 a0 00 00 25 20 00 00 |ill be .|....% ..|
|00002aa0| 40 70 5c 00 ce 2e dd ff | ae 5d dd ff 20 22 00 00 |@p\.....|.].. "..|
|00002ab0| 77 65 6c 6c 2e 0d 00 00 | 00 20 00 00 85 98 00 00 |well....|. ......|
|00002ac0| 00 48 b6 07 f7 bf dc ff | d7 ee dc ff 20 22 00 00 |.H......|.... "..|
|00002ad0| 54 6f 20 66 72 65 65 20 | 61 6e 20 53 56 20 74 68 |To free |an SV th|
|00002ae0| 61 74 20 79 6f 75 27 76 | 65 20 63 72 65 61 74 65 |at you'v|e create|
|00002af0| 64 2c 20 63 61 6c 6c 20 | 07 6e 67 20 0e 40 a6 00 |d, call |.ng .@..|
|00002b00| 0e 40 a6 00 00 00 00 00 | 53 76 52 45 46 43 4e 54 |.@......|SvREFCNT|
|00002b10| 5f 64 65 63 28 53 56 2a | 29 08 6f 3a 0e 41 a6 00 |_dec(SV*|).o:.A..|
|00002b20| 00 00 00 00 2e 20 20 4e | 6f 72 6d 61 6c 6c 79 20 |..... N|ormally |
|00002b30| 74 68 69 73 20 63 61 6c | 6c 20 69 73 20 6e 6f 74 |this cal|l is not|
|00002b40| 20 6e 65 63 65 73 73 61 | 72 79 20 28 73 65 65 20 | necessa|ry (see |
|00002b50| 00 98 00 00 a5 6c 00 00 | 40 2c 7c 03 d0 87 dc ff |.....l..|@,|.....|
|00002b60| b0 b6 dc ff 20 22 00 00 | 74 68 65 20 63 68 61 70 |.... "..|the chap|
|00002b70| 74 65 72 20 07 08 a6 00 | 10 42 a6 00 10 42 a6 00 |ter ....|.B...B..|
|00002b80| 00 00 00 00 52 65 66 65 | 72 65 6e 63 65 20 43 6f |....Refe|rence Co|
|00002b90| 75 6e 74 73 20 61 6e 64 | 20 4d 6f 72 74 61 6c 69 |unts and| Mortali|
|00002ba0| 74 79 08 74 10 00 00 00 | 00 00 00 00 29 2e 0d 07 |ty.t....|....)...|
|00002bb0| 0a 43 a6 00 0a 43 a6 00 | 00 00 00 00 00 6c 00 00 |.C...C..|.....l..|
|00002bc0| a5 40 00 00 40 32 f9 02 | 29 11 dc ff d9 47 dc ff |.@..@2..|)....G..|
|00002bd0| 18 2b 00 00 57 68 61 74 | 27 73 20 52 65 61 6c 6c |.+..What|'s Reall|
|00002be0| 79 20 53 74 6f 72 65 64 | 20 69 6e 20 61 6e 20 53 |y Stored| in an S|
|00002bf0| 56 3f 0d 08 0a 44 a6 00 | 00 00 00 00 00 40 00 00 |V?...D..|.....@..|
|00002c00| 85 9c 00 00 00 04 eb 07 | f4 bb db ff d4 ea db ff |........|........|
|00002c10| 20 22 00 00 52 65 63 61 | 6c 6c 20 74 68 61 74 20 | "..Reca|ll that |
|00002c20| 74 68 65 20 75 73 75 61 | 6c 20 6d 65 74 68 6f 64 |the usua|l method|
|00002c30| 20 6f 66 20 64 65 74 65 | 72 6d 69 6e 69 6e 67 20 | of dete|rmining |
|00002c40| 74 68 65 20 74 79 70 65 | 20 6f 66 20 73 63 61 6c |the type| of scal|
|00002c50| 61 72 20 79 6f 75 20 68 | 61 76 65 20 69 73 20 74 |ar you h|ave is t|
|00002c60| 6f 20 75 73 65 20 07 61 | 0e 45 a6 00 0e 45 a6 00 |o use .a|.E...E..|
|00002c70| 00 00 00 00 53 76 2a 4f | 4b 08 67 20 0e 46 a6 00 |....Sv*O|K.g .F..|
|00002c80| 00 00 00 00 20 6d 61 63 | 72 6f 73 2e 20 20 42 65 |.... mac|ros. Be|
|00002c90| 63 61 75 73 65 20 61 20 | 00 9c 00 00 85 8c 00 00 |cause a |........|
|00002ca0| 00 34 94 07 cd 83 db ff | ad b2 db ff 20 22 00 00 |.4......|.... "..|
|00002cb0| 73 63 61 6c 61 72 20 63 | 61 6e 20 62 65 20 62 6f |scalar c|an be bo|
|00002cc0| 74 68 20 61 20 6e 75 6d | 62 65 72 20 61 6e 64 20 |th a num|ber and |
|00002cd0| 61 20 73 74 72 69 6e 67 | 2c 20 75 73 75 61 6c 6c |a string|, usuall|
|00002ce0| 79 20 74 68 65 73 65 20 | 6d 61 63 72 6f 73 20 77 |y these |macros w|
|00002cf0| 69 6c 6c 20 61 6c 77 61 | 79 73 20 72 65 74 75 72 |ill alwa|ys retur|
|00002d00| 6e 20 54 52 55 45 20 61 | 6e 64 20 63 61 6c 6c 69 |n TRUE a|nd calli|
|00002d10| 6e 67 20 74 68 65 20 07 | 0e 47 a6 00 0e 47 a6 00 |ng the .|.G...G..|
|00002d20| 00 00 00 00 00 8c 00 00 | a5 9c 00 00 40 18 86 07 |........|....@...|
|00002d30| a6 4b db ff 86 7a db ff | ba 1f 00 00 53 76 2a 56 |.K...z..|....Sv*V|
|00002d40| 08 00 00 00 0e 48 a6 00 | 00 00 00 00 20 6d 61 63 |.....H..|.... mac|
|00002d50| 72 6f 73 20 77 69 6c 6c | 20 64 6f 20 74 68 65 20 |ros will| do the |
|00002d60| 61 70 70 72 6f 70 72 69 | 61 74 65 20 63 6f 6e 76 |appropri|ate conv|
|00002d70| 65 72 73 69 6f 6e 20 6f | 66 20 73 74 72 69 6e 67 |ersion o|f string|
|00002d80| 20 74 6f 20 69 6e 74 65 | 67 65 72 2f 64 6f 75 62 | to inte|ger/doub|
|00002d90| 6c 65 20 6f 72 20 69 6e | 74 65 67 65 72 2f 64 6f |le or in|teger/do|
|00002da0| 75 62 6c 65 20 74 6f 20 | 73 74 72 69 6e 67 2e 0d |uble to |string..|
|00002db0| 07 20 62 79 14 49 a6 00 | 14 49 a6 00 00 00 00 00 |. by.I..|.I......|
|00002dc0| 00 9c 00 00 01 10 00 00 | 01 78 53 07 00 00 00 00 |........|.xS.....|
|00002dd0| 00 10 00 00 02 18 00 00 | 9c 05 00 00 00 00 00 00 |........|........|
|00002de0| 14 49 a6 00 00 00 00 00 | 00 18 00 00 85 ac 00 00 |.I......|........|
|00002df0| 00 78 53 07 6d 45 d8 ff | 4d 74 d8 ff 20 22 00 00 |.xS.mE..|Mt.. "..|
|00002e00| 16 00 00 00 b0 fc 07 00 | 00 00 00 00 49 66 20 79 |........|....If y|
|00002e10| 6f 75 20 07 11 4a a6 00 | 14 49 a6 00 11 4a a6 00 |ou ..J..|.I...J..|
|00002e20| 00 00 00 00 72 65 61 6c | 6c 79 08 6c 11 00 00 00 |....real|ly.l....|
|00002e30| 14 49 a6 00 00 00 00 00 | 20 6e 65 65 64 20 74 6f |.I......| need to|
|00002e40| 20 6b 6e 6f 77 20 69 66 | 20 79 6f 75 20 68 61 76 | know if| you hav|
|00002e50| 65 20 61 6e 20 69 6e 74 | 65 67 65 72 2c 20 64 6f |e an int|eger, do|
|00002e60| 75 62 6c 65 2c 20 6f 72 | 20 73 74 72 69 6e 67 20 |uble, or| string |
|00002e70| 70 6f 69 6e 74 65 72 20 | 69 6e 20 61 6e 20 53 56 |pointer |in an SV|
|00002e80| 2c 20 79 6f 75 20 63 61 | 6e 20 75 73 65 20 74 68 |, you ca|n use th|
|00002e90| 65 20 00 00 00 ac 00 00 | a5 68 00 00 40 5c 50 02 |e ......|.h..@\P.|
|00002ea0| 46 0d d8 ff 26 3c d8 ff | 20 22 00 00 66 6f 6c 6c |F...&<..| "..foll|
|00002eb0| 6f 77 69 6e 67 20 74 68 | 72 65 65 20 6d 61 63 72 |owing th|ree macr|
|00002ec0| 6f 73 20 69 6e 73 74 65 | 61 64 3a 0d 08 05 05 05 |os inste|ad:.....|
|00002ed0| 14 00 00 00 00 00 00 00 | 07 00 00 00 12 4b a6 00 |........|.....K..|
|00002ee0| 12 4b a6 00 00 00 00 00 | 07 6c 65 64 0c 4c a6 00 |.K......|.led.L..|
|00002ef0| 12 4b a6 00 0c 4c a6 00 | 00 00 00 00 00 68 00 00 |.K...L..|.....h..|
|00002f00| 25 24 00 00 40 d0 01 01 | 3f a6 d7 ff 4f cd d7 ff |%$..@...|?...O...|
|00002f10| 70 1a 00 00 53 76 49 4f | 4b 70 28 53 56 2a 29 0d |p...SvIO|Kp(SV*).|
|00002f20| 00 24 00 00 25 24 00 00 | 40 d0 01 01 5f 77 d7 ff |.$..%$..|@..._w..|
|00002f30| 6f 9e d7 ff 70 1a 00 00 | 53 76 4e 4f 4b 70 28 53 |o...p...|SvNOKp(S|
|00002f40| 56 2a 29 0d 00 24 00 00 | a5 50 00 00 40 d0 01 01 |V*)..$..|.P..@...|
|00002f50| 7f 48 d7 ff 8f 6f d7 ff | 70 1a 00 00 53 76 50 4f |.H...o..|p...SvPO|
|00002f60| 4b 70 28 53 56 2a 29 0d | 08 20 54 61 0c 4d a6 00 |Kp(SV*).|. Ta.M..|
|00002f70| 12 4b a6 00 00 00 00 00 | 08 0d 08 05 12 00 00 00 |.K......|........|
|00002f80| 00 00 00 00 07 05 05 05 | 18 4e a6 00 18 4e a6 00 |........|.N...N..|
|00002f90| 00 00 00 00 00 50 00 00 | a5 24 00 00 40 00 00 00 |.....P..|.$..@...|
|00002fa0| ef 33 d7 ff af 40 d7 ff | 00 00 00 00 0d 08 20 3d |.3...@..|...... =|
|00002fb0| 18 4f a6 00 00 00 00 00 | 00 24 00 00 05 88 00 00 |.O......|.$......|
|00002fc0| 00 d8 c8 07 1f db d6 ff | ff 09 d7 ff 20 22 00 00 |........|.... "..|
|00002fd0| 54 68 65 73 65 20 77 69 | 6c 6c 20 74 65 6c 6c 20 |These wi|ll tell |
|00002fe0| 79 6f 75 20 69 66 20 79 | 6f 75 20 74 72 75 6c 79 |you if y|ou truly|
|00002ff0| 20 68 61 76 65 20 61 6e | 20 69 6e 74 65 67 65 72 | have an| integer|
|00003000| 2c 20 64 6f 75 62 6c 65 | 2c 20 6f 72 20 73 74 72 |, double|, or str|
|00003010| 69 6e 67 20 70 6f 69 6e | 74 65 72 20 73 74 6f 72 |ing poin|ter stor|
|00003020| 65 64 20 69 6e 20 79 6f | 75 72 20 53 56 2e 20 20 |ed in yo|ur SV. |
|00003030| 54 68 65 20 22 70 22 20 | 73 74 61 6e 64 73 20 00 |The "p" |stands .|
|00003040| 00 88 00 00 25 28 00 00 | 40 44 d0 00 f8 a2 d6 ff |....%(..|@D......|
|00003050| d8 d1 d6 ff 20 22 00 00 | 66 6f 72 20 70 72 69 76 |.... "..|for priv|
|00003060| 61 74 65 2e 0d 00 00 00 | 00 28 00 00 a5 78 00 00 |ate.....|.(...x..|
|00003070| 40 34 d4 03 21 34 d6 ff | 01 63 d6 ff 20 22 00 00 |@4..!4..|.c.. "..|
|00003080| 49 6e 20 67 65 6e 65 72 | 61 6c 2c 20 74 68 6f 75 |In gener|al, thou|
|00003090| 67 68 2c 20 69 74 27 73 | 20 62 65 73 74 20 74 6f |gh, it's| best to|
|000030a0| 20 75 73 65 20 74 68 65 | 20 07 6c 20 0e 50 a6 00 | use the| .l .P..|
|000030b0| 0e 50 a6 00 00 00 00 00 | 53 76 2a 56 08 74 68 65 |.P......|Sv*V.the|
|000030c0| 0e 51 a6 00 00 00 00 00 | 20 6d 61 63 72 6f 73 2e |.Q......| macros.|
|000030d0| 0d 07 20 68 0a 52 a6 00 | 0a 52 a6 00 00 00 00 00 |.. h.R..|.R......|
|000030e0| 00 78 00 00 a5 44 00 00 | 40 70 a4 01 7a bd d5 ff |.x...D..|@p..z...|
|000030f0| 2a f4 d5 ff 18 2b 00 00 | 57 6f 72 6b 69 6e 67 20 |*....+..|Working |
|00003100| 77 69 74 68 20 41 56 73 | 0d 08 69 6e 0a 53 a6 00 |with AVs|..in.S..|
|00003110| 00 00 00 00 07 61 75 73 | 14 54 a6 00 14 54 a6 00 |.....aus|.T...T..|
|00003120| 00 00 00 00 00 44 00 00 | a5 9c 00 00 40 88 32 06 |.....D..|....@.2.|
|00003130| 45 68 d5 ff 25 97 d5 ff | 20 22 00 00 54 68 65 72 |Eh..%...| "..Ther|
|00003140| 65 20 61 72 65 20 74 77 | 6f 20 77 61 79 73 20 74 |e are tw|o ways t|
|00003150| 6f 20 63 72 65 61 74 65 | 20 61 6e 64 20 6c 6f 61 |o create| and loa|
|00003160| 64 20 61 6e 20 41 56 2e | 20 20 54 68 65 20 66 69 |d an AV.| The fi|
|00003170| 72 73 74 20 6d 65 74 68 | 6f 64 20 63 72 65 61 74 |rst meth|od creat|
|00003180| 65 73 20 61 6e 20 65 6d | 70 74 79 20 41 56 3a 0d |es an em|pty AV:.|
|00003190| 08 68 65 20 14 00 00 00 | 00 00 00 00 07 65 20 61 |.he ....|.....e a|
|000031a0| 12 55 a6 00 12 55 a6 00 | 00 00 00 00 07 65 20 77 |.U...U..|.....e w|
|000031b0| 0c 56 a6 00 12 55 a6 00 | 0c 56 a6 00 00 00 00 00 |.V...U..|.V......|
|000031c0| 00 9c 00 00 a5 50 00 00 | 40 b0 30 01 3e 01 d5 ff |.....P..|@.0.>...|
|000031d0| 4e 28 d5 ff 70 1a 00 00 | 41 56 2a 20 20 6e 65 77 |N(..p...|AV* new|
|000031e0| 41 56 28 29 3b 0d 08 00 | 0c 57 a6 00 12 55 a6 00 |AV();...|.W...U..|
|000031f0| 00 00 00 00 08 64 65 63 | 12 00 00 00 00 00 00 00 |.....dec|........|
|00003200| 07 41 a6 00 18 58 a6 00 | 18 58 a6 00 00 00 00 00 |.A...X..|.X......|
|00003210| 00 50 00 00 a5 34 00 00 | 40 00 00 00 ae ec d4 ff |.P...4..|@.......|
|00003220| 6e f9 d4 ff 00 00 00 00 | 0d 08 73 61 18 59 a6 00 |n.......|..sa.Y..|
|00003230| 00 00 00 00 07 68 65 20 | 14 5a a6 00 14 5a a6 00 |.....he |.Z...Z..|
|00003240| 00 00 00 00 00 34 00 00 | a5 90 00 00 40 18 7f 05 |.....4..|....@...|
|00003250| de 93 d4 ff be c2 d4 ff | 20 22 00 00 54 68 65 20 |........| "..The |
|00003260| 73 65 63 6f 6e 64 20 6d | 65 74 68 6f 64 20 62 6f |second m|ethod bo|
|00003270| 74 68 20 63 72 65 61 74 | 65 73 20 74 68 65 20 41 |th creat|es the A|
|00003280| 56 20 61 6e 64 20 69 6e | 69 74 69 61 6c 6c 79 20 |V and in|itially |
|00003290| 70 6f 70 75 6c 61 74 65 | 73 20 69 74 20 77 69 74 |populate|s it wit|
|000032a0| 68 20 53 56 73 3a 0d 08 | 14 00 00 00 00 00 00 00 |h SVs:..|........|
|000032b0| 07 65 63 61 12 5b a6 00 | 12 5b a6 00 00 00 00 00 |.eca.[..|.[......|
|000032c0| 07 73 75 61 0c 5c a6 00 | 12 5b a6 00 0c 5c a6 00 |.sua.\..|.[...\..|
|000032d0| 00 00 00 00 00 90 00 00 | a5 64 00 00 40 00 ee 02 |........|.d..@...|
|000032e0| d7 2c d4 ff e7 53 d4 ff | 70 1a 00 00 41 56 2a 20 |.,...S..|p...AV* |
|000032f0| 20 61 76 5f 6d 61 6b 65 | 28 49 33 32 20 6e 75 6d | av_make|(I32 num|
|00003300| 2c 20 53 56 20 2a 2a 70 | 74 72 29 3b 0d 08 00 00 |, SV **p|tr);....|
|00003310| 0c 5d a6 00 12 5b a6 00 | 00 00 00 00 08 00 00 00 |.]...[..|........|
|00003320| 12 00 00 00 00 00 00 00 | 07 20 42 65 18 5e a6 00 |........|. Be.^..|
|00003330| 18 5e a6 00 00 00 00 00 | 00 64 00 00 a5 24 00 00 |.^......|.d...$..|
|00003340| 40 00 00 00 47 18 d4 ff | 07 25 d4 ff 00 00 00 00 |@...G...|.%......|
|00003350| 0d 08 64 20 18 5f a6 00 | 00 00 00 00 00 24 00 00 |..d ._..|.....$..|
|00003360| 85 b0 00 00 00 80 db 07 | 77 bf d3 ff 57 ee d3 ff |........|w...W...|
|00003370| 20 22 00 00 54 68 65 20 | 73 65 63 6f 6e 64 20 61 | "..The |second a|
|00003380| 72 67 75 6d 65 6e 74 20 | 70 6f 69 6e 74 73 20 74 |rgument |points t|
|00003390| 6f 20 61 6e 20 61 72 72 | 61 79 20 63 6f 6e 74 61 |o an arr|ay conta|
|000033a0| 69 6e 69 6e 67 20 07 00 | 0e 60 a6 00 0e 60 a6 00 |ining ..|.`...`..|
|000033b0| 00 00 00 00 6e 75 6d 08 | 0e 61 a6 00 00 00 00 00 |....num.|.a......|
|000033c0| 20 07 6c 6c 0e 62 a6 00 | 0e 62 a6 00 00 00 00 00 | .ll.b..|.b......|
|000033d0| 53 56 2a 08 0e 63 a6 00 | 00 00 00 00 27 73 2e 20 |SV*..c..|....'s. |
|000033e0| 20 4f 6e 63 65 20 74 68 | 65 20 41 56 20 68 61 73 | Once th|e AV has|
|000033f0| 20 62 65 65 6e 20 63 72 | 65 61 74 65 64 2c 20 74 | been cr|eated, t|
|00003400| 68 65 20 53 56 73 20 63 | 61 6e 20 00 00 b0 00 00 |he SVs c|an .....|
|00003410| a5 44 00 00 40 80 f6 01 | 50 87 d3 ff 30 b6 d3 ff |.D..@...|P...0...|
|00003420| 20 22 00 00 62 65 20 64 | 65 73 74 72 6f 79 65 64 | "..be d|estroyed|
|00003430| 2c 20 69 66 20 73 6f 20 | 64 65 73 69 72 65 64 2e |, if so |desired.|
|00003440| 0d 07 00 00 14 64 a6 00 | 14 64 a6 00 00 00 00 00 |.....d..|.d......|
|00003450| 00 44 00 00 a5 94 00 00 | 40 04 9c 05 79 18 d3 ff |.D......|@...y...|
|00003460| 59 47 d3 ff 20 22 00 00 | 4f 6e 63 65 20 74 68 65 |YG.. "..|Once the|
|00003470| 20 41 56 20 68 61 73 20 | 62 65 65 6e 20 63 72 65 | AV has |been cre|
|00003480| 61 74 65 64 2c 20 74 68 | 65 20 66 6f 6c 6c 6f 77 |ated, th|e follow|
|00003490| 69 6e 67 20 6f 70 65 72 | 61 74 69 6f 6e 73 20 61 |ing oper|ations a|
|000034a0| 72 65 20 70 6f 73 73 69 | 62 6c 65 20 6f 6e 20 41 |re possi|ble on A|
|000034b0| 56 73 3a 0d 08 6c 6f 77 | 14 00 00 00 00 00 00 00 |Vs:..low|........|
|000034c0| 07 20 6d 61 12 65 a6 00 | 12 65 a6 00 00 00 00 00 |. ma.e..|.e......|
|000034d0| 07 0d 08 05 0c 66 a6 00 | 12 65 a6 00 0c 66 a6 00 |.....f..|.e...f..|
|000034e0| 00 00 00 00 00 94 00 00 | 25 34 00 00 40 80 32 02 |........|%4..@.2.|
|000034f0| 72 b1 d2 ff 82 d8 d2 ff | 70 1a 00 00 76 6f 69 64 |r.......|p...void|
|00003500| 20 20 61 76 5f 70 75 73 | 68 28 41 56 2a 2c 20 53 | av_pus|h(AV*, S|
|00003510| 56 2a 29 3b 0d 00 00 00 | 00 34 00 00 25 2c 00 00 |V*);....|.4..%,..|
|00003520| 40 e0 a5 01 92 82 d2 ff | a2 a9 d2 ff 70 1a 00 00 |@.......|....p...|
|00003530| 53 56 2a 20 20 20 61 76 | 5f 70 6f 70 28 41 56 2a |SV* av|_pop(AV*|
|00003540| 29 3b 0d 00 00 2c 00 00 | 25 30 00 00 40 c0 d4 01 |);...,..|%0..@...|
|00003550| b2 53 d2 ff c2 7a d2 ff | 70 1a 00 00 53 56 2a 20 |.S...z..|p...SV* |
|00003560| 20 20 61 76 5f 73 68 69 | 66 74 28 41 56 2a 29 3b | av_shi|ft(AV*);|
|00003570| 0d 00 00 00 00 30 00 00 | a5 64 00 00 40 90 d6 02 |.....0..|.d..@...|
|00003580| d2 24 d2 ff e2 4b d2 ff | 70 1a 00 00 76 6f 69 64 |.$...K..|p...void|
|00003590| 20 20 61 76 5f 75 6e 73 | 68 69 66 74 28 41 56 2a | av_uns|hift(AV*|
|000035a0| 2c 20 49 33 32 20 6e 75 | 6d 29 3b 0d 08 64 20 69 |, I32 nu|m);..d i|
|000035b0| 0c 67 a6 00 12 65 a6 00 | 00 00 00 00 08 68 65 20 |.g...e..|.....he |
|000035c0| 12 00 00 00 00 00 00 00 | 07 73 20 66 18 68 a6 00 |........|.s f.h..|
|000035d0| 18 68 a6 00 00 00 00 00 | 00 64 00 00 a5 24 00 00 |.h......|.d...$..|
|000035e0| 40 00 00 00 42 10 d2 ff | 02 1d d2 ff 00 00 00 00 |@...B...|........|
|000035f0| 0d 08 65 73 18 69 a6 00 | 00 00 00 00 00 24 00 00 |..es.i..|.....$..|
|00003600| 85 b0 00 00 00 cc d7 07 | 72 b7 d1 ff 52 e6 d1 ff |........|r...R...|
|00003610| 20 22 00 00 54 68 65 73 | 65 20 73 68 6f 75 6c 64 | "..Thes|e should|
|00003620| 20 62 65 20 66 61 6d 69 | 6c 69 61 72 20 6f 70 65 | be fami|liar ope|
|00003630| 72 61 74 69 6f 6e 73 2c | 20 77 69 74 68 20 74 68 |rations,| with th|
|00003640| 65 20 65 78 63 65 70 74 | 69 6f 6e 20 6f 66 20 07 |e except|ion of .|
|00003650| 0e 6a a6 00 0e 6a a6 00 | 00 00 00 00 61 76 5f 75 |.j...j..|....av_u|
|00003660| 6e 73 68 69 66 74 08 72 | 0e 6b a6 00 00 00 00 00 |nshift.r|.k......|
|00003670| 2e 20 54 68 69 73 20 72 | 6f 75 74 69 6e 65 20 61 |. This r|outine a|
|00003680| 64 64 73 20 07 6c 6f 61 | 0e 6c a6 00 0e 6c a6 00 |dds .loa|.l...l..|
|00003690| 00 00 00 00 6e 75 6d 08 | 0e 6d a6 00 00 00 00 00 |....num.|.m......|
|000036a0| 20 65 6c 65 6d 65 6e 74 | 73 20 00 00 00 b0 00 00 | element|s ......|
|000036b0| 85 b4 00 00 00 c0 d4 07 | 4b 7f d1 ff 2b ae d1 ff |........|K...+...|
|000036c0| 20 22 00 00 61 74 20 74 | 68 65 20 66 72 6f 6e 74 | "..at t|he front|
|000036d0| 20 6f 66 20 74 68 65 20 | 61 72 72 61 79 20 77 69 | of the |array wi|
|000036e0| 74 68 20 74 68 65 20 07 | 0e 6e a6 00 0e 6e a6 00 |th the .|.n...n..|
|000036f0| 00 00 00 00 75 6e 64 65 | 66 08 a6 00 0e 6f a6 00 |....unde|f....o..|
|00003700| 00 00 00 00 20 76 61 6c | 75 65 2e 20 20 59 6f 75 |.... val|ue. You|
|00003710| 20 6d 75 73 74 20 74 68 | 65 6e 20 75 73 65 20 07 | must th|en use .|
|00003720| 0e 70 a6 00 0e 70 a6 00 | 00 00 00 00 61 76 5f 73 |.p...p..|....av_s|
|00003730| 74 6f 72 65 08 5a a6 00 | 0e 71 a6 00 00 00 00 00 |tore.Z..|.q......|
|00003740| 20 28 64 65 73 63 72 69 | 62 65 64 20 62 65 6c 6f | (descri|bed belo|
|00003750| 77 29 20 74 6f 20 61 73 | 73 69 67 6e 20 00 00 00 |w) to as|sign ...|
|00003760| 00 b4 00 00 a5 44 00 00 | 40 e4 2b 02 24 47 d1 ff |.....D..|@.+.$G..|
|00003770| 04 76 d1 ff 20 22 00 00 | 76 61 6c 75 65 73 20 74 |.v.. "..|values t|
|00003780| 6f 20 74 68 65 73 65 20 | 6e 65 77 20 65 6c 65 6d |o these |new elem|
|00003790| 65 6e 74 73 2e 0d 07 00 | 14 72 a6 00 14 72 a6 00 |ents....|.r...r..|
|000037a0| 00 00 00 00 00 44 00 00 | a5 64 00 00 40 f8 41 02 |.....D..|.d..@.A.|
|000037b0| 4d d8 d0 ff 2d 07 d1 ff | 20 22 00 00 48 65 72 65 |M...-...| "..Here|
|000037c0| 20 61 72 65 20 73 6f 6d | 65 20 6f 74 68 65 72 20 | are som|e other |
|000037d0| 66 75 6e 63 74 69 6f 6e | 73 3a 0d 08 14 00 00 00 |function|s:......|
|000037e0| 00 00 00 00 07 05 05 05 | 12 73 a6 00 12 73 a6 00 |........|.s...s..|
|000037f0| 00 00 00 00 07 5e a6 00 | 0c 74 a6 00 12 73 a6 00 |.....^..|.t...s..|
|00003800| 0c 74 a6 00 00 00 00 00 | 00 64 00 00 25 2c 00 00 |.t......|.d..%,..|
|00003810| 40 e0 a5 01 46 71 d0 ff | 56 98 d0 ff 70 1a 00 00 |@...Fq..|V...p...|
|00003820| 49 33 32 20 20 20 61 76 | 5f 6c 65 6e 28 41 56 2a |I32 av|_len(AV*|
|00003830| 29 3b 0d 00 00 2c 00 00 | 25 40 00 00 40 10 92 03 |);...,..|%@..@...|
|00003840| 66 42 d0 ff 76 69 d0 ff | 70 1a 00 00 53 56 2a 2a |fB..vi..|p...SV**|
|00003850| 20 20 61 76 5f 66 65 74 | 63 68 28 41 56 2a 2c 20 | av_fet|ch(AV*, |
|00003860| 49 33 32 20 6b 65 79 2c | 20 49 33 32 20 6c 76 61 |I32 key,| I32 lva|
|00003870| 6c 29 3b 0d 00 40 00 00 | a5 68 00 00 40 a0 7a 03 |l);..@..|.h..@.z.|
|00003880| 86 13 d0 ff 96 3a d0 ff | 70 1a 00 00 53 56 2a 2a |.....:..|p...SV**|
|00003890| 20 20 61 76 5f 73 74 6f | 72 65 28 41 56 2a 2c 20 | av_sto|re(AV*, |
|000038a0| 49 33 32 20 6b 65 79 2c | 20 53 56 2a 20 76 61 6c |I32 key,| SV* val|
|000038b0| 29 3b 0d 08 0c 75 a6 00 | 12 73 a6 00 00 00 00 00 |);...u..|.s......|
|000038c0| 08 05 05 05 12 00 00 00 | 00 00 00 00 07 00 00 00 |........|........|
|000038d0| 18 76 a6 00 18 76 a6 00 | 00 00 00 00 00 68 00 00 |.v...v..|.....h..|
|000038e0| a5 24 00 00 40 00 00 00 | f6 fe cf ff b6 0b d0 ff |.$..@...|........|
|000038f0| 00 00 00 00 0d 08 6f 77 | 18 77 a6 00 00 00 00 00 |......ow|.w......|
|00003900| 00 24 00 00 85 a0 00 00 | 00 04 8e 07 26 a6 cf ff |.$......|....&...|
|00003910| 06 d5 cf ff 20 22 00 00 | 54 68 65 20 07 05 05 05 |.... "..|The ....|
|00003920| 0e 78 a6 00 0e 78 a6 00 | 00 00 00 00 61 76 5f 6c |.x...x..|....av_l|
|00003930| 65 6e 08 00 0e 79 a6 00 | 00 00 00 00 20 66 75 6e |en...y..|.... fun|
|00003940| 63 74 69 6f 6e 20 72 65 | 74 75 72 6e 73 20 74 68 |ction re|turns th|
|00003950| 65 20 68 69 67 68 65 73 | 74 20 69 6e 64 65 78 20 |e highes|t index |
|00003960| 76 61 6c 75 65 20 69 6e | 20 61 72 72 61 79 20 28 |value in| array (|
|00003970| 6a 75 73 74 20 6c 69 6b | 65 20 24 23 61 72 72 61 |just lik|e $#arra|
|00003980| 79 20 69 6e 20 50 65 72 | 6c 29 2e 20 20 49 66 20 |y in Per|l). If |
|00003990| 74 68 65 20 61 72 72 61 | 79 20 69 73 20 00 00 00 |the arra|y is ...|
|000039a0| 00 a0 00 00 85 d0 00 00 | 00 00 aa 07 ff 6d cf ff |........|.....m..|
|000039b0| df 9c cf ff 20 22 00 00 | 65 6d 70 74 79 2c 20 2d |.... "..|empty, -|
|000039c0| 31 20 69 73 20 72 65 74 | 75 72 6e 65 64 2e 20 20 |1 is ret|urned. |
|000039d0| 54 68 65 20 07 00 00 00 | 0e 7a a6 00 0e 7a a6 00 |The ....|.z...z..|
|000039e0| 00 00 00 00 61 76 5f 66 | 65 74 63 68 08 75 6c 64 |....av_f|etch.uld|
|000039f0| 0e 7b a6 00 00 00 00 00 | 20 66 75 6e 63 74 69 6f |.{......| functio|
|00003a00| 6e 20 72 65 74 75 72 6e | 73 20 74 68 65 20 76 61 |n return|s the va|
|00003a10| 6c 75 65 20 61 74 20 69 | 6e 64 65 78 20 07 20 07 |lue at i|ndex . .|
|00003a20| 0e 7c a6 00 0e 7c a6 00 | 00 00 00 00 6b 65 79 08 |.|...|..|....key.|
|00003a30| 0e 7d a6 00 00 00 00 00 | 2c 20 62 75 74 20 69 66 |.}......|, but if|
|00003a40| 20 07 54 68 0e 7e a6 00 | 0e 7e a6 00 00 00 00 00 | .Th.~..|.~......|
|00003a50| 6c 76 61 6c 08 05 05 05 | 0e 7f a6 00 00 00 00 00 |lval....|........|
|00003a60| 20 69 73 20 6e 6f 6e 2d | 7a 65 72 6f 2c 20 00 00 | is non-|zero, ..|
|00003a70| 00 d0 00 00 85 c8 00 00 | 00 38 bd 07 d8 35 cf ff |........|.8...5..|
|00003a80| b8 64 cf ff 20 22 00 00 | 74 68 65 6e 20 07 61 72 |.d.. "..|then .ar|
|00003a90| 0e 80 a6 00 0e 80 a6 00 | 00 00 00 00 61 76 5f 66 |........|....av_f|
|00003aa0| 65 74 63 68 08 6e a6 00 | 0e 81 a6 00 00 00 00 00 |etch.n..|........|
|00003ab0| 20 77 69 6c 6c 20 73 74 | 6f 72 65 20 61 6e 20 75 | will st|ore an u|
|00003ac0| 6e 64 65 66 20 76 61 6c | 75 65 20 61 74 20 74 68 |ndef val|ue at th|
|00003ad0| 61 74 20 69 6e 64 65 78 | 2e 20 54 68 65 20 07 00 |at index|. The ..|
|00003ae0| 0e 82 a6 00 0e 82 a6 00 | 00 00 00 00 61 76 5f 73 |........|....av_s|
|00003af0| 74 6f 72 65 08 00 00 00 | 0e 83 a6 00 00 00 00 00 |tore....|........|
|00003b00| 20 66 75 6e 63 74 69 6f | 6e 20 73 74 6f 72 65 73 | functio|n stores|
|00003b10| 20 74 68 65 20 76 61 6c | 75 65 20 07 0e 84 a6 00 | the val|ue .....|
|00003b20| 0e 84 a6 00 00 00 00 00 | 76 61 6c 08 0e 85 a6 00 |........|val.....|
|00003b30| 00 00 00 00 20 61 74 20 | 00 c8 00 00 a5 1c 01 00 |.... at |........|
|00003b40| 40 08 78 07 b1 fd ce ff | 91 2c cf ff 20 22 00 00 |@.x.....|.,.. "..|
|00003b50| 69 6e 64 65 78 20 07 63 | 0e 86 a6 00 0e 86 a6 00 |index .c|........|
|00003b60| 00 00 00 00 6b 65 79 08 | 0e 87 a6 00 00 00 00 00 |....key.|........|
|00003b70| 2e 20 6e 6f 74 65 20 74 | 68 61 74 20 07 74 a6 00 |. note t|hat .t..|
|00003b80| 0e 88 a6 00 0e 88 a6 00 | 00 00 00 00 61 76 5f 66 |........|....av_f|
|00003b90| 65 74 63 68 08 6c 65 6e | 0e 89 a6 00 00 00 00 00 |etch.len|........|
|00003ba0| 20 61 6e 64 20 07 76 5f | 0e 8a a6 00 0e 8a a6 00 | and .v_|........|
|00003bb0| 00 00 00 00 61 76 5f 73 | 74 6f 72 65 08 33 32 20 |....av_s|tore.32 |
|00003bc0| 0e 8b a6 00 00 00 00 00 | 20 62 6f 74 68 20 72 65 |........| both re|
|00003bd0| 74 75 72 6e 20 07 41 56 | 0e 8c a6 00 0e 8c a6 00 |turn .AV|........|
|00003be0| 00 00 00 00 53 56 2a 2a | 08 61 6c 29 0e 8d a6 00 |....SV**|.al)....|
|00003bf0| 00 00 00 00 27 73 2c 20 | 6e 6f 74 20 07 05 05 05 |....'s, |not ....|
|00003c00| 0e 8e a6 00 0e 8e a6 00 | 00 00 00 00 53 56 2a 08 |........|....SV*.|
|00003c10| 0e 8f a6 00 00 00 00 00 | 27 73 20 61 73 20 74 68 |........|'s as th|
|00003c20| 65 69 72 20 72 65 74 75 | 72 6e 20 76 61 6c 75 65 |eir retu|rn value|
|00003c30| 2e 0d 07 00 12 90 a6 00 | 12 90 a6 00 00 00 00 00 |........|........|
|00003c40| 07 79 a6 00 0c 91 a6 00 | 12 90 a6 00 0c 91 a6 00 |.y......|........|
|00003c50| 00 00 00 00 00 1c 01 00 | 25 30 00 00 40 c0 d4 01 |........|%0..@...|
|00003c60| aa 96 ce ff ba bd ce ff | 70 1a 00 00 76 6f 69 64 |........|p...void|
|00003c70| 20 20 61 76 5f 63 6c 65 | 61 72 28 41 56 2a 29 3b | av_cle|ar(AV*);|
|00003c80| 0d 00 00 00 00 30 00 00 | 25 30 00 00 40 c0 d4 01 |.....0..|%0..@...|
|00003c90| ca 67 ce ff da 8e ce ff | 70 1a 00 00 76 6f 69 64 |.g......|p...void|
|00003ca0| 20 20 61 76 5f 75 6e 64 | 65 66 28 41 56 2a 29 3b | av_und|ef(AV*);|
|00003cb0| 0d 00 00 00 00 30 00 00 | a5 60 00 00 40 20 bf 02 |.....0..|.`..@ ..|
|00003cc0| ea 38 ce ff fa 5f ce ff | 70 1a 00 00 76 6f 69 64 |.8..._..|p...void|
|00003cd0| 20 20 61 76 5f 65 78 74 | 65 6e 64 28 41 56 2a 2c | av_ext|end(AV*,|
|00003ce0| 20 49 33 32 20 6b 65 79 | 29 3b 0d 08 0c 92 a6 00 | I32 key|);......|
|00003cf0| 12 90 a6 00 00 00 00 00 | 08 20 74 68 12 00 00 00 |........|. th....|
|00003d00| 00 00 00 00 07 74 20 69 | 18 93 a6 00 18 93 a6 00 |.....t i|........|
|00003d10| 00 00 00 00 00 60 00 00 | a5 24 00 00 40 00 00 00 |.....`..|.$..@...|
|00003d20| 5a 24 ce ff 1a 31 ce ff | 00 00 00 00 0d 08 69 66 |Z$...1..|......if|
|00003d30| 18 94 a6 00 00 00 00 00 | 00 24 00 00 85 9c 00 00 |........|.$......|
|00003d40| 00 28 a3 07 8a cb cd ff | 6a fa cd ff 20 22 00 00 |.(......|j... "..|
|00003d50| 54 68 65 20 07 6f 6e 2d | 0e 95 a6 00 0e 95 a6 00 |The .on-|........|
|00003d60| 00 00 00 00 61 76 5f 63 | 6c 65 61 72 08 00 00 00 |....av_c|lear....|
|00003d70| 0e 96 a6 00 00 00 00 00 | 20 66 75 6e 63 74 69 6f |........| functio|
|00003d80| 6e 20 64 65 6c 65 74 65 | 73 20 61 6c 6c 20 74 68 |n delete|s all th|
|00003d90| 65 20 65 6c 65 6d 65 6e | 74 73 20 69 6e 20 74 68 |e elemen|ts in th|
|00003da0| 65 20 41 56 2a 20 61 72 | 72 61 79 2c 20 62 75 74 |e AV* ar|ray, but|
|00003db0| 20 64 6f 65 73 20 6e 6f | 74 20 61 63 74 75 61 6c | does no|t actual|
|00003dc0| 6c 79 20 64 65 6c 65 74 | 65 20 74 68 65 20 61 72 |ly delet|e the ar|
|00003dd0| 72 61 79 20 00 9c 00 00 | 85 a8 00 00 00 9c 20 07 |ray ....|...... .|
|00003de0| 63 93 cd ff 43 c2 cd ff | 20 22 00 00 69 74 73 65 |c...C...| "..itse|
|00003df0| 6c 66 2e 20 20 54 68 65 | 20 07 00 00 0e 97 a6 00 |lf. The| .......|
|00003e00| 0e 97 a6 00 00 00 00 00 | 61 76 5f 75 6e 64 65 66 |........|av_undef|
|00003e10| 08 20 07 05 0e 98 a6 00 | 00 00 00 00 20 66 75 6e |. ......|.... fun|
|00003e20| 63 74 69 6f 6e 20 77 69 | 6c 6c 20 64 65 6c 65 74 |ction wi|ll delet|
|00003e30| 65 20 61 6c 6c 20 74 68 | 65 20 65 6c 65 6d 65 6e |e all th|e elemen|
|00003e40| 74 73 20 69 6e 20 74 68 | 65 20 61 72 72 61 79 20 |ts in th|e array |
|00003e50| 70 6c 75 73 20 74 68 65 | 20 61 72 72 61 79 20 69 |plus the| array i|
|00003e60| 74 73 65 6c 66 2e 20 20 | 54 68 65 20 07 00 00 00 |tself. |The ....|
|00003e70| 0e 99 a6 00 0e 99 a6 00 | 00 00 00 00 00 a8 00 00 |........|........|
|00003e80| 85 bc 00 00 00 00 aa 07 | 3c 5b cd ff 1c 8a cd ff |........|<[......|
|00003e90| ba 1f 00 00 61 76 5f 65 | 78 74 65 6e 64 08 00 00 |....av_e|xtend...|
|00003ea0| 0e 9a a6 00 00 00 00 00 | 20 66 75 6e 63 74 69 6f |........| functio|
|00003eb0| 6e 20 65 78 74 65 6e 64 | 73 20 74 68 65 20 61 72 |n extend|s the ar|
|00003ec0| 72 61 79 20 73 6f 20 74 | 68 61 74 20 69 74 20 63 |ray so t|hat it c|
|00003ed0| 6f 6e 74 61 69 6e 73 20 | 07 20 74 68 0e 9b a6 00 |ontains |. th....|
|00003ee0| 0e 9b a6 00 00 00 00 00 | 6b 65 79 08 0e 9c a6 00 |........|key.....|
|00003ef0| 00 00 00 00 20 65 6c 65 | 6d 65 6e 74 73 2e 20 20 |.... ele|ments. |
|00003f00| 49 66 20 07 0e 9d a6 00 | 0e 9d a6 00 00 00 00 00 |If .....|........|
|00003f10| 6b 65 79 08 0e 9e a6 00 | 00 00 00 00 20 69 73 20 |key.....|.... is |
|00003f20| 6c 65 73 73 20 74 68 61 | 6e 20 74 68 65 20 63 75 |less tha|n the cu|
|00003f30| 72 72 65 6e 74 20 00 00 | 00 bc 00 00 a5 50 00 00 |rrent ..|.....P..|
|00003f40| 40 94 f6 02 15 23 cd ff | f5 51 cd ff 20 22 00 00 |@....#..|.Q.. "..|
|00003f50| 6c 65 6e 67 74 68 20 6f | 66 20 74 68 65 20 61 72 |length o|f the ar|
|00003f60| 72 61 79 2c 20 74 68 65 | 6e 20 6e 6f 74 68 69 6e |ray, the|n nothin|
|00003f70| 67 20 69 73 20 64 6f 6e | 65 2e 0d 07 14 9f a6 00 |g is don|e.......|
|00003f80| 14 9f a6 00 00 00 00 00 | 00 50 00 00 01 10 00 00 |........|.P......|
|00003f90| 41 78 23 07 00 00 00 00 | 00 10 00 00 02 18 00 00 |Ax#.....|........|
|00003fa0| 38 07 00 00 00 00 00 00 | 14 9f a6 00 00 00 00 00 |8.......|........|
|00003fb0| 00 18 00 00 a5 b4 00 00 | 40 78 23 07 bc 45 cb ff |........|@x#..E..|
|00003fc0| 9c 74 cb ff 20 22 00 00 | 16 00 00 00 b0 fc 07 00 |.t.. "..|........|
|00003fd0| 00 00 00 00 49 66 20 79 | 6f 75 20 6b 6e 6f 77 20 |....If y|ou know |
|00003fe0| 74 68 65 20 6e 61 6d 65 | 20 6f 66 20 61 6e 20 61 |the name| of an a|
|00003ff0| 72 72 61 79 20 76 61 72 | 69 61 62 6c 65 2c 20 79 |rray var|iable, y|
|00004000| 6f 75 20 63 61 6e 20 67 | 65 74 20 61 20 70 6f 69 |ou can g|et a poi|
|00004010| 6e 74 65 72 20 74 6f 20 | 69 74 73 20 41 56 20 62 |nter to |its AV b|
|00004020| 79 20 75 73 69 6e 67 20 | 74 68 65 20 66 6f 6c 6c |y using |the foll|
|00004030| 6f 77 69 6e 67 3a 0d 08 | 14 00 00 00 00 00 00 00 |owing:..|........|
|00004040| 07 d4 81 e9 12 a0 a6 00 | 12 a0 a6 00 00 00 00 00 |........|........|
|00004050| 07 6c 20 64 0c a1 a6 00 | 12 a0 a6 00 0c a1 a6 00 |.l d....|........|
|00004060| 00 00 00 00 00 b4 00 00 | a5 70 00 00 40 40 07 04 |........|.p..@@..|
|00004070| b5 de ca ff c5 05 cb ff | 70 1a 00 00 41 56 2a 20 |........|p...AV* |
|00004080| 20 70 65 72 6c 5f 67 65 | 74 5f 61 76 28 22 70 61 | perl_ge|t_av("pa|
|00004090| 63 6b 61 67 65 3a 3a 76 | 61 72 6e 61 6d 65 22 2c |ckage::v|arname",|
|000040a0| 20 46 41 4c 53 45 29 3b | 0d 08 65 6e 0c a2 a6 00 | FALSE);|..en....|
|000040b0| 12 a0 a6 00 00 00 00 00 | 08 66 75 6e 12 00 00 00 |........|.fun....|
|000040c0| 00 00 00 00 07 65 6e 64 | 18 a3 a6 00 18 a3 a6 00 |.....end|........|
|000040d0| 00 00 00 00 00 70 00 00 | a5 24 00 00 40 00 00 00 |.....p..|.$..@...|
|000040e0| 25 ca ca ff e5 d6 ca ff | 00 00 00 00 0d 08 a6 00 |%.......|........|
|000040f0| 18 a4 a6 00 00 00 00 00 | 00 24 00 00 a5 58 00 00 |........|.$...X..|
|00004100| 40 80 91 03 55 71 ca ff | 35 a0 ca ff 20 22 00 00 |@...Uq..|5... "..|
|00004110| 54 68 69 73 20 72 65 74 | 75 72 6e 73 20 4e 55 4c |This ret|urns NUL|
|00004120| 4c 20 69 66 20 74 68 65 | 20 76 61 72 69 61 62 6c |L if the| variabl|
|00004130| 65 20 64 6f 65 73 20 6e | 6f 74 20 65 78 69 73 74 |e does n|ot exist|
|00004140| 2e 0d 07 6e 0a a5 a6 00 | 0a a5 a6 00 00 00 00 00 |...n....|........|
|00004150| 00 58 00 00 a5 44 00 00 | 40 80 ae 01 ae fa c9 ff |.X...D..|@.......|
|00004160| 5e 31 ca ff 18 2b 00 00 | 57 6f 72 6b 69 6e 67 20 |^1...+..|Working |
|00004170| 77 69 74 68 20 48 56 73 | 0d 08 a6 00 0a a6 a6 00 |with HVs|........|
|00004180| 00 00 00 00 07 75 20 6b | 14 a7 a6 00 14 a7 a6 00 |.....u k|........|
|00004190| 00 00 00 00 00 44 00 00 | a5 78 00 00 40 40 7a 03 |.....D..|.x..@@z.|
|000041a0| 79 a5 c9 ff 59 d4 c9 ff | 20 22 00 00 54 6f 20 63 |y...Y...| "..To c|
|000041b0| 72 65 61 74 65 20 61 6e | 20 48 56 2c 20 79 6f 75 |reate an| HV, you|
|000041c0| 20 75 73 65 20 74 68 65 | 20 66 6f 6c 6c 6f 77 69 | use the| followi|
|000041d0| 6e 67 20 72 6f 75 74 69 | 6e 65 3a 0d 08 77 69 6e |ng routi|ne:..win|
|000041e0| 14 00 00 00 00 00 00 00 | 07 00 00 00 12 a8 a6 00 |........|........|
|000041f0| 12 a8 a6 00 00 00 00 00 | 07 00 00 00 0c a9 a6 00 |........|........|
|00004200| 12 a8 a6 00 0c a9 a6 00 | 00 00 00 00 00 78 00 00 |........|.....x..|
|00004210| a5 50 00 00 40 b0 30 01 | 72 3e c9 ff 82 65 c9 ff |.P..@.0.|r>...e..|
|00004220| 70 1a 00 00 48 56 2a 20 | 20 6e 65 77 48 56 28 29 |p...HV* | newHV()|
|00004230| 3b 0d 08 2c 0c aa a6 00 | 12 a8 a6 00 00 00 00 00 |;..,....|........|
|00004240| 08 a2 a6 00 12 00 00 00 | 00 00 00 00 07 05 05 05 |........|........|
|00004250| 18 ab a6 00 18 ab a6 00 | 00 00 00 00 00 50 00 00 |........|.....P..|
|00004260| a5 34 00 00 40 00 00 00 | e2 29 c9 ff a2 36 c9 ff |.4..@...|.)...6..|
|00004270| 00 00 00 00 0d 08 22 02 | 18 ac a6 00 00 00 00 00 |......".|........|
|00004280| 07 1f 00 00 14 ad a6 00 | 14 ad a6 00 00 00 00 00 |........|........|
|00004290| 00 34 00 00 a5 94 00 00 | 40 44 ad 05 12 d1 c8 ff |.4......|@D......|
|000042a0| f2 ff c8 ff 20 22 00 00 | 4f 6e 63 65 20 74 68 65 |.... "..|Once the|
|000042b0| 20 48 56 20 68 61 73 20 | 62 65 65 6e 20 63 72 65 | HV has |been cre|
|000042c0| 61 74 65 64 2c 20 74 68 | 65 20 66 6f 6c 6c 6f 77 |ated, th|e follow|
|000042d0| 69 6e 67 20 6f 70 65 72 | 61 74 69 6f 6e 73 20 61 |ing oper|ations a|
|000042e0| 72 65 20 70 6f 73 73 69 | 62 6c 65 20 6f 6e 20 48 |re possi|ble on H|
|000042f0| 56 73 3a 0d 08 64 6f 63 | 14 00 00 00 00 00 00 00 |Vs:..doc|........|
|00004300| 07 65 6d 70 12 ae a6 00 | 12 ae a6 00 00 00 00 00 |.emp....|........|
|00004310| 07 65 20 73 0c af a6 00 | 12 ae a6 00 0c af a6 00 |.e s....|........|
|00004320| 00 00 00 00 00 94 00 00 | 25 58 00 00 40 40 7e 05 |........|%X..@@~.|
|00004330| 0b 6a c8 ff 1b 91 c8 ff | 70 1a 00 00 53 56 2a 2a |.j......|p...SV**|
|00004340| 20 20 68 76 5f 73 74 6f | 72 65 28 48 56 2a 2c 20 | hv_sto|re(HV*, |
|00004350| 63 68 61 72 2a 20 6b 65 | 79 2c 20 55 33 32 20 6b |char* ke|y, U32 k|
|00004360| 6c 65 6e 2c 20 53 56 2a | 20 76 61 6c 2c 20 55 33 |len, SV*| val, U3|
|00004370| 32 20 68 61 73 68 29 3b | 0d 00 00 00 00 58 00 00 |2 hash);|.....X..|
|00004380| a5 78 00 00 40 50 ab 04 | 2b 3b c8 ff 3b 62 c8 ff |.x..@P..|+;..;b..|
|00004390| 70 1a 00 00 53 56 2a 2a | 20 20 68 76 5f 66 65 74 |p...SV**| hv_fet|
|000043a0| 63 68 28 48 56 2a 2c 20 | 63 68 61 72 2a 20 6b 65 |ch(HV*, |char* ke|
|000043b0| 79 2c 20 55 33 32 20 6b | 6c 65 6e 2c 20 49 33 32 |y, U32 k|len, I32|
|000043c0| 20 6c 76 61 6c 29 3b 0d | 08 b1 a5 00 0c b0 a6 00 | lval);.|........|
|000043d0| 12 ae a6 00 00 00 00 00 | 08 0d 08 05 12 00 00 00 |........|........|
|000043e0| 00 00 00 00 07 05 05 05 | 18 b1 a6 00 18 b1 a6 00 |........|........|
|000043f0| 00 00 00 00 00 78 00 00 | a5 24 00 00 40 00 00 00 |.....x..|.$..@...|
|00004400| 9b 26 c8 ff 5b 33 c8 ff | 00 00 00 00 0d 08 a5 00 |.&..[3..|........|
|00004410| 18 b2 a6 00 00 00 00 00 | 00 24 00 00 85 ac 00 00 |........|.$......|
|00004420| 00 58 bb 07 cb cd c7 ff | ab fc c7 ff 20 22 00 00 |.X......|.... "..|
|00004430| 54 68 65 20 07 68 61 6e | 0e b3 a6 00 0e b3 a6 00 |The .han|........|
|00004440| 00 00 00 00 6b 6c 65 6e | 08 6d 61 69 0e b4 a6 00 |....klen|.mai....|
|00004450| 00 00 00 00 20 70 61 72 | 61 6d 65 74 65 72 20 69 |.... par|ameter i|
|00004460| 73 20 74 68 65 20 6c 65 | 6e 67 74 68 20 6f 66 20 |s the le|ngth of |
|00004470| 74 68 65 20 6b 65 79 20 | 62 65 69 6e 67 20 70 61 |the key |being pa|
|00004480| 73 73 65 64 20 69 6e 20 | 28 4e 6f 74 65 20 74 68 |ssed in |(Note th|
|00004490| 61 74 20 79 6f 75 20 63 | 61 6e 6e 6f 74 20 70 61 |at you c|annot pa|
|000044a0| 73 73 20 30 20 69 6e 20 | 61 73 20 61 20 76 61 6c |ss 0 in |as a val|
|000044b0| 75 65 20 6f 66 20 07 0d | 0e b5 a6 00 0e b5 a6 00 |ue of ..|........|
|000044c0| 00 00 00 00 00 ac 00 00 | 85 a8 00 00 00 04 ee 07 |........|........|
|000044d0| a4 95 c7 ff 84 c4 c7 ff | ba 1f 00 00 6b 6c 65 6e |........|....klen|
|000044e0| 08 00 00 00 0e b6 a6 00 | 00 00 00 00 20 74 6f 20 |........|.... to |
|000044f0| 74 65 6c 6c 20 50 65 72 | 6c 20 74 6f 20 6d 65 61 |tell Per|l to mea|
|00004500| 73 75 72 65 20 74 68 65 | 20 6c 65 6e 67 74 68 20 |sure the| length |
|00004510| 6f 66 20 74 68 65 20 6b | 65 79 29 2e 20 20 54 68 |of the k|ey). Th|
|00004520| 65 20 07 74 0e b7 a6 00 | 0e b7 a6 00 00 00 00 00 |e .t....|........|
|00004530| 76 61 6c 08 0e b8 a6 00 | 00 00 00 00 20 61 72 67 |val.....|.... arg|
|00004540| 75 6d 65 6e 74 20 63 6f | 6e 74 61 69 6e 73 20 74 |ument co|ntains t|
|00004550| 68 65 20 53 56 20 70 6f | 69 6e 74 65 72 20 74 6f |he SV po|inter to|
|00004560| 20 74 68 65 20 73 63 61 | 6c 61 72 20 00 a8 00 00 | the sca|lar ....|
|00004570| 85 b8 00 00 00 14 f3 07 | 7d 5d c7 ff 5d 8c c7 ff |........|}]..]...|
|00004580| 20 22 00 00 62 65 69 6e | 67 20 73 74 6f 72 65 64 | "..bein|g stored|
|00004590| 2c 20 61 6e 64 20 07 74 | 0e b9 a6 00 0e b9 a6 00 |, and .t|........|
|000045a0| 00 00 00 00 68 61 73 68 | 08 20 67 75 0e ba a6 00 |....hash|. gu....|
|000045b0| 00 00 00 00 20 69 73 20 | 74 68 65 20 70 72 65 63 |.... is |the prec|
|000045c0| 6f 6d 70 75 74 65 64 20 | 68 61 73 68 20 76 61 6c |omputed |hash val|
|000045d0| 75 65 20 28 7a 65 72 6f | 20 69 66 20 79 6f 75 20 |ue (zero| if you |
|000045e0| 77 61 6e 74 20 07 61 6e | 0e bb a6 00 0e bb a6 00 |want .an|........|
|000045f0| 00 00 00 00 68 76 5f 73 | 74 6f 72 65 08 75 73 65 |....hv_s|tore.use|
|00004600| 0e bc a6 00 00 00 00 00 | 20 74 6f 20 63 61 6c 63 |........| to calc|
|00004610| 75 6c 61 74 65 20 69 74 | 20 66 6f 72 20 79 6f 75 |ulate it| for you|
|00004620| 29 2e 20 20 00 b8 00 00 | 85 a4 00 00 00 40 e2 07 |). ....|.....@..|
|00004630| 56 25 c7 ff 36 54 c7 ff | 20 22 00 00 54 68 65 20 |V%..6T..| "..The |
|00004640| 07 74 20 33 0e bd a6 00 | 0e bd a6 00 00 00 00 00 |.t 3....|........|
|00004650| 6c 76 61 6c 08 73 20 6c | 0e be a6 00 00 00 00 00 |lval.s l|........|
|00004660| 20 70 61 72 61 6d 65 74 | 65 72 20 69 6e 64 69 63 | paramet|er indic|
|00004670| 61 74 65 73 20 77 68 65 | 74 68 65 72 20 74 68 69 |ates whe|ther thi|
|00004680| 73 20 66 65 74 63 68 20 | 69 73 20 61 63 74 75 61 |s fetch |is actua|
|00004690| 6c 6c 79 20 61 20 70 61 | 72 74 20 6f 66 20 61 20 |lly a pa|rt of a |
|000046a0| 73 74 6f 72 65 20 6f 70 | 65 72 61 74 69 6f 6e 2c |store op|eration,|
|000046b0| 20 69 6e 20 77 68 69 63 | 68 20 63 61 73 65 20 61 | in whic|h case a|
|000046c0| 20 6e 65 77 20 00 00 00 | 00 a4 00 00 85 9c 00 00 | new ...|........|
|000046d0| 00 98 b4 07 2f ed c6 ff | 0f 1c c7 ff 20 22 00 00 |..../...|.... "..|
|000046e0| 75 6e 64 65 66 69 6e 65 | 64 20 76 61 6c 75 65 20 |undefine|d value |
|000046f0| 77 69 6c 6c 20 62 65 20 | 61 64 64 65 64 20 74 6f |will be |added to|
|00004700| 20 74 68 65 20 48 56 20 | 77 69 74 68 20 74 68 65 | the HV |with the|
|00004710| 20 73 75 70 70 6c 69 65 | 64 20 6b 65 79 20 61 6e | supplie|d key an|
|00004720| 64 20 07 74 0e bf a6 00 | 0e bf a6 00 00 00 00 00 |d .t....|........|
|00004730| 68 76 5f 66 65 74 63 68 | 08 65 72 20 0e c0 a6 00 |hv_fetch|.er ....|
|00004740| 00 00 00 00 20 77 69 6c | 6c 20 72 65 74 75 72 6e |.... wil|l return|
|00004750| 20 61 73 20 69 66 20 74 | 68 65 20 76 61 6c 75 65 | as if t|he value|
|00004760| 20 00 00 00 00 9c 00 00 | 25 30 00 00 40 98 75 01 | .......|%0..@.u.|
|00004770| 08 b5 c6 ff e8 e3 c6 ff | 20 22 00 00 68 61 64 20 |........| "..had |
|00004780| 61 6c 72 65 61 64 79 20 | 65 78 69 73 74 65 64 2e |already |existed.|
|00004790| 0d 00 00 00 00 30 00 00 | 85 e4 00 00 00 3c b3 07 |.....0..|.....<..|
|000047a0| 31 46 c6 ff 11 75 c6 ff | 20 22 00 00 52 65 6d 65 |1F...u..| "..Reme|
|000047b0| 6d 62 65 72 20 74 68 61 | 74 20 07 64 0e c1 a6 00 |mber tha|t .d....|
|000047c0| 0e c1 a6 00 00 00 00 00 | 68 76 5f 73 74 6f 72 65 |........|hv_store|
|000047d0| 08 63 68 61 0e c2 a6 00 | 00 00 00 00 20 61 6e 64 |.cha....|.... and|
|000047e0| 20 07 20 6e 0e c3 a6 00 | 0e c3 a6 00 00 00 00 00 | . n....|........|
|000047f0| 68 76 5f 66 65 74 63 68 | 08 2e 2e 2e 0e c4 a6 00 |hv_fetch|........|
|00004800| 00 00 00 00 20 72 65 74 | 75 72 6e 20 07 56 2a 29 |.... ret|urn .V*)|
|00004810| 0e c5 a6 00 0e c5 a6 00 | 00 00 00 00 53 56 2a 2a |........|....SV**|
|00004820| 08 05 05 05 0e c6 a6 00 | 00 00 00 00 27 73 20 61 |........|....'s a|
|00004830| 6e 64 20 6e 6f 74 20 6a | 75 73 74 20 07 08 05 05 |nd not j|ust ....|
|00004840| 0e c7 a6 00 0e c7 a6 00 | 00 00 00 00 53 56 2a 08 |........|....SV*.|
|00004850| 0e c8 a6 00 00 00 00 00 | 2e 20 20 54 6f 20 61 63 |........|. To ac|
|00004860| 63 65 73 73 20 74 68 65 | 20 73 63 61 6c 61 72 20 |cess the| scalar |
|00004870| 76 61 6c 75 65 2c 20 00 | 00 e4 00 00 05 88 00 00 |value, .|........|
|00004880| 00 68 f3 07 0a 0e c6 ff | ea 3c c6 ff 20 22 00 00 |.h......|.<.. "..|
|00004890| 79 6f 75 20 6d 75 73 74 | 20 66 69 72 73 74 20 64 |you must| first d|
|000048a0| 65 72 65 66 65 72 65 6e | 63 65 20 74 68 65 20 72 |ereferen|ce the r|
|000048b0| 65 74 75 72 6e 20 76 61 | 6c 75 65 2e 20 20 48 6f |eturn va|lue. Ho|
|000048c0| 77 65 76 65 72 2c 20 79 | 6f 75 20 73 68 6f 75 6c |wever, y|ou shoul|
|000048d0| 64 20 63 68 65 63 6b 20 | 74 6f 20 6d 61 6b 65 20 |d check |to make |
|000048e0| 73 75 72 65 20 74 68 61 | 74 20 74 68 65 20 72 65 |sure tha|t the re|
|000048f0| 74 75 72 6e 20 76 61 6c | 75 65 20 69 73 20 00 00 |turn val|ue is ..|
|00004900| 00 88 00 00 25 3c 00 00 | 40 30 85 02 e3 d5 c5 ff |....%<..|@0......|
|00004910| c3 04 c6 ff 20 22 00 00 | 6e 6f 74 20 4e 55 4c 4c |.... "..|not NULL|
|00004920| 20 62 65 66 6f 72 65 20 | 64 65 72 65 66 65 72 65 | before |derefere|
|00004930| 6e 63 69 6e 67 20 69 74 | 2e 0d 00 00 00 3c 00 00 |ncing it|.....<..|
|00004940| a5 84 00 00 40 a0 03 05 | 0c 67 c5 ff ec 95 c5 ff |....@...|.g......|
|00004950| 20 22 00 00 54 68 65 73 | 65 20 74 77 6f 20 66 75 | "..Thes|e two fu|
|00004960| 6e 63 74 69 6f 6e 73 20 | 63 68 65 63 6b 20 69 66 |nctions |check if|
|00004970| 20 61 20 68 61 73 68 20 | 74 61 62 6c 65 20 65 6e | a hash |table en|
|00004980| 74 72 79 20 65 78 69 73 | 74 73 2c 20 61 6e 64 20 |try exis|ts, and |
|00004990| 64 65 6c 65 74 65 73 20 | 69 74 2e 0d 07 00 00 00 |deletes |it......|
|000049a0| 12 c9 a6 00 12 c9 a6 00 | 00 00 00 00 07 00 00 00 |........|........|
|000049b0| 0c ca a6 00 12 c9 a6 00 | 0c ca a6 00 00 00 00 00 |........|........|
|000049c0| 00 84 00 00 25 44 00 00 | 40 60 d8 03 05 00 c5 ff |....%D..|@`......|
|000049d0| 15 27 c5 ff 70 1a 00 00 | 62 6f 6f 6c 20 20 68 76 |.'..p...|bool hv|
|000049e0| 5f 65 78 69 73 74 73 28 | 48 56 2a 2c 20 63 68 61 |_exists(|HV*, cha|
|000049f0| 72 2a 20 6b 65 79 2c 20 | 55 33 32 20 6b 6c 65 6e |r* key, |U32 klen|
|00004a00| 29 3b 0d 00 00 44 00 00 | a5 78 00 00 40 30 da 04 |);...D..|.x..@0..|
|00004a10| 25 d1 c4 ff 35 f8 c4 ff | 70 1a 00 00 53 56 2a 20 |%...5...|p...SV* |
|00004a20| 20 20 68 76 5f 64 65 6c | 65 74 65 28 48 56 2a 2c | hv_del|ete(HV*,|
|00004a30| 20 63 68 61 72 2a 20 6b | 65 79 2c 20 55 33 32 20 | char* k|ey, U32 |
|00004a40| 6b 6c 65 6e 2c 20 49 33 | 32 20 66 6c 61 67 73 29 |klen, I3|2 flags)|
|00004a50| 3b 0d 08 00 0c cb a6 00 | 12 c9 a6 00 00 00 00 00 |;.......|........|
|00004a60| 08 6d 61 79 12 00 00 00 | 00 00 00 00 07 72 6c 20 |.may....|.....rl |
|00004a70| 18 cc a6 00 18 cc a6 00 | 00 00 00 00 00 78 00 00 |........|.....x..|
|00004a80| a5 24 00 00 40 00 00 00 | 95 bc c4 ff 55 c9 c4 ff |.$..@...|....U...|
|00004a90| 00 00 00 00 0d 08 a5 00 | 18 cd a6 00 00 00 00 00 |........|........|
|00004aa0| 00 24 00 00 85 c8 00 00 | 00 dc d9 07 c5 63 c4 ff |.$......|.....c..|
|00004ab0| a5 92 c4 ff 20 22 00 00 | 49 66 20 07 0e ce a6 00 |.... "..|If .....|
|00004ac0| 0e ce a6 00 00 00 00 00 | 66 6c 61 67 73 08 20 73 |........|flags. s|
|00004ad0| 0e cf a6 00 00 00 00 00 | 20 64 6f 65 73 20 6e 6f |........| does no|
|00004ae0| 74 20 69 6e 63 6c 75 64 | 65 20 74 68 65 20 07 00 |t includ|e the ..|
|00004af0| 0e d0 a6 00 0e d0 a6 00 | 00 00 00 00 47 5f 44 49 |........|....G_DI|
|00004b00| 53 43 41 52 44 08 77 61 | 0e d1 a6 00 00 00 00 00 |SCARD.wa|........|
|00004b10| 20 66 6c 61 67 20 74 68 | 65 6e 20 07 0e d2 a6 00 | flag th|en .....|
|00004b20| 0e d2 a6 00 00 00 00 00 | 68 76 5f 64 65 6c 65 74 |........|hv_delet|
|00004b30| 65 08 20 73 0e d3 a6 00 | 00 00 00 00 20 77 69 6c |e. s....|.... wil|
|00004b40| 6c 20 63 72 65 61 74 65 | 20 61 6e 64 20 72 65 74 |l create| and ret|
|00004b50| 75 72 6e 20 61 20 6d 6f | 72 74 61 6c 20 63 6f 70 |urn a mo|rtal cop|
|00004b60| 79 20 6f 66 20 00 00 00 | 00 c8 00 00 a5 38 00 00 |y of ...|.....8..|
|00004b70| 40 58 49 01 9e 2b c4 ff | 7e 5a c4 ff 20 22 00 00 |@XI..+..|~Z.. "..|
|00004b80| 74 68 65 20 64 65 6c 65 | 74 65 64 20 76 61 6c 75 |the dele|ted valu|
|00004b90| 65 2e 0d 07 14 d4 a6 00 | 14 d4 a6 00 00 00 00 00 |e.......|........|
|00004ba0| 00 38 00 00 a5 68 00 00 | 40 4c 99 02 c7 bc c3 ff |.8...h..|@L......|
|00004bb0| a7 eb c3 ff 20 22 00 00 | 41 6e 64 20 6d 6f 72 65 |.... "..|And more|
|00004bc0| 20 6d 69 73 63 65 6c 6c | 61 6e 65 6f 75 73 20 66 | miscell|aneous f|
|00004bd0| 75 6e 63 74 69 6f 6e 73 | 3a 0d 08 00 14 00 00 00 |unctions|:.......|
|00004be0| 00 00 00 00 07 70 72 6f | 12 d5 a6 00 12 d5 a6 00 |.....pro|........|
|00004bf0| 00 00 00 00 07 05 05 05 | 0c d6 a6 00 12 d5 a6 00 |........|........|
|00004c00| 0c d6 a6 00 00 00 00 00 | 00 68 00 00 25 30 00 00 |........|.h..%0..|
|00004c10| 40 30 ec 01 c0 55 c3 ff | d0 7c c3 ff 70 1a 00 00 |@0...U..|.|..p...|
|00004c20| 76 6f 69 64 20 20 20 68 | 76 5f 63 6c 65 61 72 28 |void h|v_clear(|
|00004c30| 48 56 2a 29 3b 0d 00 00 | 00 30 00 00 a5 58 00 00 |HV*);...|.0...X..|
|00004c40| 40 30 ec 01 e0 26 c3 ff | f0 4d c3 ff 70 1a 00 00 |@0...&..|.M..p...|
|00004c50| 76 6f 69 64 20 20 20 68 | 76 5f 75 6e 64 65 66 28 |void h|v_undef(|
|00004c60| 48 56 2a 29 3b 0d 08 75 | 0c d7 a6 00 12 d5 a6 00 |HV*);..u|........|
|00004c70| 00 00 00 00 08 6e 6f 74 | 12 00 00 00 00 00 00 00 |.....not|........|
|00004c80| 07 69 6e 61 18 d8 a6 00 | 18 d8 a6 00 00 00 00 00 |.ina....|........|
|00004c90| 00 58 00 00 a5 24 00 00 | 40 00 00 00 50 12 c3 ff |.X...$..|@...P...|
|00004ca0| 10 1f c3 ff 00 00 00 00 | 0d 08 74 20 18 d9 a6 00 |........|..t ....|
|00004cb0| 00 00 00 00 00 24 00 00 | 85 a0 00 00 00 e0 c9 07 |.....$..|........|
|00004cc0| 80 b9 c2 ff 60 e8 c2 ff | 20 22 00 00 4c 69 6b 65 |....`...| "..Like|
|00004cd0| 20 74 68 65 69 72 20 41 | 56 20 63 6f 75 6e 74 65 | their A|V counte|
|00004ce0| 72 70 61 72 74 73 2c 20 | 07 66 72 6f 0e da a6 00 |rparts, |.fro....|
|00004cf0| 0e da a6 00 00 00 00 00 | 68 76 5f 63 6c 65 61 72 |........|hv_clear|
|00004d00| 08 68 65 20 0e db a6 00 | 00 00 00 00 20 64 65 6c |.he ....|.... del|
|00004d10| 65 74 65 73 20 61 6c 6c | 20 74 68 65 20 65 6e 74 |etes all| the ent|
|00004d20| 72 69 65 73 20 69 6e 20 | 74 68 65 20 68 61 73 68 |ries in |the hash|
|00004d30| 20 74 61 62 6c 65 20 62 | 75 74 20 64 6f 65 73 20 | table b|ut does |
|00004d40| 6e 6f 74 20 61 63 74 75 | 61 6c 6c 79 20 64 65 6c |not actu|ally del|
|00004d50| 65 74 65 20 00 a0 00 00 | a5 88 00 00 40 68 e6 05 |ete ....|....@h..|
|00004d60| 59 81 c2 ff 39 b0 c2 ff | 20 22 00 00 74 68 65 20 |Y...9...| "..the |
|00004d70| 68 61 73 68 20 74 61 62 | 6c 65 2e 20 20 54 68 65 |hash tab|le. The|
|00004d80| 20 07 66 6f 0e dc a6 00 | 0e dc a6 00 00 00 00 00 | .fo....|........|
|00004d90| 68 76 5f 75 6e 64 65 66 | 08 68 65 6c 0e dd a6 00 |hv_undef|.hel....|
|00004da0| 00 00 00 00 20 64 65 6c | 65 74 65 73 20 62 6f 74 |.... del|etes bot|
|00004db0| 68 20 74 68 65 20 65 6e | 74 72 69 65 73 20 61 6e |h the en|tries an|
|00004dc0| 64 20 74 68 65 20 68 61 | 73 68 20 74 61 62 6c 65 |d the ha|sh table|
|00004dd0| 20 69 74 73 65 6c 66 2e | 0d 00 00 00 00 88 00 00 | itself.|........|
|00004de0| 05 88 00 00 00 e4 d7 07 | 82 12 c2 ff 62 41 c2 ff |........|....bA..|
|00004df0| 20 22 00 00 50 65 72 6c | 20 6b 65 65 70 73 20 74 | "..Perl| keeps t|
|00004e00| 68 65 20 61 63 74 75 61 | 6c 20 64 61 74 61 20 69 |he actua|l data i|
|00004e10| 6e 20 6c 69 6e 6b 65 64 | 20 6c 69 73 74 20 6f 66 |n linked| list of|
|00004e20| 20 73 74 72 75 63 74 75 | 72 65 73 20 77 69 74 68 | structu|res with|
|00004e30| 20 61 20 74 79 70 65 64 | 65 66 20 6f 66 20 48 45 | a typed|ef of HE|
|00004e40| 2e 20 54 68 65 73 65 20 | 63 6f 6e 74 61 69 6e 20 |. These |contain |
|00004e50| 74 68 65 20 61 63 74 75 | 61 6c 20 6b 65 79 20 61 |the actu|al key a|
|00004e60| 6e 64 20 00 00 88 00 00 | 85 98 00 00 00 6c 59 07 |nd .....|.....lY.|
|00004e70| 5b da c1 ff 3b 09 c2 ff | 20 22 00 00 76 61 6c 75 |[...;...| "..valu|
|00004e80| 65 20 70 6f 69 6e 74 65 | 72 73 20 28 70 6c 75 73 |e pointe|rs (plus|
|00004e90| 20 65 78 74 72 61 20 61 | 64 6d 69 6e 69 73 74 72 | extra a|dministr|
|00004ea0| 61 74 69 76 65 20 6f 76 | 65 72 68 65 61 64 29 2e |ative ov|erhead).|
|00004eb0| 20 20 54 68 65 20 6b 65 | 79 20 69 73 20 61 20 73 | The ke|y is a s|
|00004ec0| 74 72 69 6e 67 20 70 6f | 69 6e 74 65 72 3b 20 74 |tring po|inter; t|
|00004ed0| 68 65 20 76 61 6c 75 65 | 20 69 73 20 61 6e 20 07 |he value| is an .|
|00004ee0| 0e de a6 00 0e de a6 00 | 00 00 00 00 53 56 2a 08 |........|....SV*.|
|00004ef0| 0e df a6 00 00 00 00 00 | 2e 20 20 00 00 98 00 00 |........|. .....|
|00004f00| a5 b4 00 00 40 5c 33 07 | 34 a2 c1 ff 14 d1 c1 ff |....@\3.|4.......|
|00004f10| 20 22 00 00 48 6f 77 65 | 76 65 72 2c 20 6f 6e 63 | "..Howe|ver, onc|
|00004f20| 65 20 79 6f 75 20 68 61 | 76 65 20 61 6e 20 07 6c |e you ha|ve an .l|
|00004f30| 0e e0 a6 00 0e e0 a6 00 | 00 00 00 00 48 45 2a 08 |........|....HE*.|
|00004f40| 0e e1 a6 00 00 00 00 00 | 2c 20 74 6f 20 67 65 74 |........|, to get|
|00004f50| 20 74 68 65 20 61 63 74 | 75 61 6c 20 6b 65 79 20 | the act|ual key |
|00004f60| 61 6e 64 20 76 61 6c 75 | 65 2c 20 75 73 65 20 74 |and valu|e, use t|
|00004f70| 68 65 20 72 6f 75 74 69 | 6e 65 73 20 73 70 65 63 |he routi|nes spec|
|00004f80| 69 66 69 65 64 20 62 65 | 6c 6f 77 2e 0d 07 69 73 |ified be|low...is|
|00004f90| 12 e2 a6 00 12 e2 a6 00 | 00 00 00 00 07 74 68 65 |........|.....the|
|00004fa0| 0c e3 a6 00 12 e2 a6 00 | 0c e3 a6 00 00 00 00 00 |........|........|
|00004fb0| 00 b4 00 00 01 10 00 00 | 41 80 32 02 00 00 00 00 |........|A.2.....|
|00004fc0| 00 10 00 00 02 1c 00 00 | d4 08 00 00 00 00 00 00 |........|........|
|00004fd0| 12 e2 a6 00 0c e3 a6 00 | 00 00 00 00 00 1c 00 00 |........|........|
|00004fe0| 25 40 00 00 40 80 32 02 | db 4d be ff eb 74 be ff |%@..@.2.|.M...t..|
|00004ff0| 70 1a 00 00 16 00 00 00 | b0 fc 07 00 00 00 00 00 |p.......|........|
|00005000| 49 33 32 20 20 20 20 68 | 76 5f 69 74 65 72 69 6e |I32 h|v_iterin|
|00005010| 69 74 28 48 56 2a 29 3b | 0d 00 00 00 00 40 00 00 |it(HV*);|.....@..|
|00005020| 25 58 00 00 40 40 7e 05 | fb 1e be ff 0b 46 be ff |%X..@@~.|.....F..|
|00005030| 70 1a 00 00 20 20 20 20 | 20 20 20 20 2f 2a 20 50 |p... | /* P|
|00005040| 72 65 70 61 72 65 73 20 | 73 74 61 72 74 69 6e 67 |repares |starting|
|00005050| 20 70 6f 69 6e 74 20 74 | 6f 20 74 72 61 76 65 72 | point t|o traver|
|00005060| 73 65 20 68 61 73 68 20 | 74 61 62 6c 65 20 2a 2f |se hash |table */|
|00005070| 0d 00 00 00 00 58 00 00 | 25 34 00 00 40 80 32 02 |.....X..|%4..@.2.|
|00005080| 1b f0 bd ff 2b 17 be ff | 70 1a 00 00 48 45 2a 20 |....+...|p...HE* |
|00005090| 20 20 20 68 76 5f 69 74 | 65 72 6e 65 78 74 28 48 | hv_it|ernext(H|
|000050a0| 56 2a 29 3b 0d 00 00 00 | 00 34 00 00 25 54 00 00 |V*);....|.4..%T..|
|000050b0| 40 80 20 05 3b c1 bd ff | 4b e8 bd ff 70 1a 00 00 |@. .;...|K...p...|
|000050c0| 20 20 20 20 20 20 20 20 | 2f 2a 20 47 65 74 20 74 | |/* Get t|
|000050d0| 68 65 20 6e 65 78 74 20 | 65 6e 74 72 79 2c 20 61 |he next |entry, a|
|000050e0| 6e 64 20 72 65 74 75 72 | 6e 20 61 20 70 6f 69 6e |nd retur|n a poin|
|000050f0| 74 65 72 20 74 6f 20 61 | 0d 00 00 00 00 54 00 00 |ter to a|.....T..|
|00005100| 25 50 00 00 40 10 09 05 | 5b 92 bd ff 6b b9 bd ff |%P..@...|[...k...|
|00005110| 70 1a 00 00 20 20 20 20 | 20 20 20 20 20 20 20 73 |p... | s|
|00005120| 74 72 75 63 74 75 72 65 | 20 74 68 61 74 20 68 61 |tructure| that ha|
|00005130| 73 20 62 6f 74 68 20 74 | 68 65 20 6b 65 79 20 61 |s both t|he key a|
|00005140| 6e 64 20 76 61 6c 75 65 | 20 2a 2f 0d 00 50 00 00 |nd value| */..P..|
|00005150| 25 44 00 00 40 60 d8 03 | 7b 63 bd ff 8b 8a bd ff |%D..@`..|{c......|
|00005160| 70 1a 00 00 63 68 61 72 | 2a 20 20 68 76 5f 69 74 |p...char|* hv_it|
|00005170| 65 72 6b 65 79 28 48 45 | 2a 20 65 6e 74 72 79 2c |erkey(HE|* entry,|
|00005180| 20 49 33 32 2a 20 72 65 | 74 6c 65 6e 29 3b 0d 00 | I32* re|tlen);..|
|00005190| 00 44 00 00 25 54 00 00 | 40 d0 66 05 9b 34 bd ff |.D..%T..|@.f..4..|
|000051a0| ab 5b bd ff 70 1a 00 00 | 20 20 20 20 20 20 20 20 |.[..p...| |
|000051b0| 2f 2a 20 47 65 74 20 74 | 68 65 20 6b 65 79 20 66 |/* Get t|he key f|
|000051c0| 72 6f 6d 20 61 6e 20 48 | 45 20 73 74 72 75 63 74 |rom an H|E struct|
|000051d0| 75 72 65 20 61 6e 64 20 | 61 6c 73 6f 20 72 65 74 |ure and |also ret|
|000051e0| 75 72 6e 0d 00 54 00 00 | 25 44 00 00 40 60 d8 03 |urn..T..|%D..@`..|
|000051f0| bb 05 bd ff cb 2c bd ff | 70 1a 00 00 20 20 20 20 |.....,..|p... |
|00005200| 20 20 20 20 20 20 20 74 | 68 65 20 6c 65 6e 67 74 | t|he lengt|
|00005210| 68 20 6f 66 20 74 68 65 | 20 6b 65 79 20 73 74 72 |h of the| key str|
|00005220| 69 6e 67 20 2a 2f 0d 00 | 00 44 00 00 25 3c 00 00 |ing */..|.D..%<..|
|00005230| 40 e0 1c 03 db d6 bc ff | eb fd bc ff 70 1a 00 00 |@.......|....p...|
|00005240| 53 56 2a 20 20 20 20 68 | 76 5f 69 74 65 72 76 61 |SV* h|v_iterva|
|00005250| 6c 28 48 56 2a 2c 20 48 | 45 2a 20 65 6e 74 72 79 |l(HV*, H|E* entry|
|00005260| 29 3b 0d 00 00 3c 00 00 | 25 50 00 00 40 30 da 04 |);...<..|%P..@0..|
|00005270| fb a7 bc ff 0b cf bc ff | 70 1a 00 00 20 20 20 20 |........|p... |
|00005280| 20 20 20 20 2f 2a 20 52 | 65 74 75 72 6e 20 61 20 | /* R|eturn a |
|00005290| 53 56 20 70 6f 69 6e 74 | 65 72 20 74 6f 20 74 68 |SV point|er to th|
|000052a0| 65 20 76 61 6c 75 65 20 | 6f 66 20 74 68 65 20 48 |e value |of the H|
|000052b0| 45 0d 00 00 00 50 00 00 | 25 30 00 00 40 10 1b 02 |E....P..|%0..@...|
|000052c0| 1b 79 bc ff 2b a0 bc ff | 70 1a 00 00 20 20 20 20 |.y..+...|p... |
|000052d0| 20 20 20 20 20 20 20 73 | 74 72 75 63 74 75 72 65 | s|tructure|
|000052e0| 20 2a 2f 0d 00 30 00 00 | 25 4c 00 00 40 50 ab 04 | */..0..|%L..@P..|
|000052f0| 3b 4a bc ff 4b 71 bc ff | 70 1a 00 00 53 56 2a 20 |;J..Kq..|p...SV* |
|00005300| 20 20 20 68 76 5f 69 74 | 65 72 6e 65 78 74 73 76 | hv_it|ernextsv|
|00005310| 28 48 56 2a 2c 20 63 68 | 61 72 2a 2a 20 6b 65 79 |(HV*, ch|ar** key|
|00005320| 2c 20 49 33 32 2a 20 72 | 65 74 6c 65 6e 29 3b 0d |, I32* r|etlen);.|
|00005330| 00 4c 00 00 25 54 00 00 | 40 f0 37 05 5b 1b bc ff |.L..%T..|@.7.[...|
|00005340| 6b 42 bc ff 70 1a 00 00 | 20 20 20 20 20 20 20 20 |kB..p...| |
|00005350| 2f 2a 20 54 68 69 73 20 | 63 6f 6e 76 65 6e 69 65 |/* This |convenie|
|00005360| 6e 63 65 20 72 6f 75 74 | 69 6e 65 20 63 6f 6d 62 |nce rout|ine comb|
|00005370| 69 6e 65 73 20 68 76 5f | 69 74 65 72 6e 65 78 74 |ines hv_|iternext|
|00005380| 2c 0d 00 00 00 54 00 00 | 25 54 00 00 40 60 4f 05 |,....T..|%T..@`O.|
|00005390| 7b ec bb ff 8b 13 bc ff | 70 1a 00 00 20 20 20 20 |{.......|p... |
|000053a0| 20 20 20 20 20 20 20 68 | 76 5f 69 74 65 72 6b 65 | h|v_iterke|
|000053b0| 79 2c 20 61 6e 64 20 68 | 76 5f 69 74 65 72 76 61 |y, and h|v_iterva|
|000053c0| 6c 2e 20 20 54 68 65 20 | 6b 65 79 20 61 6e 64 20 |l. The |key and |
|000053d0| 72 65 74 6c 65 6e 0d 00 | 00 54 00 00 25 54 00 00 |retlen..|.T..%T..|
|000053e0| 40 60 4f 05 9b bd bb ff | ab e4 bb ff 70 1a 00 00 |@`O.....|....p...|
|000053f0| 20 20 20 20 20 20 20 20 | 20 20 20 61 72 67 75 6d | | argum|
|00005400| 65 6e 74 73 20 61 72 65 | 20 72 65 74 75 72 6e 20 |ents are| return |
|00005410| 76 61 6c 75 65 73 20 66 | 6f 72 20 74 68 65 20 6b |values f|or the k|
|00005420| 65 79 20 61 6e 64 20 69 | 74 73 0d 00 00 54 00 00 |ey and i|ts...T..|
|00005430| a5 84 00 00 40 00 dc 05 | bb 8e bb ff cb b5 bb ff |....@...|........|
|00005440| 70 1a 00 00 20 20 20 20 | 20 20 20 20 20 20 20 6c |p... | l|
|00005450| 65 6e 67 74 68 2e 20 20 | 54 68 65 20 76 61 6c 75 |ength. |The valu|
|00005460| 65 20 69 73 20 72 65 74 | 75 72 6e 65 64 20 69 6e |e is ret|urned in|
|00005470| 20 74 68 65 20 53 56 2a | 20 61 72 67 75 6d 65 6e | the SV*| argumen|
|00005480| 74 20 2a 2f 0d 08 68 69 | 0c e4 a6 00 12 e2 a6 00 |t */..hi|........|
|00005490| 00 00 00 00 08 20 69 6e | 12 00 00 00 00 00 00 00 |..... in|........|
|000054a0| 07 63 61 6e 18 e5 a6 00 | 18 e5 a6 00 00 00 00 00 |.can....|........|
|000054b0| 00 84 00 00 a5 34 00 00 | 40 00 00 00 2b 7a bb ff |.....4..|@...+z..|
|000054c0| eb 86 bb ff 00 00 00 00 | 0d 08 20 74 18 e6 a6 00 |........|.. t....|
|000054d0| 00 00 00 00 07 20 79 6f | 14 e7 a6 00 14 e7 a6 00 |..... yo|........|
|000054e0| 00 00 00 00 00 34 00 00 | a5 a8 00 00 40 4c 0a 07 |.....4..|....@L..|
|000054f0| 5b 21 bb ff 3b 50 bb ff | 20 22 00 00 49 66 20 79 |[!..;P..| "..If y|
|00005500| 6f 75 20 6b 6e 6f 77 20 | 74 68 65 20 6e 61 6d 65 |ou know |the name|
|00005510| 20 6f 66 20 61 20 68 61 | 73 68 20 76 61 72 69 61 | of a ha|sh varia|
|00005520| 62 6c 65 2c 20 79 6f 75 | 20 63 61 6e 20 67 65 74 |ble, you| can get|
|00005530| 20 61 20 70 6f 69 6e 74 | 65 72 20 74 6f 20 69 74 | a point|er to it|
|00005540| 73 20 48 56 20 62 79 20 | 75 73 69 6e 67 20 74 68 |s HV by |using th|
|00005550| 65 20 66 6f 6c 6c 6f 77 | 69 6e 67 3a 0d 08 05 05 |e follow|ing:....|
|00005560| 14 00 00 00 00 00 00 00 | 07 00 00 00 12 e8 a6 00 |........|........|
|00005570| 12 e8 a6 00 00 00 00 00 | 07 6e 64 20 0c e9 a6 00 |........|.nd ....|
|00005580| 12 e8 a6 00 0c e9 a6 00 | 00 00 00 00 00 a8 00 00 |........|........|
|00005590| a5 70 00 00 40 40 07 04 | 54 ba ba ff 64 e1 ba ff |.p..@@..|T...d...|
|000055a0| 70 1a 00 00 48 56 2a 20 | 20 70 65 72 6c 5f 67 65 |p...HV* | perl_ge|
|000055b0| 74 5f 68 76 28 22 70 61 | 63 6b 61 67 65 3a 3a 76 |t_hv("pa|ckage::v|
|000055c0| 61 72 6e 61 6d 65 22 2c | 20 46 41 4c 53 45 29 3b |arname",| FALSE);|
|000055d0| 0d 08 00 00 0c ea a6 00 | 12 e8 a6 00 00 00 00 00 |........|........|
|000055e0| 08 ff a5 00 12 00 00 00 | 00 00 00 00 07 00 a6 00 |........|........|
|000055f0| 18 eb a6 00 18 eb a6 00 | 00 00 00 00 00 70 00 00 |........|.....p..|
|00005600| a5 24 00 00 40 00 00 00 | c4 a5 ba ff 84 b2 ba ff |.$..@...|........|
|00005610| 00 00 00 00 0d 08 49 33 | 18 ec a6 00 00 00 00 00 |......I3|........|
|00005620| 00 24 00 00 a5 58 00 00 | 40 80 91 03 f4 4c ba ff |.$...X..|@....L..|
|00005630| d4 7b ba ff 20 22 00 00 | 54 68 69 73 20 72 65 74 |.{.. "..|This ret|
|00005640| 75 72 6e 73 20 4e 55 4c | 4c 20 69 66 20 74 68 65 |urns NUL|L if the|
|00005650| 20 76 61 72 69 61 62 6c | 65 20 64 6f 65 73 20 6e | variabl|e does n|
|00005660| 6f 74 20 65 78 69 73 74 | 2e 0d 07 20 14 ed a6 00 |ot exist|... ....|
|00005670| 14 ed a6 00 00 00 00 00 | 00 58 00 00 a5 b0 00 00 |........|.X......|
|00005680| 40 e0 19 06 1d de b9 ff | fd 0c ba ff 20 22 00 00 |@.......|.... "..|
|00005690| 54 68 65 20 68 61 73 68 | 20 61 6c 67 6f 72 69 74 |The hash| algorit|
|000056a0| 68 6d 20 69 73 20 64 65 | 66 69 6e 65 64 20 69 6e |hm is de|fined in|
|000056b0| 20 74 68 65 20 07 6f 3a | 0e ee a6 00 14 ed a6 00 | the .o:|........|
|000056c0| 0e ee a6 00 00 00 00 00 | 50 45 52 4c 5f 48 41 53 |........|PERL_HAS|
|000056d0| 48 28 68 61 73 68 2c 20 | 6b 65 79 2c 20 6b 6c 65 |H(hash, |key, kle|
|000056e0| 6e 29 08 00 0e ef a6 00 | 14 ed a6 00 00 00 00 00 |n)......|........|
|000056f0| 20 6d 61 63 72 6f 3a 0d | 08 05 a6 00 14 00 00 00 | macro:.|........|
|00005700| 00 00 00 00 07 00 00 00 | 12 f0 a6 00 12 f0 a6 00 |........|........|
|00005710| 00 00 00 00 07 08 a6 00 | 0c f1 a6 00 12 f0 a6 00 |........|........|
|00005720| 0c f1 a6 00 00 00 00 00 | 00 b0 00 00 25 24 00 00 |........|....%$..|
|00005730| 40 f0 d2 00 16 77 b9 ff | 26 9e b9 ff 70 1a 00 00 |@....w..|&...p...|
|00005740| 69 20 3d 20 6b 6c 65 6e | 3b 0d 00 00 00 24 00 00 |i = klen|;....$..|
|00005750| 25 24 00 00 40 f0 d2 00 | 36 48 b9 ff 46 6f b9 ff |%$..@...|6H..Fo..|
|00005760| 70 1a 00 00 68 61 73 68 | 20 3d 20 30 3b 0d 00 00 |p...hash| = 0;...|
|00005770| 00 24 00 00 25 24 00 00 | 40 80 bb 00 56 19 b9 ff |.$..%$..|@...V...|
|00005780| 66 40 b9 ff 70 1a 00 00 | 73 20 3d 20 6b 65 79 3b |f@..p...|s = key;|
|00005790| 0d 00 00 00 00 24 00 00 | 25 24 00 00 40 d0 01 01 |.....$..|%$..@...|
|000057a0| 76 ea b8 ff 86 11 b9 ff | 70 1a 00 00 77 68 69 6c |v.......|p...whil|
|000057b0| 65 20 28 69 2d 2d 29 0d | 00 24 00 00 a5 60 00 00 |e (i--).|.$...`..|
|000057c0| 40 40 90 02 96 bb b8 ff | a6 e2 b8 ff 70 1a 00 00 |@@......|....p...|
|000057d0| 20 20 20 20 68 61 73 68 | 20 3d 20 68 61 73 68 20 | hash| = hash |
|000057e0| 2a 20 33 33 20 2b 20 2a | 73 2b 2b 3b 0d 08 0d 08 |* 33 + *|s++;....|
|000057f0| 0c f2 a6 00 12 f0 a6 00 | 00 00 00 00 08 0f a6 00 |........|........|
|00005800| 12 00 00 00 00 00 00 00 | 07 c9 a5 00 18 f3 a6 00 |........|........|
|00005810| 18 f3 a6 00 00 00 00 00 | 00 60 00 00 a5 34 00 00 |........|.`...4..|
|00005820| 40 00 00 00 06 a7 b8 ff | c6 b3 b8 ff 00 00 00 00 |@.......|........|
|00005830| 0d 08 00 f0 18 f4 a6 00 | 00 00 00 00 07 63 61 74 |........|.....cat|
|00005840| 0a f5 a6 00 0a f5 a6 00 | 00 00 00 00 00 34 00 00 |........|.....4..|
|00005850| a5 48 00 00 40 ac fe 01 | 66 46 b8 ff 16 7d b8 ff |.H..@...|fF...}..|
|00005860| 18 2b 00 00 48 61 73 68 | 20 41 50 49 20 45 78 74 |.+..Hash| API Ext|
|00005870| 65 6e 73 69 6f 6e 73 0d | 08 76 6e 28 0a f6 a6 00 |ensions.|.vn(....|
|00005880| 00 00 00 00 07 2a 2c 20 | 14 f7 a6 00 14 f7 a6 00 |.....*, |........|
|00005890| 00 00 00 00 00 48 00 00 | a5 90 00 00 40 08 68 05 |.....H..|....@.h.|
|000058a0| 31 f1 b7 ff 11 20 b8 ff | 20 22 00 00 42 65 67 69 |1.... ..| "..Begi|
|000058b0| 6e 6e 69 6e 67 20 77 69 | 74 68 20 76 65 72 73 69 |nning wi|th versi|
|000058c0| 6f 6e 20 35 2e 30 30 34 | 2c 20 74 68 65 20 66 6f |on 5.004|, the fo|
|000058d0| 6c 6c 6f 77 69 6e 67 20 | 66 75 6e 63 74 69 6f 6e |llowing |function|
|000058e0| 73 20 61 72 65 20 61 6c | 73 6f 20 73 75 70 70 6f |s are al|so suppo|
|000058f0| 72 74 65 64 3a 0d 08 00 | 14 00 00 00 00 00 00 00 |rted:...|........|
|00005900| 07 13 a6 00 12 f8 a6 00 | 12 f8 a6 00 00 00 00 00 |........|........|
|00005910| 07 20 66 75 0c f9 a6 00 | 12 f8 a6 00 0c f9 a6 00 |. fu....|........|
|00005920| 00 00 00 00 00 90 00 00 | 25 58 00 00 40 40 7e 05 |........|%X..@@~.|
|00005930| 2a 8a b7 ff 3a b1 b7 ff | 70 1a 00 00 48 45 2a 20 |*...:...|p...HE* |
|00005940| 20 20 20 20 68 76 5f 66 | 65 74 63 68 5f 65 6e 74 | hv_f|etch_ent|
|00005950| 20 20 28 48 56 2a 20 74 | 62 2c 20 53 56 2a 20 6b | (HV* t|b, SV* k|
|00005960| 65 79 2c 20 49 33 32 20 | 6c 76 61 6c 2c 20 55 33 |ey, I32 |lval, U3|
|00005970| 32 20 68 61 73 68 29 3b | 0d 00 00 00 00 58 00 00 |2 hash);|.....X..|
|00005980| a5 80 00 00 40 d0 66 05 | 4a 5b b7 ff 5a 82 b7 ff |....@.f.|J[..Z...|
|00005990| 70 1a 00 00 48 45 2a 20 | 20 20 20 20 68 76 5f 73 |p...HE* | hv_s|
|000059a0| 74 6f 72 65 5f 65 6e 74 | 20 20 28 48 56 2a 20 74 |tore_ent| (HV* t|
|000059b0| 62 2c 20 53 56 2a 20 6b | 65 79 2c 20 53 56 2a 20 |b, SV* k|ey, SV* |
|000059c0| 76 61 6c 2c 20 55 33 32 | 20 68 61 73 68 29 3b 0d |val, U32| hash);.|
|000059d0| 08 73 20 69 0c fa a6 00 | 12 f8 a6 00 00 00 00 00 |.s i....|........|
|000059e0| 08 6c 69 6b 12 00 00 00 | 00 00 00 00 07 16 a6 00 |.lik....|........|
|000059f0| 18 fb a6 00 18 fb a6 00 | 00 00 00 00 00 80 00 00 |........|........|
|00005a00| a5 48 00 00 40 00 00 00 | ba 46 b7 ff 7a 53 b7 ff |.H..@...|.F..zS..|
|00005a10| 00 00 00 00 0d 08 6f 72 | 18 fc a6 00 00 00 00 00 |......or|........|
|00005a20| 07 74 70 75 12 fd a6 00 | 12 fd a6 00 00 00 00 00 |.tpu....|........|
|00005a30| 07 68 20 66 0c fe a6 00 | 12 fd a6 00 0c fe a6 00 |.h f....|........|
|00005a40| 00 00 00 00 00 48 00 00 | 25 4c 00 00 40 e0 93 04 |.....H..|%L..@...|
|00005a50| ba f5 b6 ff ca 1c b7 ff | 70 1a 00 00 62 6f 6f 6c |........|p...bool|
|00005a60| 20 20 20 20 68 76 5f 65 | 78 69 73 74 73 5f 65 6e | hv_e|xists_en|
|00005a70| 74 20 28 48 56 2a 20 74 | 62 2c 20 53 56 2a 20 6b |t (HV* t|b, SV* k|
|00005a80| 65 79 2c 20 55 33 32 20 | 68 61 73 68 29 3b 0d 00 |ey, U32 |hash);..|
|00005a90| 00 4c 00 00 a5 80 00 00 | 40 b0 95 05 da c6 b6 ff |.L......|@.......|
|00005aa0| ea ed b6 ff 70 1a 00 00 | 53 56 2a 20 20 20 20 20 |....p...|SV* |
|00005ab0| 68 76 5f 64 65 6c 65 74 | 65 5f 65 6e 74 20 28 48 |hv_delet|e_ent (H|
|00005ac0| 56 2a 20 74 62 2c 20 53 | 56 2a 20 6b 65 79 2c 20 |V* tb, S|V* key, |
|00005ad0| 49 33 32 20 66 6c 61 67 | 73 2c 20 55 33 32 20 68 |I32 flag|s, U32 h|
|00005ae0| 61 73 68 29 3b 0d 08 20 | 0c ff a6 00 12 fd a6 00 |ash);.. |........|
|00005af0| 00 00 00 00 08 20 73 63 | 12 00 00 00 00 00 00 00 |..... sc|........|
|00005b00| 07 61 62 6c 18 00 a7 00 | 18 00 a7 00 00 00 00 00 |.abl....|........|
|00005b10| 00 80 00 00 a5 48 00 00 | 40 00 00 00 4a b2 b6 ff |.....H..|@...J...|
|00005b20| 0a bf b6 ff 00 00 00 00 | 0d 08 75 73 18 01 a7 00 |........|..us....|
|00005b30| 00 00 00 00 07 6f 6c 6c | 12 02 a7 00 12 02 a7 00 |.....oll|........|
|00005b40| 00 00 00 00 07 00 00 00 | 0c 03 a7 00 12 02 a7 00 |........|........|
|00005b50| 0c 03 a7 00 00 00 00 00 | 00 48 00 00 a5 64 00 00 |........|.H...d..|
|00005b60| 40 e0 1c 03 4a 61 b6 ff | 5a 88 b6 ff 70 1a 00 00 |@...Ja..|Z...p...|
|00005b70| 53 56 2a 20 20 20 20 20 | 68 76 5f 69 74 65 72 6b |SV* |hv_iterk|
|00005b80| 65 79 73 76 20 20 28 48 | 45 2a 20 65 6e 74 72 79 |eysv (H|E* entry|
|00005b90| 29 3b 0d 08 0c 04 a7 00 | 12 02 a7 00 00 00 00 00 |);......|........|
|00005ba0| 08 19 a6 00 12 00 00 00 | 00 00 00 00 07 00 00 00 |........|........|
|00005bb0| 18 05 a7 00 18 05 a7 00 | 00 00 00 00 00 64 00 00 |........|.....d..|
|00005bc0| a5 24 00 00 40 00 00 00 | ba 4c b6 ff 7a 59 b6 ff |.$..@...|.L..zY..|
|00005bd0| 00 00 00 00 0d 08 65 74 | 18 06 a7 00 00 00 00 00 |......et|........|
|00005be0| 00 24 00 00 85 98 00 00 | 00 e0 a5 07 ea f3 b5 ff |.$......|........|
|00005bf0| ca 22 b6 ff 20 22 00 00 | 4e 6f 74 65 20 74 68 61 |.".. "..|Note tha|
|00005c00| 74 20 74 68 65 73 65 20 | 66 75 6e 63 74 69 6f 6e |t these |function|
|00005c10| 73 20 74 61 6b 65 20 07 | 0e 07 a7 00 0e 07 a7 00 |s take .|........|
|00005c20| 00 00 00 00 53 56 2a 08 | 0e 08 a7 00 00 00 00 00 |....SV*.|........|
|00005c30| 20 6b 65 79 73 2c 20 77 | 68 69 63 68 20 73 69 6d | keys, w|hich sim|
|00005c40| 70 6c 69 66 69 65 73 20 | 77 72 69 74 69 6e 67 20 |plifies |writing |
|00005c50| 6f 66 20 65 78 74 65 6e | 73 69 6f 6e 20 63 6f 64 |of exten|sion cod|
|00005c60| 65 20 74 68 61 74 20 64 | 65 61 6c 73 20 77 69 74 |e that d|eals wit|
|00005c70| 68 20 68 61 73 68 20 00 | 00 98 00 00 85 ac 00 00 |h hash .|........|
|00005c80| 00 64 55 07 c3 bb b5 ff | a3 ea b5 ff 20 22 00 00 |.dU.....|.... "..|
|00005c90| 73 74 72 75 63 74 75 72 | 65 73 2e 20 20 54 68 65 |structur|es. The|
|00005ca0| 73 65 20 66 75 6e 63 74 | 69 6f 6e 73 20 61 6c 73 |se funct|ions als|
|00005cb0| 6f 20 61 6c 6c 6f 77 20 | 70 61 73 73 69 6e 67 20 |o allow |passing |
|00005cc0| 6f 66 20 07 0e 09 a7 00 | 0e 09 a7 00 00 00 00 00 |of .....|........|
|00005cd0| 53 56 2a 08 0e 0a a7 00 | 00 00 00 00 20 6b 65 79 |SV*.....|.... key|
|00005ce0| 73 20 74 6f 20 07 a6 00 | 0e 0b a7 00 0e 0b a7 00 |s to ...|........|
|00005cf0| 00 00 00 00 74 69 65 08 | 0e 0c a7 00 00 00 00 00 |....tie.|........|
|00005d00| 20 66 75 6e 63 74 69 6f | 6e 73 20 77 69 74 68 6f | functio|ns witho|
|00005d10| 75 74 20 66 6f 72 63 69 | 6e 67 20 79 6f 75 20 74 |ut forci|ng you t|
|00005d20| 6f 20 00 00 00 ac 00 00 | 25 54 00 00 40 40 10 04 |o ......|%T..@@..|
|00005d30| 9c 83 b5 ff 7c b2 b5 ff | 20 22 00 00 73 74 72 69 |....|...| "..stri|
|00005d40| 6e 67 69 66 79 20 74 68 | 65 20 6b 65 79 73 20 28 |ngify th|e keys (|
|00005d50| 75 6e 6c 69 6b 65 20 74 | 68 65 20 70 72 65 76 69 |unlike t|he previ|
|00005d60| 6f 75 73 20 73 65 74 20 | 6f 66 20 66 75 6e 63 74 |ous set |of funct|
|00005d70| 69 6f 6e 73 29 2e 0d 00 | 00 54 00 00 85 98 00 00 |ions)...|.T......|
|00005d80| 00 4c 73 07 c5 14 b5 ff | a5 43 b5 ff 20 22 00 00 |.Ls.....|.C.. "..|
|00005d90| 54 68 65 79 20 61 6c 73 | 6f 20 72 65 74 75 72 6e |They als|o return|
|00005da0| 20 61 6e 64 20 61 63 63 | 65 70 74 20 77 68 6f 6c | and acc|ept whol|
|00005db0| 65 20 68 61 73 68 20 65 | 6e 74 72 69 65 73 20 28 |e hash e|ntries (|
|00005dc0| 07 20 61 6c 0e 0d a7 00 | 0e 0d a7 00 00 00 00 00 |. al....|........|
|00005dd0| 48 45 2a 08 0e 0e a7 00 | 00 00 00 00 29 2c 20 6d |HE*.....|....), m|
|00005de0| 61 6b 69 6e 67 20 74 68 | 65 69 72 20 75 73 65 20 |aking th|eir use |
|00005df0| 6d 6f 72 65 20 65 66 66 | 69 63 69 65 6e 74 20 28 |more eff|icient (|
|00005e00| 73 69 6e 63 65 20 74 68 | 65 20 68 61 73 68 20 00 |since th|e hash .|
|00005e10| 00 98 00 00 85 98 00 00 | 00 70 bb 07 9e dc b4 ff |........|.p......|
|00005e20| 7e 0b b5 ff 20 22 00 00 | 6e 75 6d 62 65 72 20 66 |~... "..|number f|
|00005e30| 6f 72 20 61 20 70 61 72 | 74 69 63 75 6c 61 72 20 |or a par|ticular |
|00005e40| 73 74 72 69 6e 67 20 64 | 6f 65 73 6e 27 74 20 68 |string d|oesn't h|
|00005e50| 61 76 65 20 74 6f 20 62 | 65 20 72 65 63 6f 6d 70 |ave to b|e recomp|
|00005e60| 75 74 65 64 20 65 76 65 | 72 79 20 74 69 6d 65 29 |uted eve|ry time)|
|00005e70| 2e 20 20 53 65 65 20 74 | 68 65 20 63 68 61 70 74 |. See t|he chapt|
|00005e80| 65 72 20 07 10 0f a7 00 | 10 0f a7 00 00 00 00 00 |er .....|........|
|00005e90| 41 50 49 20 4c 49 53 54 | 49 4e 47 08 10 00 00 00 |API LIST|ING.....|
|00005ea0| 00 00 00 00 20 00 00 00 | 00 98 00 00 25 4c 00 00 |.... ...|....%L..|
|00005eb0| 40 04 74 03 77 a4 b4 ff | 57 d3 b4 ff 20 22 00 00 |@.t.w...|W... "..|
|00005ec0| 6c 61 74 65 72 20 69 6e | 20 74 68 69 73 20 64 6f |later in| this do|
|00005ed0| 63 75 6d 65 6e 74 20 66 | 6f 72 20 64 65 74 61 69 |cument f|or detai|
|00005ee0| 6c 65 64 20 64 65 73 63 | 72 69 70 74 69 6f 6e 73 |led desc|riptions|
|00005ef0| 2e 0d 00 00 00 4c 00 00 | 05 84 00 00 00 88 cd 07 |.....L..|........|
|00005f00| a0 35 b4 ff 80 64 b4 ff | 20 22 00 00 54 68 65 20 |.5...d..| "..The |
|00005f10| 66 6f 6c 6c 6f 77 69 6e | 67 20 6d 61 63 72 6f 73 |followin|g macros|
|00005f20| 20 6d 75 73 74 20 61 6c | 77 61 79 73 20 62 65 20 | must al|ways be |
|00005f30| 75 73 65 64 20 74 6f 20 | 61 63 63 65 73 73 20 74 |used to |access t|
|00005f40| 68 65 20 63 6f 6e 74 65 | 6e 74 73 20 6f 66 20 68 |he conte|nts of h|
|00005f50| 61 73 68 20 65 6e 74 72 | 69 65 73 2e 20 20 4e 6f |ash entr|ies. No|
|00005f60| 74 65 20 74 68 61 74 20 | 74 68 65 20 61 72 67 75 |te that |the argu|
|00005f70| 6d 65 6e 74 73 20 00 00 | 00 84 00 00 85 90 00 00 |ments ..|........|
|00005f80| 00 58 a3 07 79 fd b3 ff | 59 2c b4 ff 20 22 00 00 |.X..y...|Y,.. "..|
|00005f90| 74 6f 20 74 68 65 73 65 | 20 6d 61 63 72 6f 73 20 |to these| macros |
|00005fa0| 6d 75 73 74 20 62 65 20 | 73 69 6d 70 6c 65 20 76 |must be |simple v|
|00005fb0| 61 72 69 61 62 6c 65 73 | 2c 20 73 69 6e 63 65 20 |ariables|, since |
|00005fc0| 74 68 65 79 20 6d 61 79 | 20 67 65 74 20 65 76 61 |they may| get eva|
|00005fd0| 6c 75 61 74 65 64 20 6d | 6f 72 65 20 74 68 61 6e |luated m|ore than|
|00005fe0| 20 6f 6e 63 65 2e 20 20 | 53 65 65 20 74 68 65 20 | once. |See the |
|00005ff0| 63 68 61 70 74 65 72 20 | 07 56 69 76 10 10 a7 00 |chapter |.Viv....|
|00006000| 10 10 a7 00 00 00 00 00 | 00 90 00 00 a5 90 00 00 |........|........|
|00006010| 40 74 d1 05 52 c5 b3 ff | 32 f4 b3 ff 28 23 00 00 |@t..R...|2...(#..|
|00006020| 41 50 49 20 4c 49 53 54 | 49 4e 47 08 10 00 00 00 |API LIST|ING.....|
|00006030| 00 00 00 00 20 6c 61 74 | 65 72 20 69 6e 20 74 68 |.... lat|er in th|
|00006040| 69 73 20 64 6f 63 75 6d | 65 6e 74 20 66 6f 72 20 |is docum|ent for |
|00006050| 64 65 74 61 69 6c 65 64 | 20 64 65 73 63 72 69 70 |detailed| descrip|
|00006060| 74 69 6f 6e 73 20 6f 66 | 20 74 68 65 73 65 20 6d |tions of| these m|
|00006070| 61 63 72 6f 73 2e 0d 07 | 12 11 a7 00 12 11 a7 00 |acros...|........|
|00006080| 00 00 00 00 07 65 20 76 | 0c 12 a7 00 12 11 a7 00 |.....e v|........|
|00006090| 0c 12 a7 00 00 00 00 00 | 00 90 00 00 01 10 00 00 |........|........|
|000060a0| 41 80 32 02 00 00 00 00 | 00 10 00 00 02 1c 00 00 |A.2.....|........|
|000060b0| 70 0a 00 00 00 00 00 00 | 12 11 a7 00 0c 12 a7 00 |p.......|........|
|000060c0| 00 00 00 00 00 1c 00 00 | 25 40 00 00 40 80 32 02 |........|%@..@.2.|
|000060d0| 2a 4e b1 ff 3a 75 b1 ff | 70 1a 00 00 16 00 00 00 |*N..:u..|p.......|
|000060e0| b0 fc 07 00 00 00 00 00 | 48 65 50 56 28 48 45 2a |........|HePV(HE*|
|000060f0| 20 68 65 2c 20 53 54 52 | 4c 45 4e 20 6c 65 6e 29 | he, STR|LEN len)|
|00006100| 0d 00 00 00 00 40 00 00 | 25 28 00 00 40 b0 30 01 |.....@..|%(..@.0.|
|00006110| 4a 1f b1 ff 5a 46 b1 ff | 70 1a 00 00 48 65 56 41 |J...ZF..|p...HeVA|
|00006120| 4c 28 48 45 2a 20 68 65 | 29 0d 00 00 00 28 00 00 |L(HE* he|)....(..|
|00006130| 25 28 00 00 40 20 48 01 | 6a f0 b0 ff 7a 17 b1 ff |%(..@ H.|j...z...|
|00006140| 70 1a 00 00 48 65 48 41 | 53 48 28 48 45 2a 20 68 |p...HeHA|SH(HE* h|
|00006150| 65 29 0d 00 00 28 00 00 | 25 28 00 00 40 90 5f 01 |e)...(..|%(..@._.|
|00006160| 8a c1 b0 ff 9a e8 b0 ff | 70 1a 00 00 48 65 53 56 |........|p...HeSV|
|00006170| 4b 45 59 28 48 45 2a 20 | 68 65 29 0d 00 28 00 00 |KEY(HE* |he)..(..|
|00006180| 25 30 00 00 40 30 ec 01 | aa 92 b0 ff ba b9 b0 ff |%0..@0..|........|
|00006190| 70 1a 00 00 48 65 53 56 | 4b 45 59 5f 66 6f 72 63 |p...HeSV|KEY_forc|
|000061a0| 65 28 48 45 2a 20 68 65 | 29 0d 00 00 00 30 00 00 |e(HE* he|)....0..|
|000061b0| a5 60 00 00 40 d0 78 02 | ca 63 b0 ff da 8a b0 ff |.`..@.x.|.c......|
|000061c0| 70 1a 00 00 48 65 53 56 | 4b 45 59 5f 73 65 74 28 |p...HeSV|KEY_set(|
|000061d0| 48 45 2a 20 68 65 2c 20 | 53 56 2a 20 73 76 29 0d |HE* he, |SV* sv).|
|000061e0| 08 56 3a 0d 0c 13 a7 00 | 12 11 a7 00 00 00 00 00 |.V:.....|........|
|000061f0| 08 05 05 05 12 00 00 00 | 00 00 00 00 07 00 00 00 |........|........|
|00006200| 18 14 a7 00 18 14 a7 00 | 00 00 00 00 00 60 00 00 |........|.....`..|
|00006210| a5 34 00 00 40 00 00 00 | 3a 4f b0 ff fa 5b b0 ff |.4..@...|:O...[..|
|00006220| 00 00 00 00 0d 08 a6 00 | 18 15 a7 00 00 00 00 00 |........|........|
|00006230| 07 05 05 05 14 16 a7 00 | 14 16 a7 00 00 00 00 00 |........|........|
|00006240| 00 34 00 00 a5 d0 00 00 | 40 28 e8 07 6a f6 af ff |.4......|@(..j...|
|00006250| 4a 25 b0 ff 20 22 00 00 | 54 68 65 73 65 20 74 77 |J%.. "..|These tw|
|00006260| 6f 20 6c 6f 77 65 72 20 | 6c 65 76 65 6c 20 6d 61 |o lower |level ma|
|00006270| 63 72 6f 73 20 61 72 65 | 20 64 65 66 69 6e 65 64 |cros are| defined|
|00006280| 2c 20 62 75 74 20 6d 75 | 73 74 20 6f 6e 6c 79 20 |, but mu|st only |
|00006290| 62 65 20 75 73 65 64 20 | 77 68 65 6e 20 64 65 61 |be used |when dea|
|000062a0| 6c 69 6e 67 20 77 69 74 | 68 20 6b 65 79 73 20 74 |ling wit|h keys t|
|000062b0| 68 61 74 20 61 72 65 20 | 6e 6f 74 20 07 05 05 05 |hat are |not ....|
|000062c0| 0e 17 a7 00 14 16 a7 00 | 0e 17 a7 00 00 00 00 00 |........|........|
|000062d0| 53 56 2a 08 0e 18 a7 00 | 14 16 a7 00 00 00 00 00 |SV*.....|........|
|000062e0| 73 3a 0d 08 14 00 00 00 | 00 00 00 00 07 49 33 32 |s:......|.....I32|
|000062f0| 12 19 a7 00 12 19 a7 00 | 00 00 00 00 07 72 29 3b |........|.....r);|
|00006300| 0c 1a a7 00 12 19 a7 00 | 0c 1a a7 00 00 00 00 00 |........|........|
|00006310| 00 d0 00 00 25 28 00 00 | 40 b0 30 01 63 8f af ff |....%(..|@.0.c...|
|00006320| 73 b6 af ff 70 1a 00 00 | 48 65 4b 45 59 28 48 45 |s...p...|HeKEY(HE|
|00006330| 2a 20 68 65 29 0d 00 00 | 00 28 00 00 a5 50 00 00 |* he)...|.(...P..|
|00006340| 40 20 48 01 83 60 af ff | 93 87 af ff 70 1a 00 00 |@ H..`..|....p...|
|00006350| 48 65 4b 4c 45 4e 28 48 | 45 2a 20 68 65 29 0d 08 |HeKLEN(H|E* he)..|
|00006360| 0c 1b a7 00 12 19 a7 00 | 00 00 00 00 08 60 a6 00 |........|.....`..|
|00006370| 12 00 00 00 00 00 00 00 | 07 75 6d 08 18 1c a7 00 |........|.um.....|
|00006380| 18 1c a7 00 00 00 00 00 | 00 50 00 00 a5 34 00 00 |........|.P...4..|
|00006390| 40 00 00 00 f3 4b af ff | b3 58 af ff 00 00 00 00 |@....K..|.X......|
|000063a0| 0d 08 2e 20 18 1d a7 00 | 00 00 00 00 07 20 41 56 |... ....|..... AV|
|000063b0| 0a 1e a7 00 0a 1e a7 00 | 00 00 00 00 00 34 00 00 |........|.....4..|
|000063c0| a5 2c 00 00 40 9e 17 01 | 53 eb ae ff 03 22 af ff |.,..@...|S...."..|
|000063d0| 18 2b 00 00 52 65 66 65 | 72 65 6e 63 65 73 0d 08 |.+..Refe|rences..|
|000063e0| 0a 1f a7 00 00 00 00 00 | 00 2c 00 00 a5 84 00 00 |........|.,......|
|000063f0| 40 b4 a2 06 1e 96 ae ff | fe c4 ae ff 20 22 00 00 |@.......|.... "..|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.