Skip to content

Commit 5edf096

Browse files
authored
CXX-3231 add v1 forward headers and component files (#1401)
1 parent 537dde0 commit 5edf096

35 files changed

+1362
-0
lines changed

src/bsoncxx/include/bsoncxx/docs/v1.hpp

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,17 +40,67 @@
4040
/// @warning For internal use only!
4141
///
4242

43+
///
44+
/// @dir bsoncxx/v1/array
45+
/// Provides headers declaring entities in @ref bsoncxx::v1::array.
46+
///
47+
/// @warning For internal use only!
48+
///
49+
50+
///
51+
/// @dir bsoncxx/v1/document
52+
/// Provides headers declaring entities in @ref bsoncxx::v1::document.
53+
///
54+
/// @warning For internal use only!
55+
///
56+
57+
///
58+
/// @dir bsoncxx/v1/element
59+
/// Provides headers declaring entities in @ref bsoncxx::v1::element.
60+
///
61+
/// @warning For internal use only!
62+
///
63+
4364
///
4465
/// @dir bsoncxx/v1/stdx
4566
/// Provides headers declaring entities in @ref bsoncxx::v1::stdx.
4667
///
4768

69+
///
70+
/// @dir bsoncxx/v1/types
71+
/// Provides headers declaring entities in @ref bsoncxx::v1::types.
72+
///
73+
/// @warning For internal use only!
74+
///
75+
4876
///
4977
/// @namespace bsoncxx::v1
5078
/// Declares entities whose ABI stability is guaranteed for documented symbols.
5179
///
5280

81+
///
82+
/// @namespace bsoncxx::v1::array
83+
/// @copydoc bsoncxx::array
84+
///
85+
86+
///
87+
/// @namespace bsoncxx::v1::document
88+
/// @copydoc bsoncxx::document
89+
///
90+
91+
///
92+
/// @namespace bsoncxx::v1::element
93+
/// Declares entities representing a BSON element.
94+
///
95+
5396
///
5497
/// @namespace bsoncxx::v1::stdx
5598
/// @copydoc bsoncxx::stdx
5699
///
100+
101+
///
102+
/// @namespace bsoncxx::v1::types
103+
/// Declares entities representing a BSON type value.
104+
///
105+
/// @note A "BSON type value" refers to the value of a BSON element without its key.
106+
///
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
// Copyright 2009-present MongoDB, Inc.
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#pragma once
16+
17+
#include <bsoncxx/v1/detail/prelude.hpp>
18+
19+
namespace bsoncxx {
20+
namespace v1 {
21+
namespace array {
22+
23+
class value;
24+
25+
} // namespace array
26+
} // namespace v1
27+
} // namespace bsoncxx
28+
29+
#include <bsoncxx/v1/detail/postlude.hpp>
30+
31+
///
32+
/// @file
33+
/// Declares @ref bsoncxx::v1::array::value.
34+
///
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
// Copyright 2009-present MongoDB, Inc.
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#pragma once
16+
17+
#include <bsoncxx/v1/array/value-fwd.hpp>
18+
19+
//
20+
21+
#include <bsoncxx/v1/detail/prelude.hpp>
22+
23+
namespace bsoncxx {
24+
namespace v1 {
25+
namespace array {
26+
27+
///
28+
/// A BSON array.
29+
///
30+
/// @attention This feature is experimental! It is not ready for use!
31+
///
32+
class value {};
33+
34+
} // namespace array
35+
} // namespace v1
36+
} // namespace bsoncxx
37+
38+
#include <bsoncxx/v1/detail/postlude.hpp>
39+
40+
///
41+
/// @file
42+
/// Provides @ref bsoncxx::v1::array::value.
43+
///
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
// Copyright 2009-present MongoDB, Inc.
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#pragma once
16+
17+
#include <bsoncxx/v1/detail/prelude.hpp>
18+
19+
namespace bsoncxx {
20+
namespace v1 {
21+
namespace array {
22+
23+
class view;
24+
25+
} // namespace array
26+
} // namespace v1
27+
} // namespace bsoncxx
28+
29+
#include <bsoncxx/v1/detail/postlude.hpp>
30+
31+
///
32+
/// @file
33+
/// Declares @ref bsoncxx::v1::array::view.
34+
///
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
// Copyright 2009-present MongoDB, Inc.
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#pragma once
16+
17+
#include <bsoncxx/v1/array/view-fwd.hpp>
18+
19+
//
20+
21+
#include <bsoncxx/v1/detail/prelude.hpp>
22+
23+
namespace bsoncxx {
24+
namespace v1 {
25+
namespace array {
26+
27+
///
28+
/// A non-owning, read-only BSON array.
29+
///
30+
/// @attention This feature is experimental! It is not ready for use!
31+
///
32+
class view {};
33+
34+
} // namespace array
35+
} // namespace v1
36+
} // namespace bsoncxx
37+
38+
#include <bsoncxx/v1/detail/postlude.hpp>
39+
40+
///
41+
/// @file
42+
/// Provides @ref bsoncxx::v1::array::view.
43+
///
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
// Copyright 2009-present MongoDB, Inc.
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#pragma once
16+
17+
#include <bsoncxx/v1/detail/prelude.hpp>
18+
19+
namespace bsoncxx {
20+
namespace v1 {
21+
22+
class decimal128;
23+
24+
} // namespace v1
25+
} // namespace bsoncxx
26+
27+
#include <bsoncxx/v1/detail/postlude.hpp>
28+
29+
///
30+
/// @file
31+
/// Declares @ref bsoncxx::v1::decimal128.
32+
///
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
// Copyright 2009-present MongoDB, Inc.
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#pragma once
16+
17+
#include <bsoncxx/v1/decimal128-fwd.hpp>
18+
19+
//
20+
21+
#include <bsoncxx/v1/detail/prelude.hpp>
22+
23+
namespace bsoncxx {
24+
namespace v1 {
25+
26+
///
27+
/// A BSON Decimal128.
28+
///
29+
/// @attention This feature is experimental! It is not ready for use!
30+
///
31+
class decimal128 {};
32+
33+
} // namespace v1
34+
} // namespace bsoncxx
35+
36+
#include <bsoncxx/v1/detail/postlude.hpp>
37+
38+
///
39+
/// @file
40+
/// Provides @ref bsoncxx::v1::decimal128.
41+
///
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
// Copyright 2009-present MongoDB, Inc.
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#pragma once
16+
17+
#include <bsoncxx/v1/detail/prelude.hpp>
18+
19+
namespace bsoncxx {
20+
namespace v1 {
21+
namespace document {
22+
23+
class value;
24+
25+
} // namespace document
26+
} // namespace v1
27+
} // namespace bsoncxx
28+
29+
#include <bsoncxx/v1/detail/postlude.hpp>
30+
31+
///
32+
/// @file
33+
/// Declares @ref bsoncxx::v1::document::value.
34+
///
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
// Copyright 2009-present MongoDB, Inc.
2+
//
3+
// Licensed under the Apache License, Version 2.0 (the "License");
4+
// you may not use this file except in compliance with the License.
5+
// You may obtain a copy of the License at
6+
//
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
//
9+
// Unless required by applicable law or agreed to in writing, software
10+
// distributed under the License is distributed on an "AS IS" BASIS,
11+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
// See the License for the specific language governing permissions and
13+
// limitations under the License.
14+
15+
#pragma once
16+
17+
#include <bsoncxx/v1/document/value-fwd.hpp>
18+
19+
//
20+
21+
#include <bsoncxx/v1/detail/prelude.hpp>
22+
23+
namespace bsoncxx {
24+
namespace v1 {
25+
namespace document {
26+
27+
///
28+
/// A BSON document.
29+
///
30+
/// @attention This feature is experimental! It is not ready for use!
31+
///
32+
class value {};
33+
34+
} // namespace document
35+
} // namespace v1
36+
} // namespace bsoncxx
37+
38+
#include <bsoncxx/v1/detail/postlude.hpp>
39+
40+
///
41+
/// @file
42+
/// Provides @ref bsoncxx::v1::document::value.
43+
///

0 commit comments

Comments
 (0)