61 |
independent position in the casefile. |
independent position in the casefile. |
62 |
|
|
63 |
Casereaders may only move forward. They cannot move |
Casereaders may only move forward. They cannot move |
64 |
backward to arbitrary records or seek randomly. (In the |
backward to arbitrary records or seek randomly. |
65 |
future, the concept of a "casemark" will be introduced |
Cloning casereaders is possible, but it is not yet |
66 |
to allow a limited form of backward seek, but this has |
implemented. |
|
not yet been implemented.) |
|
|
|
|
|
Cloning casereaders is possible, but no one has had a |
|
|
need for it yet, so it is not implemented. |
|
67 |
|
|
68 |
Use casefile_get_reader() to create a casereader for |
Use casefile_get_reader() to create a casereader for |
69 |
use in phase 2. This also transitions from phase 2 to |
use in phase 2. This also transitions from phase 1 to |
70 |
phase 3. Calling casefile_mode_reader() makes the same |
phase 2. Calling casefile_mode_reader() makes the same |
71 |
transition, without creating a casereader. |
transition, without creating a casereader. |
72 |
|
|
73 |
Use casereader_read(), casereader_read_xfer(), or |
Use casereader_read(), casereader_read_xfer(), or |
79 |
also read with casereaders in this phase, but the |
also read with casereaders in this phase, but the |
80 |
ability to create new casereaders is curtailed. |
ability to create new casereaders is curtailed. |
81 |
|
|
82 |
In this phase, casereaders could still be cloned, and |
In this phase, casereaders could still be cloned (once |
83 |
casemarks could still be used to seek backward (given |
we eventually implement cloning). |
|
that we eventually implement these functionalities). |
|
84 |
|
|
85 |
To transition from phase 1 or 2 to phase 3 and create a |
To transition from phase 1 or 2 to phase 3 and create a |
86 |
casereader, call casefile_get_destructive_reader(). |
casereader, call casefile_get_destructive_reader(). |
91 |
more casereaders may be created with |
more casereaders may be created with |
92 |
casefile_get_reader() or |
casefile_get_reader() or |
93 |
casefile_get_destructive_reader(). (If cloning of |
casefile_get_destructive_reader(). (If cloning of |
94 |
casereaders or casemarks were implemented, they would |
casereaders were implemented, it would still be |
95 |
still be possible.) |
possible.) |
96 |
|
|
97 |
The purpose of the limitations applied to casereaders |
The purpose of the limitations applied to casereaders |
98 |
in phase 3 is to allow in-memory casefiles to fully |
in phase 3 is to allow in-memory casefiles to fully |