From Jason Turner

[locale.cons]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpfcwe4maa/{from.md → to.md} +16 -8
tmp/tmpfcwe4maa/{from.md → to.md} RENAMED
@@ -28,51 +28,59 @@ any *implementation-defined* values.
28
 
29
  ``` cpp
30
  explicit locale(const string& std_name);
31
  ```
32
 
33
- *Effects:* The same as `locale(std_name.c_str())`.
34
 
35
  ``` cpp
36
- locale(const locale& other, const char* std_name, category);
37
  ```
38
 
 
 
39
  *Effects:* Constructs a locale as a copy of `other` except for the
40
  facets identified by the `category` argument, which instead implement
41
  the same semantics as `locale(std_name)`.
42
 
43
- *Throws:* `runtime_error` if the argument is not valid, or is null.
 
44
 
45
  *Remarks:* The locale has a name if and only if `other` has a name.
46
 
47
  ``` cpp
48
- locale(const locale& other, const string& std_name, category cat);
49
  ```
50
 
51
- *Effects:* The same as `locale(other, std_name.c_str(), cat)`.
52
 
53
  ``` cpp
54
  template<class Facet> locale(const locale& other, Facet* f);
55
  ```
56
 
57
  *Effects:* Constructs a locale incorporating all facets from the first
58
  argument except that of type `Facet`, and installs the second argument
59
  as the remaining facet. If `f` is null, the resulting object is a copy
60
  of `other`.
61
 
62
- *Remarks:* The resulting locale has no name.
 
63
 
64
  ``` cpp
65
  locale(const locale& other, const locale& one, category cats);
66
  ```
67
 
 
 
68
  *Effects:* Constructs a locale incorporating all facets from the first
69
  argument except those that implement `cats`, which are instead
70
  incorporated from the second argument.
71
 
72
- *Remarks:* The resulting locale has a name if and only if the first two
73
- arguments have names.
 
 
74
 
75
  ``` cpp
76
  const locale& operator=(const locale& other) noexcept;
77
  ```
78
 
 
28
 
29
  ``` cpp
30
  explicit locale(const string& std_name);
31
  ```
32
 
33
+ *Effects:* Equivalent to `locale(std_name.c_str())`.
34
 
35
  ``` cpp
36
+ locale(const locale& other, const char* std_name, category cats);
37
  ```
38
 
39
+ *Preconditions:* `cats` is a valid `category` value [[locale.category]].
40
+
41
  *Effects:* Constructs a locale as a copy of `other` except for the
42
  facets identified by the `category` argument, which instead implement
43
  the same semantics as `locale(std_name)`.
44
 
45
+ *Throws:* `runtime_error` if the second argument is not valid, or is
46
+ null.
47
 
48
  *Remarks:* The locale has a name if and only if `other` has a name.
49
 
50
  ``` cpp
51
+ locale(const locale& other, const string& std_name, category cats);
52
  ```
53
 
54
+ *Effects:* Equivalent to `locale(other, std_name.c_str(), cats)`.
55
 
56
  ``` cpp
57
  template<class Facet> locale(const locale& other, Facet* f);
58
  ```
59
 
60
  *Effects:* Constructs a locale incorporating all facets from the first
61
  argument except that of type `Facet`, and installs the second argument
62
  as the remaining facet. If `f` is null, the resulting object is a copy
63
  of `other`.
64
 
65
+ *Remarks:* If `f` is null, the resulting locale has the same name as
66
+ `other`. Otherwise, the resulting locale has no name.
67
 
68
  ``` cpp
69
  locale(const locale& other, const locale& one, category cats);
70
  ```
71
 
72
+ *Preconditions:* `cats` is a valid `category` value.
73
+
74
  *Effects:* Constructs a locale incorporating all facets from the first
75
  argument except those that implement `cats`, which are instead
76
  incorporated from the second argument.
77
 
78
+ *Remarks:* If `cats` is equal to `locale::none`, the resulting locale
79
+ has a name if and only if the first argument has a name. Otherwise, the
80
+ resulting locale has a name if and only if the first two arguments both
81
+ have names.
82
 
83
  ``` cpp
84
  const locale& operator=(const locale& other) noexcept;
85
  ```
86