Skip to content

Commit 2558b20

Browse files
committed
Update documentation
1 parent 71b75fc commit 2558b20

File tree

2 files changed

+42
-6
lines changed

2 files changed

+42
-6
lines changed

README.md

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -127,9 +127,9 @@ do that.
127127

128128
### schemagen
129129

130-
I'm using [Boost](https://www.boost.org/doc/libs/1_69_0/more/getting_started/index.html) for `schemagen`:
130+
I'm using [Boost](https://www.boost.org/doc/libs/1_82_0/more/getting_started/index.html) for `schemagen`:
131131

132-
- Command line handling: [Boost.Program_options](https://www.boost.org/doc/libs/1_69_0/doc/html/program_options.html).
132+
- Command line handling: [Boost.Program_options](https://www.boost.org/doc/libs/1_82_0/doc/html/program_options.html).
133133
Run `schemagen -?` to get a list of options. Many of the files in the [samples](samples/) directory were generated
134134
with `schemagen`, you can look at [samples/CMakeLists.txt](samples/CMakeLists.txt) for a few examples of how to call it:
135135
```
@@ -144,8 +144,8 @@ Command line options:
144144
-n [ --namespace ] arg C++ sub-namespace for the generated types
145145
--source-dir arg Target path for the <prefix>Schema.cpp source file
146146
--header-dir arg Target path for the <prefix>Schema.h header file
147-
--no-stubs Generate abstract classes without stub implementations
148-
--separate-files Generate separate files for each of the types
147+
--stubs Unimplemented fields throw runtime exceptions instead
148+
of compiler errors
149149
--no-introspection Do not generate support for Introspection
150150
```
151151

@@ -161,8 +161,7 @@ Windows and UWP shared library targets (the platform triplets which don't end in
161161
### clientgen
162162

163163
The `clientgen` utility is based on `schemagen` and shares the same external dependencies. The command line arguments
164-
are almost the same, except it takes an extra file for the request document and there is no equivalent to `--no-stubs` or
165-
`--separate-files`:
164+
are almost the same, except it takes an extra file for the request document and there is no equivalent to `--stubs`:
166165
```
167166
Usage: clientgen [options] <schema file> <request file> <output filename prefix> <output namespace>
168167
Command line options:
@@ -259,6 +258,12 @@ is no implementation of this schema, it relies entirely generated stubs (created
259258
successfully without defining more than placeholder objects fo the Query, Mutation, and Subscription operations in
260259
[samples/validation/ValidationMock.h](samples/validation/ValidationMock.h). It is used to test the validation logic
261260
with every example or counter-example in the spec in [test/ValidationTests.cpp](test/ValidationTests.cpp).
261+
- [samples/proxy](samples/proxy/) (`GRAPHQL_BUILD_HTTP_SAMPLE=ON`): Generates a `client` and `server` pair of
262+
executables which proxy requests from the `client` to the `server` over HTTP (on port 8080 for localhost). The HTTP
263+
support in both samples comes from [Boost.Beast](https://www.boost.org/doc/libs/1_82_0/libs/beast/doc/html/index.html),
264+
which must be included in your `Boost` installation to build this directory. If you are using `vcpkg`, it will install
265+
the necessary `Boost` components on demand. _Note: This directory uses the Boost Software License because the samples
266+
borrow heavily from examples in the `Boost.Beast` documentation._
262267

263268
# Build and Test
264269

samples/proxy/LICENSE

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
Portions of the files in this directory are copied from the Boost.Beast
2+
examples, and they fall under the Boost Sofware License:
3+
https://www.boost.org/doc/libs/1_82_0/libs/beast/doc/html/beast/examples.html.
4+
5+
This license text is also available from https://www.boost.org/LICENSE_1_0.txt.
6+
7+
-------------------------------------------------------------------------------
8+
9+
Boost Software License - Version 1.0 - August 17th, 2003
10+
11+
Permission is hereby granted, free of charge, to any person or organization
12+
obtaining a copy of the software and accompanying documentation covered by
13+
this license (the "Software") to use, reproduce, display, distribute,
14+
execute, and transmit the Software, and to prepare derivative works of the
15+
Software, and to permit third-parties to whom the Software is furnished to
16+
do so, all subject to the following:
17+
18+
The copyright notices in the Software and this entire statement, including
19+
the above license grant, this restriction and the following disclaimer,
20+
must be included in all copies of the Software, in whole or in part, and
21+
all derivative works of the Software, unless such copies or derivative
22+
works are solely in the form of machine-executable object code generated by
23+
a source language processor.
24+
25+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
26+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
27+
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
28+
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
29+
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
30+
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
31+
DEALINGS IN THE SOFTWARE.

0 commit comments

Comments
 (0)