Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions doc/.gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/pdf/
/html/
*.DS_Store
*.html
/build/
/node_modules/
25 changes: 0 additions & 25 deletions doc/Jamfile

This file was deleted.

57 changes: 57 additions & 0 deletions doc/Jamfile.v2
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
import generate ;
import path ;
import property-set ;
import virtual-target ;

path-constant HERE : . ;

make html/index.html : build_antora.sh : @run-script ;
generate files-to-install : html/index.html : <generating-rule>@delayed-glob ;
install install
: files-to-install
: <location>html
<install-source-root>html/int128
;
explicit html/index.html files-to-install ;

# this runs the antora script
actions run-script
{
bash $(>)
}

# this globs after its sources are created
rule delayed-glob ( project name : property-set : sources * )
{
for local src in $(sources)
{
# the next line causes the source to be generated immediately
# and not later (which it normally would)
UPDATE_NOW [ $(src).actualize ] ;
}

# we need to construct the path to the globbed directory;
# this path would be <current-project>/antora
local root = [ path.root html [ $(project).location ] ] ;
local files ;

# actual globbing happens here
for local file in [ path.glob-tree $(root) : * ]
{
# we have to skip directories, because our match expression accepts anything
if [ CHECK_IF_FILE $(file) ]
{
# we construct a list of targets to copy
files += [ virtual-target.from-file $(file:D=) : $(file:D) : $(project) ] ;
}
}

# we prepend empty usage requirements to the result
return [ property-set.empty ] $(files) ;
}

###############################################################################
alias boostdoc ;
explicit boostdoc ;
alias boostrelease : install ;
explicit boostrelease ;
6 changes: 6 additions & 0 deletions doc/antora.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
name: int128
version: ~
title: Boost.int128
nav:
- modules/ROOT/nav.adoc
start_page: overview.adoc
9 changes: 9 additions & 0 deletions doc/antora_docs.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash

set -ex

SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
cd "$SCRIPT_DIR"

npm ci
npx antora int128-playbook.yml
9 changes: 9 additions & 0 deletions doc/build_antora.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash

set -ex

SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
cd "$SCRIPT_DIR"

npm ci
npx antora int128-playbook.yml
14 changes: 14 additions & 0 deletions doc/int128-playbook.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
site:
title: Boost.int128
start_page: int128::overview.adoc
content:
sources:
- url: ..
start_path: doc
branches: HEAD
output:
dir: html
ui:
bundle:
url: https://github.com/boostorg/website-v2-docs/releases/download/ui-master/ui-bundle.zip
output_dir: int128/_
61 changes: 0 additions & 61 deletions doc/int128.adoc

This file was deleted.

45 changes: 45 additions & 0 deletions doc/modules/ROOT/nav.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
* xref:overview.adoc[]
* xref:examples.adoc[]
** xref:examples.adoc#examples_construction[Basic Construction]
** xref:examples.adoc#examples_arithmetic[Basic Arithmetic]
** xref:examples.adoc#examples_io[IO Streaming]
** xref:examples.adoc#examples_bit[`<bit>` support]
** xref:examples.adoc#examples_numeric[`<numeric>` support]
** xref:examples.adoc#examples_mixed_sign[Mixed Signedness Arithmetic]
** xref:examples.adoc#examples_boost_math_random[Boost Math and Random Integration]
** xref:examples.adoc#examples_boost_charconv[Boost.Charconv Integration]
* xref:api_reference.adoc[]
** xref:api_reference.adoc#api_namespaces[Namespaces]
** xref:api_reference.adoc#api_types[Types]
** xref:api_reference.adoc#api_literals[Literals]
** xref:api_reference.adoc#api_structs[Structs]
** xref:api_reference.adoc#api_functions[Functions]
*** xref:api_reference.adoc#api_bit[`<bit>`]
*** xref:api_reference.adoc#api_cstdlib[`<cstdlib>`]
*** xref:api_reference.adoc#api_charconv[`<charconv>`]
*** xref:api_reference.adoc#api_cmath[`<cmath>`]
*** xref:api_reference.adoc#api_iostream[`<iostream>`]
*** xref:api_reference.adoc#api_ios[`<ios>`]
*** xref:api_reference.adoc#api_numeric[`<numeric>`]
** xref:api_reference.adoc#api_concepts[Concepts]
** xref:api_reference.adoc#api_macros[Macros]
*** xref:api_reference.adoc#api_macro_literals[Literals]
*** xref:api_reference.adoc#api_macro_configuration[Configuration]
* xref:concepts.adoc[]
** xref:concepts.adoc#signed_integer[Signed Integer]
** xref:concepts.adoc#unsigned_integer[Unsigned Integer]
** xref:concepts.adoc#integer[Integer]
* xref:uint128_t.adoc[]
* xref:int128_t.adoc[]
* xref:mixed_type_ops.adoc[]
* xref:literals.adoc[]
* xref:bit.adoc[]
* xref:cstdlib.adoc[]
* xref:charconv.adoc[]
* xref:stream.adoc[]
* xref:numeric.adoc[]
* Benchmarks
** xref:u128_benchmarks.adoc[]
** xref:i128_benchmarks.adoc[]
* xref:reference.adoc[]
* xref:copyright.adoc[]
Original file line number Diff line number Diff line change
Expand Up @@ -8,34 +8,40 @@ https://www.boost.org/LICENSE_1_0.txt
= API Reference
:idprefix: api_ref_

[#api_namespaces]
== Namespaces

- `boost::int128` contains all components of the library except `<charconv>` functionality
- <<literals, `boost::int128::literals`>>

[#api_types]
== Types

- <<uint128_t, `uint128_t`>>
- <<int128_t, `int128_t`>>

[#api_literals]
== Literals

- <<literals, `_u128`>>
- <<literals, `_U128`>>
- <<literals, `_i128`>>
- <<literals, `_I128`>>

[#api_structs]
== Structures

- https://en.cppreference.com/w/cpp/types/numeric_limits[`std::numeric_limits<uint128_t>`]
- https://en.cppreference.com/w/cpp/types/numeric_limits[`std::numeric_limits<int128_t>`]
- <<div_structs, `u128div_t`>>
- <<div_structs, `i128div_t`>>

[#api_functions]
== Functions

Listed by analogous STL header.

[#api_bit]
=== `<bit>`
- <<has_single_bit, `has_single_bit`>>
- <<countl_zero, `countl_zero`>>
Expand All @@ -50,31 +56,38 @@ Listed by analogous STL header.
- <<popcount, `popcount`>>
- <<byteswap, `byteswap`>>

[#api_charconv]
=== `<charconv>`
- <<to_chars, `to_chars`>>
- <<from_chars, `from_chars`>>

[#api_cmath]
=== `<cmath>`
- `abs` - Absolute Value

[#api_cstdlib]
=== `<cstdlib>`
- <<cstdlib, `div`>>

=== <<std_format, `<format>`>>

=== <<fmt_format, `pass:[{fmt}]`>>
[#api_formatting]
=== Formatting
- <<std_format, `<format>`>>
- <<fmt_format, `pass:[{fmt}]`>>

[#api_iostream]
=== `<iostream>`
- <<stream, `operator<<`>>
- <<stream, `operator>>`>>

[#api_ios]
=== `<ios>`
- <<ios, `std::oct`>>
- <<ios, `std::dec`>>
- <<ios, `std::hex`>>
- <<ios, `std::uppercase`>>
- <<ios, `std::nouppercase`>>

[#api_numeric]
=== `<numeric>`
- <<sat_arith, `add_sat`>>
- <<sat_arith, `sub_sat`>>
Expand All @@ -85,14 +98,17 @@ Listed by analogous STL header.
- <<lcm, `lcm`>>
- <<midpoint, `midpoint`>>

[#api_concepts]
== Concepts

- <<unsigned_integer, `unsigned_integer`>>
- <<signed_integer, `signed_integer`>>
- <<integer, `integer`>>

[#api_macros]
== Macros

[#api_macro_literals]
=== Constants (`<boost/int128/climits.hpp>`)

- `BOOST_INT128_UINT128_MAX`
Expand All @@ -104,6 +120,7 @@ Listed by analogous STL header.
- <<literals, `BOOST_INT128_UINT128_C`>>
- <<literals, `BOOST_INT128_INT128_C`>>

[#api_macro_configuration]
=== Configuration

==== User Configuration
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading
Loading