tmp/tmpt11shv4j/{from.md → to.md}
RENAMED
|
@@ -103,18 +103,19 @@ the positioning operation fails. Otherwise, the function determines
|
|
| 103 |
`newoff` as indicated in Table [[tab:future.newoff.values]].
|
| 104 |
|
| 105 |
**Table: `newoff` values** <a id="tab:future.newoff.values">[tab:future.newoff.values]</a>
|
| 106 |
|
| 107 |
| Condition | `newoff` Value |
|
| 108 |
-
| -----------------
|
| 109 |
| `way == ios::beg` | 0 |
|
| 110 |
| `way == ios::cur` | the next pointer minus the beginning pointer (`xnext - xbeg`). |
|
| 111 |
| `way == ios::end` | `seekhigh` minus the beginning pointer (`seekhigh - xbeg`). |
|
| 112 |
-
| If `(newoff + off) <`<br> `(seeklow - xbeg)`,<br> or `(seekhigh - xbeg) <`<br> `(newoff + off)` | the positioning operation fails |
|
| 113 |
|
| 114 |
|
| 115 |
-
|
|
|
|
|
|
|
| 116 |
pointer `xnext`.
|
| 117 |
|
| 118 |
*Returns:* `pos_type(newoff)`, constructed from the resultant offset
|
| 119 |
`newoff` (of type `off_type`), that stores the resultant stream
|
| 120 |
position, if possible. If the positioning operation fails, or if the
|
|
@@ -131,13 +132,16 @@ sequences, if possible, to correspond to the stream position stored in
|
|
| 131 |
`sp` (as described below).
|
| 132 |
|
| 133 |
- If `(which & ios::in) != 0`, positions the input sequence.
|
| 134 |
- If `(which & ios::out) != 0`, positions the output sequence.
|
| 135 |
- If the function positions neither sequence, the positioning operation
|
| 136 |
-
fails.
|
| 137 |
-
|
| 138 |
-
|
|
|
|
|
|
|
|
|
|
| 139 |
- If `newoff` is an invalid stream position, has a negative value, or
|
| 140 |
has a value greater than (`seekhigh` - `seeklow`), the positioning
|
| 141 |
operation fails
|
| 142 |
- Otherwise, the function adds `newoff` to the beginning pointer `xbeg`
|
| 143 |
and stores the result in the next pointer `xnext`.
|
|
|
|
| 103 |
`newoff` as indicated in Table [[tab:future.newoff.values]].
|
| 104 |
|
| 105 |
**Table: `newoff` values** <a id="tab:future.newoff.values">[tab:future.newoff.values]</a>
|
| 106 |
|
| 107 |
| Condition | `newoff` Value |
|
| 108 |
+
| ----------------- | -------------------------------------------------------------- |
|
| 109 |
| `way == ios::beg` | 0 |
|
| 110 |
| `way == ios::cur` | the next pointer minus the beginning pointer (`xnext - xbeg`). |
|
| 111 |
| `way == ios::end` | `seekhigh` minus the beginning pointer (`seekhigh - xbeg`). |
|
|
|
|
| 112 |
|
| 113 |
|
| 114 |
+
If `(newoff + off) < (seeklow - xbeg)` or
|
| 115 |
+
`(seekhigh - xbeg) < (newoff + off)`, the positioning operation fails.
|
| 116 |
+
Otherwise, the function assigns `xbeg + newoff + off` to the next
|
| 117 |
pointer `xnext`.
|
| 118 |
|
| 119 |
*Returns:* `pos_type(newoff)`, constructed from the resultant offset
|
| 120 |
`newoff` (of type `off_type`), that stores the resultant stream
|
| 121 |
position, if possible. If the positioning operation fails, or if the
|
|
|
|
| 132 |
`sp` (as described below).
|
| 133 |
|
| 134 |
- If `(which & ios::in) != 0`, positions the input sequence.
|
| 135 |
- If `(which & ios::out) != 0`, positions the output sequence.
|
| 136 |
- If the function positions neither sequence, the positioning operation
|
| 137 |
+
fails.
|
| 138 |
+
|
| 139 |
+
For a sequence to be positioned, if its next pointer is a null pointer,
|
| 140 |
+
the positioning operation fails. Otherwise, the function determines
|
| 141 |
+
`newoff` from `sp.offset()`:
|
| 142 |
+
|
| 143 |
- If `newoff` is an invalid stream position, has a negative value, or
|
| 144 |
has a value greater than (`seekhigh` - `seeklow`), the positioning
|
| 145 |
operation fails
|
| 146 |
- Otherwise, the function adds `newoff` to the beginning pointer `xbeg`
|
| 147 |
and stores the result in the next pointer `xnext`.
|