From Jason Turner

[depr.strstreambuf.cons]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpboeszw9k/{from.md → to.md} +0 -97
tmp/tmpboeszw9k/{from.md → to.md} RENAMED
@@ -1,97 +0,0 @@
1
- #### `strstreambuf` constructors <a id="depr.strstreambuf.cons">[[depr.strstreambuf.cons]]</a>
2
-
3
- ``` cpp
4
- explicit strstreambuf(streamsize alsize_arg);
5
- ```
6
-
7
- *Effects:* Initializes the base class with `streambuf()`. The
8
- postconditions of this function are indicated in
9
- [[depr.strstreambuf.cons.sz]].
10
-
11
- **Table: `strstreambuf(streamsize)` effects** <a id="depr.strstreambuf.cons.sz">[depr.strstreambuf.cons.sz]</a>
12
-
13
- | Element | Value |
14
- | --------- | -------------- |
15
- | `strmode` | `dynamic` |
16
- | `alsize` | `alsize_arg` |
17
- | `palloc` | a null pointer |
18
- | `pfree` | a null pointer |
19
-
20
- ``` cpp
21
- strstreambuf(void* (*palloc_arg)(size_t), void (*pfree_arg)(void*));
22
- ```
23
-
24
- *Effects:* Initializes the base class with `streambuf()`. The
25
- postconditions of this function are indicated in
26
- [[depr.strstreambuf.cons.alloc]].
27
-
28
- **Table: `strstreambuf(void* (*)(size_t), void (*)(void*))` effects** <a id="depr.strstreambuf.cons.alloc">[depr.strstreambuf.cons.alloc]</a>
29
-
30
- | Element | Value |
31
- | --------- | -------------------- |
32
- | `strmode` | `dynamic` |
33
- | `alsize` | an unspecified value |
34
- | `palloc` | `palloc_arg` |
35
- | `pfree` | `pfree_arg` |
36
-
37
- ``` cpp
38
- strstreambuf(char* gnext_arg, streamsize n, char* pbeg_arg = nullptr);
39
- strstreambuf(signed char* gnext_arg, streamsize n,
40
- signed char* pbeg_arg = nullptr);
41
- strstreambuf(unsigned char* gnext_arg, streamsize n,
42
- unsigned char* pbeg_arg = nullptr);
43
- ```
44
-
45
- *Effects:* Initializes the base class with `streambuf()`. The
46
- postconditions of this function are indicated in
47
- [[depr.strstreambuf.cons.ptr]].
48
-
49
- **Table: `strstreambuf(charT*, streamsize, charT*)` effects** <a id="depr.strstreambuf.cons.ptr">[depr.strstreambuf.cons.ptr]</a>
50
-
51
- | Element | Value |
52
- | --------- | -------------------- |
53
- | `strmode` | 0 |
54
- | `alsize` | an unspecified value |
55
- | `palloc` | a null pointer |
56
- | `pfree` | a null pointer |
57
-
58
-
59
- `gnext_arg` shall point to the first element of an array object whose
60
- number of elements `N` is determined as follows:
61
-
62
- - If `n > 0`, `N` is `n`.
63
- - If `n == 0`, `N` is `std::strlen(gnext_arg)`.
64
- - If `n < 0`, `N` is `INT_MAX`.[^1]
65
-
66
- If `pbeg_arg` is a null pointer, the function executes:
67
-
68
- ``` cpp
69
- setg(gnext_arg, gnext_arg, gnext_arg + N);
70
- ```
71
-
72
- Otherwise, the function executes:
73
-
74
- ``` cpp
75
- setg(gnext_arg, gnext_arg, pbeg_arg);
76
- setp(pbeg_arg, pbeg_arg + N);
77
- ```
78
-
79
- ``` cpp
80
- strstreambuf(const char* gnext_arg, streamsize n);
81
- strstreambuf(const signed char* gnext_arg, streamsize n);
82
- strstreambuf(const unsigned char* gnext_arg, streamsize n);
83
- ```
84
-
85
- *Effects:* Behaves the same as `strstreambuf((char*)gnext_arg,n)`,
86
- except that the constructor also sets `constant` in `strmode`.
87
-
88
- ``` cpp
89
- virtual ~strstreambuf();
90
- ```
91
-
92
- *Effects:* Destroys an object of class `strstreambuf`. The function
93
- frees the dynamically allocated array object only if
94
- `(strmode & allocated) != 0` and `(strmode & frozen) == 0`.
95
- ([[depr.strstreambuf.virtuals]] describes how a dynamically allocated
96
- array object is freed.)
97
-