flexfloat 0.3.0__tar.gz → 0.3.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. {flexfloat-0.3.0 → flexfloat-0.3.1}/.bumpversion.cfg +1 -1
  2. flexfloat-0.3.1/.github/workflows/docs.yml +66 -0
  3. {flexfloat-0.3.0 → flexfloat-0.3.1}/.github/workflows/pr-labeler.yml +1 -1
  4. flexfloat-0.3.1/.github/workflows/release.yml +143 -0
  5. {flexfloat-0.3.0 → flexfloat-0.3.1}/.github/workflows/version-bump.yml +23 -0
  6. {flexfloat-0.3.0 → flexfloat-0.3.1}/MANIFEST.in +8 -0
  7. {flexfloat-0.3.0 → flexfloat-0.3.1}/PKG-INFO +8 -1
  8. flexfloat-0.3.1/docs/Makefile +56 -0
  9. flexfloat-0.3.1/docs/README.md +89 -0
  10. flexfloat-0.3.1/docs/make.bat +78 -0
  11. flexfloat-0.3.1/docs/source/_autosummary/flexfloat.BigIntBitArray.rst +6 -0
  12. flexfloat-0.3.1/docs/source/_autosummary/flexfloat.BitArray.rst +6 -0
  13. flexfloat-0.3.1/docs/source/_autosummary/flexfloat.FlexFloat.rst +6 -0
  14. flexfloat-0.3.1/docs/source/_autosummary/flexfloat.ListBoolBitArray.rst +6 -0
  15. flexfloat-0.3.1/docs/source/_autosummary/flexfloat.ListInt64BitArray.rst +6 -0
  16. flexfloat-0.3.1/docs/source/_autosummary/flexfloat.math.rst +6 -0
  17. flexfloat-0.3.1/docs/source/_static/custom.css +148 -0
  18. flexfloat-0.3.1/docs/source/_templates/autosummary/class.rst +31 -0
  19. flexfloat-0.3.1/docs/source/_templates/layout.html +1 -0
  20. flexfloat-0.3.1/docs/source/api/bitarray.rst +175 -0
  21. flexfloat-0.3.1/docs/source/api/core.rst +131 -0
  22. flexfloat-0.3.1/docs/source/api/math.rst +136 -0
  23. flexfloat-0.3.1/docs/source/api/types.rst +14 -0
  24. flexfloat-0.3.1/docs/source/conf.py +220 -0
  25. flexfloat-0.3.1/docs/source/examples/index.rst +8 -0
  26. flexfloat-0.3.1/docs/source/index.rst +148 -0
  27. flexfloat-0.3.1/docs/source/installation.rst +113 -0
  28. flexfloat-0.3.1/docs/source/quickstart.rst +161 -0
  29. flexfloat-0.3.1/docs/source/user_guide/concepts.rst +221 -0
  30. flexfloat-0.3.1/docs/source/user_guide/index.rst +13 -0
  31. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat/__init__.py +3 -1
  32. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat/core.py +238 -14
  33. flexfloat-0.3.1/flexfloat/math.py +799 -0
  34. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat.egg-info/PKG-INFO +8 -1
  35. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat.egg-info/SOURCES.txt +27 -0
  36. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat.egg-info/requires.txt +8 -0
  37. {flexfloat-0.3.0 → flexfloat-0.3.1}/pyproject.toml +9 -1
  38. flexfloat-0.3.1/tests/test_comparison.py +341 -0
  39. flexfloat-0.3.1/tests/test_math.py +815 -0
  40. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_power.py +13 -12
  41. flexfloat-0.3.0/.github/workflows/release.yml +0 -87
  42. {flexfloat-0.3.0 → flexfloat-0.3.1}/.github/workflows/build-check.yml +0 -0
  43. {flexfloat-0.3.0 → flexfloat-0.3.1}/.github/workflows/manual-release.yml +0 -0
  44. {flexfloat-0.3.0 → flexfloat-0.3.1}/.github/workflows/test.yml +0 -0
  45. {flexfloat-0.3.0 → flexfloat-0.3.1}/.github/workflows/version-check.yml +0 -0
  46. {flexfloat-0.3.0 → flexfloat-0.3.1}/.gitignore +0 -0
  47. {flexfloat-0.3.0 → flexfloat-0.3.1}/LICENSE +0 -0
  48. {flexfloat-0.3.0 → flexfloat-0.3.1}/README.md +0 -0
  49. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat/bitarray/__init__.py +0 -0
  50. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat/bitarray/bitarray.py +0 -0
  51. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat/bitarray/bitarray_bigint.py +0 -0
  52. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat/bitarray/bitarray_bool.py +0 -0
  53. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat/bitarray/bitarray_int64.py +0 -0
  54. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat/bitarray/bitarray_mixins.py +0 -0
  55. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat/py.typed +0 -0
  56. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat/types.py +0 -0
  57. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat.egg-info/dependency_links.txt +0 -0
  58. {flexfloat-0.3.0 → flexfloat-0.3.1}/flexfloat.egg-info/top_level.txt +0 -0
  59. {flexfloat-0.3.0 → flexfloat-0.3.1}/scripts/validate_cicd.py +0 -0
  60. {flexfloat-0.3.0 → flexfloat-0.3.1}/scripts/version_manager.py +0 -0
  61. {flexfloat-0.3.0 → flexfloat-0.3.1}/setup.cfg +0 -0
  62. {flexfloat-0.3.0 → flexfloat-0.3.1}/setup.py +0 -0
  63. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/__init__.py +0 -0
  64. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_addition.py +0 -0
  65. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_bigint_bitarray.py +0 -0
  66. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_bitarray.py +0 -0
  67. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_bitarray_implementations.py +0 -0
  68. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_conversions.py +0 -0
  69. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_division.py +0 -0
  70. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_flexfloat.py +0 -0
  71. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_multiplication.py +0 -0
  72. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_str_representation.py +0 -0
  73. {flexfloat-0.3.0 → flexfloat-0.3.1}/tests/test_subtraction.py +0 -0
@@ -1,5 +1,5 @@
1
1
  [bumpversion]
2
- current_version = 0.3.0
2
+ current_version = 0.3.1
3
3
  commit = False
4
4
  tag = False
5
5
  allow_dirty = True
@@ -0,0 +1,66 @@
1
+ name: Build and Deploy Documentation
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ release:
7
+ types: [published]
8
+ workflow_dispatch: # Allow manual triggering
9
+
10
+ # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
11
+ permissions:
12
+ contents: read
13
+ pages: write
14
+ id-token: write
15
+
16
+ # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
17
+ # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
18
+ concurrency:
19
+ group: "pages"
20
+ cancel-in-progress: false
21
+
22
+ jobs:
23
+ # Build job
24
+ build:
25
+ runs-on: ubuntu-latest
26
+ steps:
27
+ - name: Checkout
28
+ uses: actions/checkout@v4
29
+ with:
30
+ fetch-depth: 0 # Full history needed for versioning
31
+
32
+ - name: Setup Python
33
+ uses: actions/setup-python@v5
34
+ with:
35
+ python-version: "3.11"
36
+
37
+ - name: Install dependencies
38
+ run: |
39
+ python -m pip install --upgrade pip
40
+ pip install -e ".[docs]"
41
+
42
+ - name: Setup Pages
43
+ id: pages
44
+ uses: actions/configure-pages@v4
45
+
46
+ - name: Build documentation
47
+ run: |
48
+ cd docs
49
+ make html
50
+ env:
51
+ # Set environment variable to ensure clean build
52
+ SPHINXBUILD: sphinx-build
53
+
54
+ - name: Upload artifact
55
+ uses: actions/upload-pages-artifact@v3
56
+ with:
57
+ path: ./docs/build/html
58
+
59
+ # Deployment job
60
+ deploy:
61
+ runs-on: ubuntu-latest
62
+ needs: build
63
+ steps:
64
+ - name: Deploy to GitHub Pages
65
+ id: deployment
66
+ uses: actions/deploy-pages@v4
@@ -96,7 +96,7 @@ jobs:
96
96
  **🚀 Release Status**: This PR is labeled with the recommended version bump type. To trigger a release:
97
97
  1. **Add the \`release\` label** to this PR when ready
98
98
  2. The version will be automatically bumped when the \`release\` label is added
99
- 3. When merged, it will create a Git tag, GitHub release, and publish to PyPI
99
+ 3. When merged, it will automatically create a Git tag, GitHub release, and publish to PyPI
100
100
 
101
101
  **To prevent release**: Simply don\'t add the \`release\` label.
102
102
 
@@ -0,0 +1,143 @@
1
+ name: Release
2
+
3
+ on:
4
+ pull_request:
5
+ types: [closed]
6
+
7
+ jobs:
8
+ release:
9
+ # Only run if the PR was merged and had the 'release' label
10
+ if: |
11
+ github.event.pull_request.merged == true &&
12
+ contains(github.event.pull_request.labels.*.name, 'release')
13
+ runs-on: ubuntu-latest
14
+ permissions:
15
+ contents: write
16
+ id-token: write # For trusted publishing to PyPI
17
+
18
+ steps:
19
+ - name: Checkout main branch
20
+ uses: actions/checkout@v4
21
+ with:
22
+ fetch-depth: 0
23
+ token: ${{ secrets.GITHUB_TOKEN }}
24
+ ref: main
25
+
26
+ - name: Set up Python
27
+ uses: actions/setup-python@v5
28
+ with:
29
+ python-version: "3.11"
30
+
31
+ - name: Install dependencies
32
+ run: |
33
+ python -m pip install --upgrade pip
34
+ pip install build twine
35
+
36
+ - name: Configure Git
37
+ run: |
38
+ git config --local user.email "action@github.com"
39
+ git config --local user.name "GitHub Action"
40
+
41
+ - name: Get version from pyproject.toml
42
+ id: get_version
43
+ run: |
44
+ VERSION=$(grep -E '^version = ' pyproject.toml | cut -d'"' -f2)
45
+ echo "version=$VERSION" >> $GITHUB_OUTPUT
46
+ echo "Release version: $VERSION"
47
+
48
+ - name: Run tests
49
+ run: |
50
+ pip install -e ".[dev]"
51
+ pytest tests/
52
+
53
+ - name: Build package
54
+ run: |
55
+ python -m build
56
+
57
+ - name: Create Git tag
58
+ run: |
59
+ git tag -a "v${{ steps.get_version.outputs.version }}" -m "Release v${{ steps.get_version.outputs.version }}"
60
+ git push origin "v${{ steps.get_version.outputs.version }}"
61
+
62
+ - name: Generate release notes
63
+ id: release_notes
64
+ run: |
65
+ # Get the merge commit message
66
+ MERGE_COMMIT_MSG="${{ github.event.pull_request.title }}"
67
+ PR_BODY="${{ github.event.pull_request.body }}"
68
+ PR_NUMBER="${{ github.event.pull_request.number }}"
69
+ PR_AUTHOR="${{ github.event.pull_request.user.login }}"
70
+
71
+ # Determine version bump type from labels
72
+ BUMP_TYPE="patch"
73
+ LABELS="${{ join(github.event.pull_request.labels.*.name, ' ') }}"
74
+ if echo "$LABELS" | grep -q "major"; then
75
+ BUMP_TYPE="major"
76
+ elif echo "$LABELS" | grep -q "minor"; then
77
+ BUMP_TYPE="minor"
78
+ elif echo "$LABELS" | grep -q "patch"; then
79
+ BUMP_TYPE="patch"
80
+ fi
81
+
82
+ # Create release notes
83
+ cat << EOF > release_notes.md
84
+ ## Changes in v${{ steps.get_version.outputs.version }}
85
+
86
+ This release was automatically created from PR #${PR_NUMBER} by @${PR_AUTHOR}.
87
+
88
+ **Version bump type**: ${BUMP_TYPE}
89
+
90
+ ### Pull Request Details
91
+ **${MERGE_COMMIT_MSG}**
92
+
93
+ ${PR_BODY}
94
+
95
+ ### Artifacts
96
+ - **Python Wheel**: \`flexfloat-${{ steps.get_version.outputs.version }}-py3-none-any.whl\`
97
+ - **Source Distribution**: \`flexfloat-${{ steps.get_version.outputs.version }}.tar.gz\`
98
+
99
+ The package has been automatically published to [PyPI](https://pypi.org/project/flexfloat/${{ steps.get_version.outputs.version }}/).
100
+ EOF
101
+
102
+ echo "Release notes generated"
103
+
104
+ - name: Create GitHub Release
105
+ id: create_release
106
+ uses: softprops/action-gh-release@v2
107
+ with:
108
+ tag_name: "v${{ steps.get_version.outputs.version }}"
109
+ name: "Release v${{ steps.get_version.outputs.version }}"
110
+ body_path: release_notes.md
111
+ draft: false
112
+ prerelease: false
113
+ files: |
114
+ ./dist/flexfloat-${{ steps.get_version.outputs.version }}-py3-none-any.whl
115
+ ./dist/flexfloat-${{ steps.get_version.outputs.version }}.tar.gz
116
+
117
+ - name: Publish to PyPI
118
+ uses: pypa/gh-action-pypi-publish@v1.12.4
119
+ with:
120
+ verbose: true
121
+
122
+ - name: Comment on PR
123
+ uses: actions/github-script@v7
124
+ with:
125
+ script: |
126
+ await github.rest.issues.createComment({
127
+ owner: context.repo.owner,
128
+ repo: context.repo.repo,
129
+ issue_number: context.issue.number,
130
+ body: `🚀 **Release Published Successfully!**
131
+
132
+ **Version**: v${{ steps.get_version.outputs.version }}
133
+
134
+ **Release**: [View on GitHub](https://github.com/${context.repo.owner}/${context.repo.repo}/releases/tag/v${{ steps.get_version.outputs.version }})
135
+
136
+ **PyPI**: [View on PyPI](https://pypi.org/project/flexfloat/${{ steps.get_version.outputs.version }}/)
137
+
138
+ The package is now available for installation:
139
+ \`\`\`bash
140
+ pip install flexfloat==${{ steps.get_version.outputs.version }}
141
+ \`\`\`
142
+ `
143
+ });
@@ -67,6 +67,29 @@ jobs:
67
67
  git commit -m "Bump version to ${{ steps.bump_version.outputs.new_version }} [skip ci]"
68
68
  git push origin ${{ github.event.pull_request.head.ref }}
69
69
 
70
+ - name: Comment on PR about release process
71
+ uses: actions/github-script@v7
72
+ with:
73
+ script: |
74
+ await github.rest.issues.createComment({
75
+ owner: context.repo.owner,
76
+ repo: context.repo.repo,
77
+ issue_number: context.issue.number,
78
+ body: `🏷️ **Release Label Added - Version Bump Complete**
79
+
80
+ ✅ **Version bumped to**: v${{ steps.bump_version.outputs.new_version }} (${{ steps.bump_type.outputs.bump_type }} release)
81
+
82
+ 📦 **What happens when this PR is merged:**
83
+ 1. A Git tag \`v${{ steps.bump_version.outputs.new_version }}\` will be created
84
+ 2. A GitHub release will be published
85
+ 3. The package will be automatically published to PyPI
86
+ 4. Release notes will be generated from this PR's title and description
87
+
88
+ 🚀 **Ready for release!** This PR is now configured for automatic release when merged to main.
89
+
90
+ To cancel the release, simply remove the \`release\` label.`
91
+ });
92
+
70
93
  revert-version-bump:
71
94
  if: |
72
95
  github.event.action == 'unlabeled' &&
@@ -10,6 +10,14 @@ recursive-include flexfloat *.typed
10
10
  recursive-include tests *.py
11
11
  recursive-include scripts *.py
12
12
 
13
+ recursive-include docs *.bat
14
+ recursive-include docs *.css
15
+ recursive-include docs *.html
16
+ recursive-include docs *.md
17
+ recursive-include docs *.py
18
+ recursive-include docs *.rst
19
+ recursive-include docs Makefile
20
+
13
21
  global-exclude *.pyc
14
22
  global-exclude __pycache__
15
23
  global-exclude .pytest_cache
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: flexfloat
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: A library for arbitrary precision floating point arithmetic
5
5
  Author: Ferran Sanchez Llado
6
6
  License: MIT
@@ -30,6 +30,13 @@ Requires-Dist: build>=0.10; extra == "dev"
30
30
  Requires-Dist: twine>=4.0; extra == "dev"
31
31
  Requires-Dist: check-manifest>=0.49; extra == "dev"
32
32
  Requires-Dist: PyYAML>=6.0; extra == "dev"
33
+ Provides-Extra: docs
34
+ Requires-Dist: sphinx>=7.0; extra == "docs"
35
+ Requires-Dist: sphinx-rtd-theme>=2.0; extra == "docs"
36
+ Requires-Dist: sphinx-copybutton>=0.5; extra == "docs"
37
+ Requires-Dist: myst-parser>=2.0; extra == "docs"
38
+ Requires-Dist: sphinx-autobuild>=2021.3.14; extra == "docs"
39
+ Requires-Dist: requests>=2.25.0; extra == "docs"
33
40
  Dynamic: license-file
34
41
 
35
42
  # FlexFloat
@@ -0,0 +1,56 @@
1
+ # Minimal makefile for Sphinx documentation
2
+ #
3
+
4
+ # You can set these variables from the command line, and also
5
+ # from the environment for the first two.
6
+ SPHINXOPTS ?=
7
+ SPHINXBUILD ?= sphinx-build
8
+ SOURCEDIR = source
9
+ BUILDDIR = build
10
+
11
+ # Put it first so that "make" without argument is like "make help".
12
+ help:
13
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14
+
15
+ .PHONY: help Makefile
16
+
17
+ # Clean build directory
18
+ clean:
19
+ rm -rf $(BUILDDIR)/*
20
+
21
+ # Build HTML documentation
22
+ html:
23
+ @$(SPHINXBUILD) -b html "$(SOURCEDIR)" "$(BUILDDIR)/html" $(SPHINXOPTS) $(O)
24
+
25
+ # Build HTML documentation with live reload (requires sphinx-autobuild)
26
+ livehtml:
27
+ sphinx-autobuild "$(SOURCEDIR)" "$(BUILDDIR)/html" $(SPHINXOPTS) $(O)
28
+
29
+ # Build PDF documentation (requires LaTeX)
30
+ pdf:
31
+ @$(SPHINXBUILD) -b latex "$(SOURCEDIR)" "$(BUILDDIR)/latex" $(SPHINXOPTS) $(O)
32
+ @make -C $(BUILDDIR)/latex all-pdf
33
+
34
+ # Build EPUB documentation
35
+ epub:
36
+ @$(SPHINXBUILD) -b epub "$(SOURCEDIR)" "$(BUILDDIR)/epub" $(SPHINXOPTS) $(O)
37
+
38
+ # Check links in documentation
39
+ linkcheck:
40
+ @$(SPHINXBUILD) -b linkcheck "$(SOURCEDIR)" "$(BUILDDIR)/linkcheck" $(SPHINXOPTS) $(O)
41
+
42
+ # Build documentation for all supported formats
43
+ all: html epub
44
+
45
+ # Check documentation for issues
46
+ check:
47
+ @$(SPHINXBUILD) -b dummy "$(SOURCEDIR)" "$(BUILDDIR)/dummy" -W $(SPHINXOPTS) $(O)
48
+
49
+ # Build documentation treating warnings as errors
50
+ strict:
51
+ @$(SPHINXBUILD) -b html "$(SOURCEDIR)" "$(BUILDDIR)/html" -W $(SPHINXOPTS) $(O)
52
+
53
+ # Catch-all target: route all unknown targets to Sphinx using the new
54
+ # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
55
+ %: Makefile
56
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
@@ -0,0 +1,89 @@
1
+ # FlexFloat Documentation
2
+
3
+ This directory contains the Sphinx documentation for FlexFloat.
4
+
5
+ ## Quick Start
6
+
7
+ ### Prerequisites
8
+
9
+ - Python 3.11 or higher
10
+ - FlexFloat package installed
11
+
12
+ ### Setup
13
+
14
+ 1. Install documentation dependencies:
15
+ ```bash
16
+ pip install -e ".[docs]"
17
+ ```
18
+
19
+ 2. Build the documentation:
20
+ ```bash
21
+ cd docs
22
+ make html
23
+ ```
24
+
25
+ 3. View the documentation:
26
+ ```bash
27
+ # Open docs/build/html/index.html in your browser
28
+ ```
29
+
30
+ ## Building Documentation
31
+
32
+ ### Basic Build
33
+ ```bash
34
+ cd docs
35
+ make html # Build HTML documentation
36
+ make clean # Clean build directory
37
+ make linkcheck # Check for broken links
38
+ ```
39
+
40
+ ### Advanced Options
41
+ ```bash
42
+ make strict # Build with warnings as errors
43
+ make livehtml # Build with live reload (requires sphinx-autobuild)
44
+ ```
45
+
46
+ ## Customization
47
+
48
+ ### Theme and Styling
49
+ - Theme: Sphinx RTD Theme
50
+ - Custom CSS: `source/_static/custom.css`
51
+
52
+ ### Configuration
53
+ Main configuration is in `source/conf.py`:
54
+ - Project metadata
55
+ - Extensions
56
+ - Theme options
57
+ - Version information
58
+
59
+ ### Adding Content
60
+
61
+ #### New Pages
62
+ 1. Create `.rst` files in appropriate directories
63
+ 2. Add to relevant `toctree` directives
64
+ 3. Follow existing structure and style
65
+
66
+ #### API Documentation
67
+ API docs are automatically generated from docstrings using:
68
+ - `sphinx.ext.autodoc`
69
+ - `sphinx.ext.autosummary`
70
+ - `sphinx.ext.napoleon` (for Google/NumPy style docstrings)
71
+
72
+ #### Examples
73
+ Add examples in `source/examples/` directory with practical use cases.
74
+
75
+ ### Manual Deployment
76
+ ```bash
77
+ # Build documentation
78
+ make html
79
+
80
+ # Deploy to GitHub Pages (manual)
81
+ # Copy docs/build/html/* to gh-pages branch
82
+ ```
83
+
84
+ ## Resources
85
+
86
+ - [Sphinx Documentation](https://www.sphinx-doc.org/)
87
+ - [reStructuredText Primer](https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html)
88
+ - [Sphinx RTD Theme](https://sphinx-rtd-theme.readthedocs.io/)
89
+ - [Read the Docs](https://docs.readthedocs.io/)
@@ -0,0 +1,78 @@
1
+ @ECHO OFF
2
+
3
+ pushd %~dp0
4
+
5
+ REM Command file for Sphinx documentation
6
+
7
+ if "%SPHINXBUILD%" == "" (
8
+ set SPHINXBUILD=sphinx-build
9
+ )
10
+ set SOURCEDIR=source
11
+ set BUILDDIR=build
12
+
13
+ %SPHINXBUILD% >NUL 2>NUL
14
+ if errorlevel 9009 (
15
+ echo.
16
+ echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
17
+ echo.installed, then set the SPHINXBUILD environment variable to point
18
+ echo.to the full path of the 'sphinx-build' executable. Alternatively you
19
+ echo.may add the Sphinx directory to PATH.
20
+ echo.
21
+ echo.If you don't have Sphinx installed, grab it from
22
+ echo.https://www.sphinx-doc.org/
23
+ exit /b 1
24
+ )
25
+
26
+ if "%1" == "" goto help
27
+
28
+ if "%1" == "help" (
29
+ :help
30
+ %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
31
+ goto end
32
+ )
33
+
34
+ if "%1" == "clean" (
35
+ echo.Cleaning build directory...
36
+ rmdir /s /q %BUILDDIR% >nul 2>&1
37
+ echo.Build directory cleaned.
38
+ goto end
39
+ )
40
+
41
+ if "%1" == "html" (
42
+ echo.Building HTML documentation...
43
+ %SPHINXBUILD% -b html %SOURCEDIR% %BUILDDIR%\html %SPHINXOPTS% %O%
44
+ if errorlevel 1 exit /b 1
45
+ echo.
46
+ echo.Build finished. The HTML pages are in %BUILDDIR%\html.
47
+ goto end
48
+ )
49
+
50
+ if "%1" == "livehtml" (
51
+ echo.Starting live HTML build server...
52
+ sphinx-autobuild %SOURCEDIR% %BUILDDIR%\html %SPHINXOPTS% %O%
53
+ goto end
54
+ )
55
+
56
+ if "%1" == "linkcheck" (
57
+ echo.Checking external links...
58
+ %SPHINXBUILD% -b linkcheck %SOURCEDIR% %BUILDDIR%\linkcheck %SPHINXOPTS% %O%
59
+ if errorlevel 1 exit /b 1
60
+ echo.
61
+ echo.Link check complete; look for any errors in the above output or in %BUILDDIR%\linkcheck\output.txt.
62
+ goto end
63
+ )
64
+
65
+ if "%1" == "strict" (
66
+ echo.Building HTML documentation with warnings as errors...
67
+ %SPHINXBUILD% -b html %SOURCEDIR% %BUILDDIR%\html -W %SPHINXOPTS% %O%
68
+ if errorlevel 1 exit /b 1
69
+ echo.
70
+ echo.Build finished successfully with no warnings.
71
+ goto end
72
+ )
73
+
74
+ %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
75
+ goto end
76
+
77
+ :end
78
+ popd
@@ -0,0 +1,6 @@
1
+ flexfloat.BigIntBitArray
2
+ ========================
3
+
4
+ .. currentmodule:: flexfloat
5
+
6
+ .. autoclass:: BigIntBitArray
@@ -0,0 +1,6 @@
1
+ flexfloat.BitArray
2
+ ==================
3
+
4
+ .. currentmodule:: flexfloat
5
+
6
+ .. autoclass:: BitArray
@@ -0,0 +1,6 @@
1
+ flexfloat.FlexFloat
2
+ ===================
3
+
4
+ .. currentmodule:: flexfloat
5
+
6
+ .. autoclass:: FlexFloat
@@ -0,0 +1,6 @@
1
+ flexfloat.ListBoolBitArray
2
+ ==========================
3
+
4
+ .. currentmodule:: flexfloat
5
+
6
+ .. autoclass:: ListBoolBitArray
@@ -0,0 +1,6 @@
1
+ flexfloat.ListInt64BitArray
2
+ ===========================
3
+
4
+ .. currentmodule:: flexfloat
5
+
6
+ .. autoclass:: ListInt64BitArray
@@ -0,0 +1,6 @@
1
+ flexfloat.math
2
+ ==============
3
+
4
+ .. currentmodule:: flexfloat
5
+
6
+ .. automodule:: math