Convert repository from monorepo to single yoga-om package
.github/workflows/ci.yml+2−14
@@ -1,21 +1,9 @@
6− pull_request:
2+on: [push, pull_request]
11 runs-on: ubuntu-latest
5 runs-on: ubuntu-latest
14 - uses: actions/checkout@v4
7 - uses: actions/checkout@v4
15 - uses: rowtype-yoga/purescript-yoga-actions/.github/actions/setup@main
8 - uses: rowtype-yoga/purescript-yoga-actions/.github/actions/setup@main
17− - name: Build all packages
18− run: spago build
9+ - run: spago build
20− - name: Test all packages
BENCHMARKING.mddeleted−56
@@ -1,56 +0,0 @@
1−# Benchmarking Strom Performance
3−This workspace includes a comprehensive benchmark suite for comparing Strom streaming library performance across different JavaScript runtimes (Node.js, Bun, and Deno).
7−All benchmark files are in:
9−packages/yoga-om-strom/
15−cd packages/yoga-om-strom
16−./run-minibench-all.sh
22−See [`packages/yoga-om-strom/BENCHMARK.md`](packages/yoga-om-strom/BENCHMARK.md) for:
23−- Complete benchmark list
24−- Running instructions
25−- Result interpretation
29−See [`packages/yoga-om-strom/MINIBENCH_SETUP.md`](packages/yoga-om-strom/MINIBENCH_SETUP.md) for:
30−- Implementation details
34−## What Gets Benchmarked
36−- **Basic operations**: map, filter, scan, fold
37−- **Pipelines**: chained transformations
38−- **Concurrency**: parallel operations, merges
39−- **Early termination**: take operations
40−- **Stack safety**: infinite streams
41−- **Memory allocation**: collect operations
45−- 🟢 **Node.js** - Traditional JavaScript runtime
46−- 🟠 **Bun** - Modern, fast JavaScript runtime
47−- 🔵 **Deno** - Secure JavaScript/TypeScript runtime
51−Results are saved with timestamps in:
53−packages/yoga-om-strom/benchmark-results/
56−Use the comparison script to see which runtime is fastest for each operation.
@@ -1,269 +0,0 @@
1−# ✅ Bun-Only Setup Complete!
3−This project uses **Bun exclusively** for JavaScript runtime and package management. No nvm, npm, or Node.js required!
9−- **Fast** - 3x faster than npm
10−- **All-in-one** - Runtime, bundler, package manager
11−- **Simple** - One tool instead of nvm + npm + Node.js
12−- **Modern** - Native TypeScript, faster installs
13−- **Drop-in** - Compatible with Node.js and npm packages
17−- ~~nvm~~ - No Node version manager needed
18−- ~~npm~~ - Bun replaces npm
19−- ~~yarn/pnpm~~ - Don't need them
20−- ~~.nvmrc~~ - Removed (use `.bunversion`)
27−curl -fsSL https://bun.sh/install | bash
30−This installs Bun globally. No other runtime needed!
32−### 2. Install Dependencies
35−# JavaScript/TypeScript dependencies
38−# PureScript dependencies
39−bun install -g spago@next
46−bun test # Run all tests
47−bun build # Build all packages
48−bun test:core # Test one package
56−curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
62−# Install npm packages
66−npm install -g spago@next
69−**Multiple tools, slower installs.** 😓
74−curl -fsSL https://bun.sh/install | bash
78−bun install -g spago@next
81−**One tool, 3x faster!** ⚡
88−.bunversion # Bun version lock (1.x)
89−bun.lock # Bun lockfile (fast!)
90−package.json # Package manifest
96−.nvmrc # ✅ Deleted - Not needed with Bun
97−package-lock.json # Legacy npm lockfile (slower)
102−All commands use Bun:
106−bun install # Install dependencies
107−bun add lodash # Add dependency
108−bun remove lodash # Remove dependency
111−bun test # Run test script
112−bun build # Run build script
113−bun run dev # Run dev script
116−bun install -g pkg # Install globally
117−bun pm ls -g # List global packages
120−bun run script.ts # Run TypeScript
121−bun run index.js # Run JavaScript
126−Uses Bun as package manager:
130− "packageManager": "bun@1.x",
132− "build": "spago build",
133− "test": "./test-all.sh",
134− "test:core": "cd packages/yoga-om-core && spago test"
141−GitHub Actions uses Bun:
144−- uses: oven-sh/setup-bun@v2
148−- run: bun install --frozen-lockfile
152−See [`.github/workflows/ci.yml`](./.github/workflows/ci.yml)
156−| Command | npm | Bun | Speedup |
157−|---------|-----|-----|---------|
158−| Install | 15s | 5s | **3x faster** |
159−| Run script | 800ms | 100ms | **8x faster** |
160−| Run file | 500ms | 50ms | **10x faster** |
164−`.bunversion` file ensures consistent Bun version:
170−This locks to Bun 1.x (e.g., 1.1.38).
178−✅ package.json format
180−✅ TypeScript (native)
182−## Development Workflow
185−# 1. Install Bun (once)
186−curl -fsSL https://bun.sh/install | bash
189−git clone https://github.com/rowtype-yoga/purescript-yoga-om
190−cd purescript-yoga-om
192−# 3. Install dependencies
194−bun install -g spago@next
198−cd packages/yoga-om-core
201−# 5. Test before commit
207−Install PureScript tools with Bun:
211−bun install -g spago@next
213−# PureScript compiler
214−bun install -g purescript
217−bun install -g purescript-language-server
219−# All installed with Bun!
228−curl -fsSL https://bun.sh/install | bash
236−### Permission denied
238−Bun installs to `~/.bun/bin`. Make sure it's in PATH:
241−export BUN_INSTALL="$HOME/.bun"
242−export PATH="$BUN_INSTALL/bin:$PATH"
247−Bun is required for optimal performance. npm will be slower.
251−- [BUN_SETUP.md](./BUN_SETUP.md) - Detailed Bun guide
252−- [Bun Documentation](https://bun.sh/docs)
253−- [Bun GitHub](https://github.com/oven-sh/bun)
257−**This project is Bun-only:**
264−**One tool to rule them all.** ⚡
267−# The only runtime you need
268−curl -fsSL https://bun.sh/install | bash
@@ -1,267 +0,0 @@
1−# Bun Setup for yoga-om
3−This project uses **Bun** as the JavaScript runtime and package manager.
7−✅ **Fast** - 3x faster than npm
8−✅ **All-in-one** - Runtime, bundler, test runner, package manager
9−✅ **Drop-in replacement** - Compatible with Node.js and npm
10−✅ **Better DX** - Faster installs, better performance
11−✅ **Native TypeScript** - No transpilation needed
19−curl -fsSL https://bun.sh/install | bash
23−# Should show: 1.0+ (e.g., 1.1.38)
26−### Install Project Dependencies
29−# Install JavaScript/TypeScript dependencies
32−# This reads package.json and installs:
33−# - spago@0.93.45 (PureScript build tool)
34−# - purescript@0.15.15 (PureScript compiler)
37−### Install PureScript Dependencies
40−# Install PureScript dependencies
48−| Command | npm | Bun |
49−|---------|-----|-----|
50−| Install | `npm install` | `bun install` |
51−| Add package | `npm install pkg` | `bun add pkg` |
52−| Global install | `npm install -g pkg` | `bun install -g pkg` |
53−| Run script | `npm run script` | `bun run script` |
54−| Remove | `npm uninstall pkg` | `bun remove pkg` |
59−# Install dependencies
71−# Run a script from package.json
94−bun test:core # Test yoga-om-core
95−bun test:node # Test yoga-om-node
96−bun test:streams # Test yoga-om-streams
98−# Build individual packages
106−Bun uses `bun.lock` (binary format) instead of `package-lock.json`.
109−# This file is maintained by bun:
110−bun.lock # ✅ Binary lockfile (fast!)
112−# These are legacy (not used):
113−package-lock.json # ❌ npm lockfile (slower)
114−yarn.lock # ❌ Yarn lockfile
115−pnpm-lock.yaml # ❌ pnpm lockfile
118−> **Note:** `package-lock.json` may exist for compatibility but `bun.lock` is the source of truth.
120−## Installation Speed
122−Comparison on this project:
124−| Package Manager | Time |
125−|----------------|------|
126−| npm install | ~15 seconds |
127−| yarn install | ~12 seconds |
128−| bun install | **~5 seconds** ⚡ |
130−**Bun is 3x faster!**
132−## Package Manager Field
134−`package.json` specifies Bun as the preferred package manager:
138− "packageManager": "bun@1.x"
142−This tells tools like Corepack to use Bun.
146−Install global packages with Bun:
149−# Install Spago globally
150−bun install -g spago@next
152−# Install PureScript compiler globally
153−bun install -g purescript
155−# View global packages
161−Bun is a drop-in replacement for Node.js:
164−# These work the same:
165−node script.js # Node.js
166−bun script.js # Bun (faster!)
168−# Bun can run npm scripts
169−bun run test # Runs scripts from package.json
174−GitHub Actions uses Bun:
177−- uses: oven-sh/setup-bun@v2
181−- run: bun install --frozen-lockfile
185−See [`.github/workflows/ci.yml`](./.github/workflows/ci.yml) for full config.
189−Bun is compatible with:
191−✅ **npm packages** - All npm packages work
192−✅ **Node.js APIs** - Most Node.js APIs supported
193−✅ **package.json** - Uses same format
194−✅ **npm scripts** - Runs all npm scripts
198−`.bunversion` file locks Bun to major version:
204−This ensures consistent versions across team.
212−curl -fsSL https://bun.sh/install | bash
215−Then restart your shell.
217−### Package not found
219−Install dependencies:
224−### Global package not found
228−bun install -g package-name
231−### Want to use npm instead?
233−Bun is recommended, but npm works:
243−- [Bun Official Docs](https://bun.sh/docs)
244−- [Bun GitHub](https://github.com/oven-sh/bun)
245−- [Bun Discord](https://bun.sh/discord)
249−**Use Bun for this project:**
253−curl -fsSL https://bun.sh/install | bash
256−bun install -g spago@next
258−# 3. Install dependencies
267−**Fast, simple, modern!** ⚡
COLOCATION_SUMMARY.mddeleted−260
@@ -1,260 +0,0 @@
1−# True Test Colocation Complete! ✅
5−Tests have been **colocated at the file level** with their implementations. Test files now live directly next to the implementation files they test, using the `.test.purs` suffix.
7−### Before (Package-level Colocation)
11−│ └── Yoga/Om.purs # Implementation
12−└── test/ # Separate directory
13− └── Test/Om/Core.purs # Tests
16−### After (File-level Colocation)
18−packages/yoga-om-core/
21− │ ├── Om.purs # Implementation
22− │ └── Om.test.purs # Tests ⭐ Right next to it!
24− └── Main.purs # Test runner
31−packages/yoga-om-core/
34− │ ├── Om.purs # Core Om implementation
35− │ ├── Om.test.purs # ⭐ Colocated tests (20 tests)
37− │ ├── Error.purs # Error utilities
40− └── Main.purs # Test runner entry point
44−- Basics (runs safely, launches safely)
46−- Context (Reader) composition
47−- Error helpers and composition
48−- Helper functions (Maybe, Either lifting)
49−- Parallel computations (race, inParallel)
53−packages/yoga-om-node/
57− │ ├── Node.purs # Node-specific Om utilities
58− │ └── Node.test.purs # ⭐ Colocated tests
60− └── Main.purs # Test runner entry point
64−- Environment variable operations
66−- Current working directory
74− │ ├── Rom.purs # Event/Bolson integration
75− │ └── Rom.test.purs # ⭐ Colocated tests
77− └── Main.purs # Test runner entry point
81−- Om to Event conversion
82−- Event to Om conversion
88−packages/yoga-om-strom/
92− │ ├── Strom.purs # Stream implementation
93− │ ├── Strom.test.purs # ⭐ Colocated tests (60+ tests)
95− │ ├── Do.purs # Do-notation support
96− │ ├── Do.test.purs # ⭐ Colocated tests (15+ tests)
97− │ └── Examples.purs # Examples
99− └── Main.purs # Test runner entry point
103−- Construction, Running/Consuming
104−- Transformations, Selection, Combining, Grouping
105−- Do-notation, Guards, Cartesian products
106−- Monadic laws, Real-world patterns
108−## Configuration Updates
110−Each package's `spago.yaml` now includes `exclude` patterns to prevent test files from being published:
119− - "src/**/*.test.purs" # ⭐ Exclude test files
120− - "src/Test/**" # ⭐ Exclude test runner
122− githubOwner: rowtype-yoga
123− githubRepo: purescript-yoga-om
124− subdir: packages/yoga-om-core
126− - prelude: ">=6.0.0 <7.0.0"
127− # ... more dependencies
131− - spec: ">=7.0.0 <8.0.0"
137−Runs all package tests in sequence:
140−echo "🧪 Testing yoga-om workspace packages..."
142−echo "📦 Testing yoga-om-core..."
143−cd packages/yoga-om-core && spago test
146−echo "📦 Testing yoga-om-node..."
147−cd packages/yoga-om-node && spago test
150−echo "📦 Testing yoga-om-rom..."
151−cd packages/yoga-om-rom && spago test
154−echo "📦 Testing yoga-om-strom..."
155−cd packages/yoga-om-strom && spago test
158−echo "🎉 All tests passed!"
161−### `package.json` Scripts
165− "test": "./test-all.sh",
166− "test:core": "cd packages/yoga-om-core && spago test",
167− "test:node": "cd packages/yoga-om-node && spago test",
168− "test:rom": "cd packages/yoga-om-rom && spago test",
169− "test:strom": "cd packages/yoga-om-strom && spago test"
178−bun test # Run all package tests
182−### Individual Package
184−bun test:core # Test yoga-om-core only
185−bun test:node # Test yoga-om-node only
186−bun test:rom # Test yoga-om-rom only
187−bun test:strom # Test yoga-om-strom only
190−cd packages/yoga-om-core && spago test
195−cd packages/yoga-om-core && spago test --watch
198−## Benefits of True File-Level Colocation
200−### ✅ Immediate Context
201−Tests are **right there** next to the code they test. No searching across directories or guessing which test file tests which module.
204−Yoga/Om/Node.purs ← Implementation
205−Yoga/Om/Node.test.purs ← Tests (right here!)
208−### ✅ Easier Refactoring
209−When renaming or moving a module, the test moves with it. No broken imports, no orphaned tests.
211−### ✅ Clear Ownership
212−It's immediately obvious which tests belong to which module. No ambiguity.
214−### ✅ Better Navigation
215−Jump between implementation and test with a single keystroke in your editor.
217−### ✅ Publishing Safety
218−The `exclude` configuration ensures test files never get published to the Registry, keeping packages clean.
220−### ✅ Modern Best Practice
221−This pattern is standard in Rust, Go, and increasingly in TypeScript/JavaScript. PureScript now supports it too!
223−## Spago Next Support
225−This colocation pattern is enabled by **Spago Next (0.93.45)** features:
227−1. **Flexible source structure**: No longer requires separate `src/` and `test/` directories
228−2. **Exclude patterns**: `publish.exclude` field to filter files from published packages
229−3. **Test runner flexibility**: Test runner (`Test.Main`) can live anywhere in `src/`
233−When you run `spago publish`, the following files are **excluded** from the package:
235−- `src/**/*.test.purs` - All test files
236−- `src/Test/**` - Test runner and utilities
238−This ensures your published packages only contain the implementation code.
242−✅ **Tests colocated** - All test files moved next to implementations with `.test.purs` suffix
243−✅ **Exclude patterns added** - spago.yaml files configured to exclude tests from publishing
244−✅ **Test runners created** - Each package has `src/Test/Main.purs` entry point
245−✅ **Old test/ removed** - Cleaned up old package-level test directories
246−✅ **Documentation updated** - This file and TESTING.md reflect new structure
250−🎉 **True file-level test colocation is complete!**
252−Your tests now live exactly where they should be: right next to the code they test. This makes the codebase more maintainable, easier to navigate, and follows modern best practices.
255−- ✅ Tests use `.test.purs` suffix
256−- ✅ Tests are colocated with implementations
257−- ✅ Test runners in `src/Test/Main.purs`
258−- ✅ Excluded from publishing via `exclude` patterns
COMPLETE_SETUP.mddeleted−411
@@ -1,411 +0,0 @@
1−# ✅ Complete Setup Summary
3−This project is now fully configured with:
4−- ✅ **Bun-only** (no nvm/npm)
5−- ✅ **YAML-only** (no Dhall)
6−- ✅ **Colocated tests**
7−- ✅ **Spago Next (v0.93.45+)**
13−curl -fsSL https://bun.sh/install | bash
15−# 2. Install Spago Next
16−bun install -g spago@next
19−git clone https://github.com/rowtype-yoga/purescript-yoga-om
29−## What Was Configured
34−- ❌ `.nvmrc` - No Node version manager
35−- ❌ npm references - Use Bun
38−- ✅ `.bunversion` - Bun version lock (1.x)
39−- ✅ `BUN_SETUP.md` - Bun usage guide
40−- ✅ `BUN_ONLY.md` - Why Bun-only
43−- ✅ All docs mention Bun first
44−- ✅ `test-all.sh` checks for Bun
45−- ✅ Installation instructions use Bun
47−### 📝 YAML-Only Configuration
50−- ❌ `test.dhall` - Deleted
51−- ❌ `spago.dhall` - Moved to `.legacy/`
52−- ❌ `packages.dhall` - Moved to `.legacy/`
55−- ✅ `spago.yaml` - Workspace config
56−- ✅ `packages/*/spago.yaml` - Package configs
57−- ✅ `.spago-version` - Spago version lock
60−- ✅ `YAML_ONLY.md` - Complete guide
61−- ✅ `YAML_ONLY_SUMMARY.md` - Quick summary
62−- ✅ `SPAGO_NEXT.md` - Spago Next guide
70− src/ # Implementation
71− test/ # ✅ Tests colocated!
73− src/ # Implementation
74− test/ # ✅ Tests colocated!
76− src/ # Implementation
77− test/ # ✅ Tests colocated!
79− src/ # Implementation
80− test/ # ✅ Tests colocated!
84−- ✅ Tests with implementation
85−- ✅ Independent testing
89−- ✅ `TESTING.md` - Testing guide
90−- ✅ `COLOCATION_SUMMARY.md` - Changes summary
92−### 🏗️ Workspace Organisation
95−- ✅ Monorepo with 4 packages
96−- ✅ Each package self-contained
97−- ✅ Shared workspace config
100−- ✅ `test-all.sh` - Test all packages
101−- ✅ `bun test` - Run all tests
102−- ✅ `bun test:core` - Test one package
105−- ✅ `STRUCTURE.md` - Workspace structure
106−- ✅ `MIGRATION.md` - Migration guide
110−### Configuration Files
113−spago.yaml # ✅ Workspace config (YAML)
114−.spago-version # ✅ Spago version lock
115−.bunversion # ✅ Bun version lock
116−package.json # ✅ Package manifest
117−bun.lock # ✅ Bun lockfile
118−.gitignore # ✅ Ignores npm locks
121−### Documentation Files
124−README.md # Main README
125−BUN_SETUP.md # Bun usage
126−BUN_ONLY.md # Why Bun-only
127−SPAGO_NEXT.md # Spago Next guide
128−YAML_ONLY.md # YAML-only guide
129−YAML_ONLY_SUMMARY.md # YAML summary
130−MIGRATION.md # Migration guide
131−TESTING.md # Testing guide
132−STRUCTURE.md # Workspace structure
133−COLOCATION_SUMMARY.md # Test colocation
134−COMPLETE_SETUP.md # This file
137−### Package Structure
140−packages/yoga-om-core/
141− ├── spago.yaml # ✅ Package config (YAML)
142− ├── package.json # Package metadata
143− ├── README.md # Package docs
144− ├── src/ # Implementation
146− └── test/ # ✅ Tests colocated!
149−packages/yoga-om-node/
150− ├── spago.yaml # ✅ Package config
151− ├── src/ # Implementation
152− └── test/ # ✅ Tests colocated!
154−packages/yoga-om-streams/
155− ├── spago.yaml # ✅ Package config
156− ├── src/ # Implementation
157− └── test/ # ✅ Tests colocated!
159−packages/yoga-om-strom/
160− ├── spago.yaml # ✅ Package config
161− ├── src/ # Implementation
162− ├── test/ # ✅ Tests colocated!
163− ├── examples/ # Kafka, merging examples
164− └── *.md # Extensive docs
171− ├── spago.dhall # Old config (not used)
172− ├── packages.dhall # Old packages (not used)
173− └── README.md # Explains deprecation
175−test/ # Old centralised tests (deprecated)
176−src/ # Old src location (kept for compatibility)
183−- ✅ **Bun** - Fast JavaScript runtime and package manager
184−- ✅ **Spago Next (v0.93.45+)** - PureScript build tool with workspace support
185−- ✅ **PureScript (v0.15.15+)** - PureScript compiler
190−bun --version # Should show: 1.0+
191−spago version # Should show: 0.93.45+
192−purs --version # Should show: 0.15.15+
195−## Commands Reference
197−### Package Management
201−bun install # Install dependencies
202−bun add pkg # Add dependency
203−bun remove pkg # Remove dependency
204−bun update # Update dependencies
207−spago install # Install PureScript deps
208−spago install arrays # Add PureScript package
219−spago build -p yoga-om-core
234−cd packages/yoga-om-core && spago test
237−cd packages/yoga-om-core && spago test --watch
240−## CI/CD Configuration
242−`.github/workflows/ci.yml`:
245−- uses: oven-sh/setup-bun@v2
249−- uses: purescript-contrib/setup-purescript@main
251− purescript: "0.15.15"
254−- run: bun install --frozen-lockfile
256−- run: cd packages/yoga-om-core && spago test
257−- run: cd packages/yoga-om-node && spago test
258−- run: cd packages/yoga-om-streams && spago test
261−## Verification Checklist
264−- [ ] `.nvmrc` removed
265−- [ ] `.bunversion` exists
266−- [ ] All docs mention Bun
267−- [ ] `test-all.sh` checks for Bun
270−- [ ] No active `.dhall` files (except in `.legacy/`)
271−- [ ] `spago.yaml` in root
272−- [ ] `spago.yaml` in each package
273−- [ ] `.spago-version` exists
275−✅ **Tests Colocated**
276−- [ ] Each package has `test/` directory
277−- [ ] `Test.Main` exists in each package
278−- [ ] Tests run independently
281−- [ ] All setup docs exist
282−- [ ] README links to docs
283−- [ ] Each package has README
287−### Starting Development
291−git clone https://github.com/rowtype-yoga/purescript-yoga-om
292−cd purescript-yoga-om
297−cd packages/yoga-om-core
301−### Adding a Dependency
304−# JavaScript dependency
307−# PureScript dependency
311−### Creating a New Package
314−# 1. Create structure
315−mkdir -p packages/my-package/src/My
316−mkdir -p packages/my-package/test/Test
318−# 2. Create spago.yaml
319−cat > packages/my-package/spago.yaml << 'EOF'
323− - prelude: ">=6.0.0 <7.0.0"
328− - spec: ">=7.0.0 <8.0.0"
331−# 3. Create implementation and tests
334−# 4. Add to workspace scripts in package.json
342−curl -fsSL https://bun.sh/install | bash
349−bun install -g spago@next
361−# Make sure you're in package directory
362−cd packages/yoga-om-core
372−- [README.md](./README.md) - Main README
373−- [BUN_SETUP.md](./BUN_SETUP.md) - Bun guide
374−- [SPAGO_NEXT.md](./SPAGO_NEXT.md) - Spago guide
375−- [TESTING.md](./TESTING.md) - Testing guide
378−- [Bun Docs](https://bun.sh/docs)
379−- [Spago Docs](https://github.com/purescript/spago)
380−- [PureScript Docs](https://www.purescript.org)
384−Your setup is complete when:
386−- ✅ `bun --version` works
387−- ✅ `spago version` shows 0.93.45+
388−- ✅ `bun test` passes all tests
389−- ✅ `spago build` builds all packages
390−- ✅ No `.dhall` files in use
391−- ✅ Tests colocated in packages
397−✅ **Bun-only** - One fast runtime
398−✅ **YAML-only** - Simple configuration
399−✅ **Test-colocated** - Clear ownership
400−✅ **Workspace-ready** - Independent packages
401−✅ **CI-ready** - GitHub Actions configured
402−✅ **Well-documented** - Comprehensive guides
407−# Get started in 3 commands
408−curl -fsSL https://bun.sh/install | bash
409−bun install -g spago@next
410−bun install && spago install
@@ -1,16 +0,0 @@
3−Copyright 2021 Mark Eibes, Jan Schulte
5−Permission is hereby granted, free of charge, to any person obtaining a copy of this
6−software and associated documentation files (the "Software"), to deal in the Software
7−without restriction, including without limitation the rights to use, copy, modify,
8−merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
9−permit persons to whom the Software is furnished to do so.
11−THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
12−INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
13−PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
14−HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
15−OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
16−SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,248 +0,0 @@
1−# Migration Guide: Spago v0.21 → Spago Next (v0.93.45)
5−This project has been migrated from **Spago v0.21.0** (using `spago.dhall`) to **Spago Next v0.93.45** (using `spago.yaml`). This enables proper workspace support with colocated tests.
9−### Configuration Files
11−**Before (spago.dhall):**
14−, dependencies = [ "aff", "arrays", ... ]
15−, packages = ./packages.dhall
16−, sources = [ "src/**/*.purs" ]
20−**After (spago.yaml):**
30−- Centralised tests in `/test`
31−- Tests run with `spago -x test.dhall test`
32−- Single monolithic test configuration
35−- Tests colocated with each package in `packages/*/test/`
36−- Each package has its own test configuration
37−- Tests run independently per package
45−curl -fsSL https://bun.sh/install | bash
51−### 2. Install Spago Next
54−# Uninstall old spago (if installed globally)
55−npm uninstall -g spago
57−# Install Spago Next using Bun
58−bun install -g spago@next
60−# Or use the project's local version
61−bun install # Installs spago@0.93.45 from package.json
64−### 2. Verify Installation
68−# Should show: 0.93.45 or higher
71−### 3. Install Dependencies
77−# This will install all workspace dependencies
80−## Running Tests (New Way)
84−# Using npm/bun scripts
96−### Individual Package Tests
99−cd packages/yoga-om-core && spago test
102−cd packages/yoga-om-node && spago test
105−cd packages/yoga-om-streams && spago test
110−cd packages/yoga-om-core && spago test --watch
113−## Building (New Way)
120−### Individual Packages
122−spago build -p yoga-om-core
123−spago build -p yoga-om-node
124−spago build -p yoga-om-streams
127−## Migration Checklist
129−If you're working on this project:
131−- [ ] Install Spago Next (v0.93.45+)
132−- [ ] Remove old spago installation: `npm uninstall -g spago`
133−- [ ] Install dependencies: `spago install`
134−- [ ] Run tests: `bun test` or `./test-all.sh`
135−- [ ] Update IDE/editor settings to use new spago
139−### ❌ These No Longer Work
142−spago -x test.dhall test # Old way - NO LONGER WORKS
143−spago test # Without cd to package - DOESN'T RUN TESTS
146−### ✅ Use These Instead
149−./test-all.sh # Test all packages
151−cd packages/yoga-om-core && spago test # Test one package
156−Legacy Spago v0.21 configuration files have been moved to `.legacy/`:
160− spago.dhall # Old workspace config
161− packages.dhall # Old package set
162− README.md # Explanation
165−These are kept for reference but are **not used** by the build system.
169−### VS Code (PureScript IDE)
171−Update `.vscode/settings.json`:
175− "purescript.buildCommand": "spago build",
176− "purescript.addSpagoSources": true,
177− "purescript.packagePath": "spago.yaml"
183−If using psc-ide-vim or similar:
187−let g:psc_ide_server_port = 4242
192−### Error: "There's no spago.dhall"
194−**Problem:** You're using old Spago v0.21
198−npm uninstall -g spago
199−npm install -g spago@next
202−### Error: "Module X not found"
204−**Problem:** Dependencies not installed
211−### Error: "Invalid option --watch"
213−**Problem:** Old spago version
215−**Solution:** Upgrade to Spago Next (see above)
219−**Problem:** Running `spago test` from wrong directory
223−# Either use the test script
226−# Or cd to a specific package
227−cd packages/yoga-om-core && spago test
230−## Benefits of New Setup
232−✅ **True Workspace Support** - Proper monorepo with independent packages
233−✅ **Colocated Tests** - Tests live with the code they test
234−✅ **Independent Testing** - Test only what you're working on
235−✅ **Modern Tooling** - Latest Spago features
236−✅ **Better CI** - Run tests independently in parallel
237−✅ **Faster Builds** - Incremental compilation per package
241−Updated documentation:
242−- [TESTING.md](./TESTING.md) - Testing guide
243−- [STRUCTURE.md](./STRUCTURE.md) - Workspace structure
244−- [COLOCATION_SUMMARY.md](./COLOCATION_SUMMARY.md) - Test colocation changes
248−See the [README](./README.md) or check [Spago Next documentation](https://github.com/purescript/spago).
NONDETERMINISTIC_MERGE_COMPLETE.mddeleted−142
@@ -1,142 +0,0 @@
1−# Non-Deterministic Merge - Implementation Complete
5−Successfully implemented non-deterministic merge functionality for Strom that runs streams concurrently and emits elements as soon as they're available from any source.
7−## Implementation Details
11−**`mergeND`** - Non-deterministic merge of two streams
12−- Uses `Om.race` to concurrently race pull operations from both streams
13−- Elements are emitted in the order they become available
14−- The faster stream's elements appear first
15−- Properly tracks completion of both streams
17−**`mergeAllND`** - Non-deterministic merge of multiple streams
18−- Generalizes `mergeND` to handle an array of streams
19−- Implemented via fold over `mergeND`
21−### Technical Approach
23−Initially attempted a fiber-based approach with AVar queues for coordination, but encountered challenges with fiber lifecycle management and type constraints. The final implementation uses a simpler, more elegant approach:
25−1. **Race-Based Coordination**: Uses `Om.race` to race the pull operations from both streams
26−2. **State Tracking**: Maintains completion state for each stream to know when both are done
27−3. **Recursive Stream Building**: Constructs the merged stream recursively, racing on each pull
29−### Key Code Structure
32−mergeND s1 s2 = mergeNDImpl s1 s2 { stream1Done: false, stream2Done: false }
34− mergeNDImpl stream1 stream2 state
35− | state.stream1Done && state.stream2Done = empty
36− | state.stream1Done = stream2
37− | state.stream2Done = stream1
38− | otherwise = mkStrom do
39− result <- Om.race [ Left <$> runStrom stream1, Right <$> runStrom stream2 ]
41− Left step1 -> handleStep step1 stream1 stream2 state StreamId1
42− Right step2 -> handleStep step2 stream1 stream2 state StreamId2
48−data StreamId = StreamId1 | StreamId2
51− = DataChunk (Array a) StreamId
52− | StreamDone StreamId
55−Note: These types were kept for potential future use but the final implementation doesn't use them.
59−All 66 tests pass, including comprehensive tests for:
60−- ✅ Basic two-stream merge
61−- ✅ Fast/slow stream combinations
62−- ✅ Empty stream handling
63−- ✅ Completion handling when streams finish at different times
64−- ✅ Integration with `takeStrom` for limiting output
65−- ✅ Multiple stream merge via `mergeAllND`
67−## Behaviour Characteristics
69−**Non-Deterministic Ordering**: When both streams have elements immediately available, `Om.race` determines which wins. The order is not guaranteed to alternate or be fair.
71−**Concurrency**: Streams run truly concurrently via Om's race primitive, which leverages Aff's concurrency model.
73−**Resource Safety**: No explicit cleanup needed as the race-based approach doesn't create background fibers that need management.
75−**Performance**: Minimal overhead compared to sequential merge - just the cost of the race operation.
79−- Exported in module exports alongside deterministic `merge`
80−- Works seamlessly with all existing Strom operations
81−- Compatible with Om's context and error handling
85−1. **`packages/yoga-om-strom/src/Yoga/Om/Strom.purs`**
86− - Added `StreamId` and `QueueItem` data types (lines 148-158)
87− - Added `mergeND` implementation (lines 1134-1158)
88− - Added `mergeAllND` implementation (lines 1160-1163)
89− - Updated module exports to include `mergeND` and `mergeAllND`
91−2. **`packages/yoga-om-strom/src/Yoga/Om/Strom.test.purs`**
92− - Added comprehensive test suite for non-deterministic merge (8 tests)
93− - Tests cover concurrency, completion, empty streams, and integration scenarios
95−## Comparison: Deterministic vs Non-Deterministic Merge
97−| Feature | `merge` (Deterministic) | `mergeND` (Non-Deterministic) |
98−|---------|-------------------------|-------------------------------|
99−| Ordering | Predictable, sequential pulls | Non-deterministic, race-based |
100−| Performance | Sequential | Concurrent |
101−| Use Case | When order matters | When throughput matters |
102−| Complexity | Simple sequential logic | Race coordination |
107−-- Merge two API streams, emitting results as they arrive
108−fastAPI <- queryFastEndpoint
109−slowAPI <- querySlowEndpoint
110−results <- Strom.mergeND fastAPI slowAPI
111− # Strom.takeStrom 100
114−-- Merge multiple event streams
115−events <- Strom.mergeAllND
123−## Feature Parity with ZStream
125−With non-deterministic merge implemented, Strom now has:
126−- ✅ Concurrent merging (similar to ZStream's `mergeWith`)
127−- ✅ Parallel processing (`mapPar`, `foreachPar`)
128−- ✅ Concurrent racing (`race`, `raceAll`)
129−- ✅ Timing operations (`debounce`, `throttle`, `timeout`)
130−- ✅ Infinite streams (`iterateStromInfinite`, `repeatStromInfinite`)
131−- ✅ Resource safety and cancellation
133−This brings Strom to approximately **80-85% feature parity** with ZStream for concurrent streaming operations.
137−- Advanced type-level error handling (`die`, `catchSome`)
138−- Advanced scheduling (cron-style)
139−- Advanced backpressure strategies
142−These are all lower-priority "nice-to-have" features that don't block production use.
NONDETERMINISTIC_MERGE_PLAN.mddeleted−373
@@ -1,373 +0,0 @@
1−# Non-Deterministic Merge - Implementation Plan
5−Implement `mergeNonDeterministic` that truly runs streams concurrently and emits elements as soon as they're available from either stream.
9−**Deterministic merge (current):**
11−merge s1 s2 = mkStrom do
12− step1 <- runStrom s1 -- Sequential!
13− step2 <- runStrom s2 -- Sequential!
17−**Problem:** Pulls are sequential, not concurrent.
22−-- Non-deterministic concurrent merge
23−mergeND :: forall ctx err a. Strom ctx err a -> Strom ctx err a -> Strom ctx err a
26−mergeAllND :: forall ctx err a. Array (Strom ctx err a) -> Strom ctx err a
29−## Implementation Strategy
31−### Phase 1: Two-Stream Merge (2-3 hours)
34−1. Fork both streams as fibers
35−2. Use AVar as a shared queue
36−3. Both fibers write results to queue
37−4. Main stream reads from queue and emits
38−5. Handle completion when both streams finish
42−mergeND :: forall ctx err a. Strom ctx err a -> Strom ctx err a -> Strom ctx err a
43−mergeND s1 s2 = mkStrom do
46− -- Step 1: Create coordination structures
47− resultQueue <- liftAff AVar.empty
48− completionVar <- liftAff AVar.empty
50− -- Step 2: Fork stream 1
51− fiber1 <- Om.launchOm ctx handlers do
52− pullAndEnqueue resultQueue completionVar s1 StreamId1
54− -- Step 3: Fork stream 2
55− fiber2 <- Om.launchOm ctx handlers do
56− pullAndEnqueue resultQueue completionVar s2 StreamId2
58− -- Step 4: Read from queue and emit
59− dequeueAndEmit resultQueue completionVar fiber1 fiber2
62−### Phase 2: Helper Functions
64−**1. Pull and Enqueue (per stream):**
69− -> AVar CompletionSignal
73−pullAndEnqueue queue completion stream streamId = do
74− step <- runStrom stream
77− liftAff $ AVar.put (StreamCompleted streamId) completion
78− Done (Just chunk) -> do
79− liftAff $ AVar.put (DataAvailable chunk streamId) queue
80− liftAff $ AVar.put (StreamCompleted streamId) completion
81− Loop (Tuple maybeChunk next) -> do
84− Just chunk -> liftAff $ AVar.put (DataAvailable chunk streamId) queue
85− pullAndEnqueue queue completion next streamId
88−**2. Dequeue and Emit:**
93− -> AVar CompletionSignal
96− -> Om ctx err (Step ...)
97−dequeueAndEmit queue completion fiber1 fiber2 = do
98− -- Race between data arrival and completion
100− [ Left <$> (liftAff $ AVar.take queue)
101− , Right <$> (liftAff $ AVar.take completion)
105− Left (DataAvailable chunk streamId) ->
106− -- Emit chunk and continue
107− pure $ Loop $ Tuple (Just chunk) (continueReading queue completion fiber1 fiber2)
109− Right (StreamCompleted streamId) ->
110− -- One stream done, check if both done
111− checkBothComplete streamId fiber1 fiber2
114−### Phase 3: Data Types
117−-- Which stream produced data
118−data StreamId = StreamId1 | StreamId2
122− = DataAvailable (Array a) StreamId
123− | StreamCompleted StreamId
125−-- Completion tracking
126−type CompletionState =
127− { stream1Done :: Boolean
128− , stream2Done :: Boolean
132−### Phase 4: Error Handling
135−- If one stream errors, should we cancel the other?
136−- How to propagate errors from background fibers?
140−-- Wrap in error handling
141−mergeND s1 s2 = mkStrom do
144− -- Cancel both fibers on error
145− liftAff $ killFiber (error "Merge aborted") fiber1
146− liftAff $ killFiber (error "Merge aborted") fiber2
152−### Phase 5: Resource Cleanup
154−**Problem:** Fibers must be cleaned up even if stream is interrupted.
160− (allocateMergeResources s1 s2) -- Acquire
161− (\resources -> cleanup resources) -- Release
162− (\resources -> runMerge resources) -- Use
164− cleanup { fiber1, fiber2, queue } = do
165− liftAff $ killFiber (error "Cleanup") fiber1
166− liftAff $ killFiber (error "Cleanup") fiber2
167− -- AVars auto-cleanup
170−## Implementation Steps
172−### Step 1: Basic Two-Stream Merge (1 hour)
173−- [ ] Define data types (`StreamId`, `QueueItem`)
174−- [ ] Implement `pullAndEnqueue`
175−- [ ] Implement `dequeueAndEmit`
176−- [ ] Basic `mergeND` without error handling
178−### Step 2: Completion Tracking (30 min)
179−- [ ] Track which streams are done
180−- [ ] Emit remaining data when one completes
181−- [ ] Terminate when both complete
183−### Step 3: Error Handling (30 min)
184−- [ ] Wrap in `handleErrors'`
185−- [ ] Cancel fibers on error
186−- [ ] Propagate errors correctly
188−### Step 4: Resource Safety (30 min)
189−- [ ] Use `bracket` for fiber cleanup
190−- [ ] Ensure fibers killed on interruption
191−- [ ] Test cancellation scenarios
193−### Step 5: Testing (30 min)
194−- [ ] Test with fast/slow streams
195−- [ ] Test with errors
196−- [ ] Test with infinite streams
197−- [ ] Verify non-deterministic behavior
198−- [ ] Test cancellation
200−### Step 6: Multiple Streams (30 min)
201−- [ ] Generalize to `Array (Strom ctx err a)`
202−- [ ] Track completion for N streams
203−- [ ] Handle N fibers
207−### Test 1: Basic Merge
209−it "merges two streams concurrently" do
211− slow = Strom.fromArray [1, 2, 3]
212− # Strom.mapMStrom (\n -> Om.delay (Milliseconds 100.0) *> pure n)
213− fast = Strom.fromArray [10, 20, 30]
214− # Strom.mapMStrom (\n -> Om.delay (Milliseconds 10.0) *> pure n)
216− result <- runOm $ Strom.mergeND slow fast # Strom.runCollect
218− -- Should contain all elements (order may vary)
219− Array.sort result `shouldEqual` [1, 2, 3, 10, 20, 30]
220− -- Fast elements should appear first (probabilistically)
221− Array.take 3 result `shouldSatisfy` \arr -> 10 `elem` arr
224−### Test 2: Error Propagation
226−it "propagates errors from either stream" do
228− ok = Strom.fromArray [1, 2, 3]
229− bad = Strom.fromArray [1, 2, 3]
230− # Strom.mapMStrom (\n ->
231− if n == 2 then Om.throw { error: "Failed" }
236− Strom.mergeND ok bad
237− # Strom.catchAll (\_ -> Strom.succeed 999)
240− -- Should have caught error
241− result `shouldContain` 999
244−### Test 3: Completion Handling
246−it "continues when one stream completes" do
248− short = Strom.fromArray [1, 2]
249− long = Strom.fromArray [10, 20, 30, 40]
251− result <- runOm $ Strom.mergeND short long # Strom.runCollect
252− Array.sort result `shouldEqual` [1, 2, 10, 20, 30, 40]
255−### Test 4: Cancellation
257−it "cleans up fibers on cancellation" do
259− infinite1 = Strom.repeatStromInfinite 1
260− infinite2 = Strom.repeatStromInfinite 2
262− fiber <- Om.launchOm ctx handlers $
263− Strom.mergeND infinite1 infinite2
264− # Strom.takeStrom 10
267− result <- Aff.joinFiber fiber
268− Array.length result `shouldEqual` 10
269− -- Should not hang or leak resources
272−## Challenges & Solutions
274−### Challenge 1: Handler Propagation
275−**Problem:** Background fibers need access to error handlers.
277−**Solution:** Capture handlers in closure:
279−mergeND s1 s2 = mkStrom do
281− -- Store handlers in scope
282− let handlers = { exception: \e -> ... }
283− fiber1 <- Om.launchOm ctx handlers (...)
286−### Challenge 2: Context Threading
287−**Problem:** Both streams need the context.
289−**Solution:** Use `Om.ask` to get context, pass to `launchOm`:
292−fiber <- Om.launchOm ctx handlers om
295−### Challenge 3: AVar Blocking
296−**Problem:** `AVar.take` blocks if empty.
298−**Solution:** Use `Om.race` to race between queue and completion signals.
300−### Challenge 4: Fairness
301−**Problem:** One fast stream might starve the slow one.
303−**Solution:** Round-robin reading from queue, or use separate queues per stream.
305−## Performance Considerations
308−- **AVars:** O(1) per merge operation
309−- **Fibers:** O(1) per stream
310−- **Queue:** Bounded by chunk size (already in memory)
313−- **Overhead:** ~0.1ms per fiber spawn
314−- **Coordination:** Negligible (AVar operations are fast)
315−- **Benefit:** Streams run truly concurrently
318−- ✅ Multiple slow I/O streams
319−- ✅ Reactive event streams
320−- ✅ Real-time data aggregation
321−- ❌ Simple sequential processing (use regular `merge`)
323−## Alternative: Simpler Non-Blocking Merge
325−If full fiber coordination is too complex, a simpler approach:
328−-- Poll both streams, emit whichever is ready
329−mergePolling s1 s2 = mkStrom do
330− -- Try both, use whichever responds first
332− [ Left <$> runStrom s1
333− , Right <$> runStrom s2
337− Left step1 -> emitAndContinue step1 s1 s2
338− Right step2 -> emitAndContinue step2 s1 s2
341−**Trade-off:** Simpler but less fair (one stream might dominate).
345−1. **Implement basic version** (Phase 1-2)
346−2. **Add tests** (Phase 5)
347−3. **Add error handling** (Phase 3)
348−4. **Add resource safety** (Phase 4)
349−5. **Extend to multiple streams** (Phase 6)
350−6. **Document behavior** in module docs
351−7. **Add to exports** and update feature parity docs
355−- **Basic implementation**: 2-3 hours
356−- **Testing & polish**: 1 hour
357−- **Documentation**: 30 minutes
358−- **Total**: 3-4 hours
362−- ✅ Streams run concurrently (verified with timing tests)
363−- ✅ Elements emitted as soon as available
364−- ✅ Order is non-deterministic
365−- ✅ Both streams complete correctly
366−- ✅ Errors propagated from either stream
367−- ✅ Resources cleaned up on cancellation
368−- ✅ Works with infinite streams
369−- ✅ Tests pass with fast/slow combinations
371−## Ready to Implement?
373−This plan provides a complete roadmap for non-deterministic merge. Should I proceed with implementation?
@@ -1,319 +1,109 @@
1−# 🕉️ yoga-om
1+# yoga-om-core
3−A powerful general purpose type for writing applications with dependency injection and checked exceptions.
3+Core Om types and operations for writing applications with dependency injection and checked exceptions.
5−> **⚠️ Important:** This project uses **Spago Next (v0.93.45+)** with `spago.yaml`. It will not work with old Spago v0.21.x. See [SPAGO_NEXT.md](./SPAGO_NEXT.md) or [MIGRATION.md](./MIGRATION.md).
5+This is the base package that provides the `Om` type and all core operations. It works in both browser and Node.js environments.
7−This workspace contains four packages:
9−- **[yoga-om-core](./packages/yoga-om-core)** - Core Om types and operations (platform-agnostic)
10−- **[yoga-om-node](./packages/yoga-om-node)** - Node.js-specific extensions
11−- **[yoga-om-rom](./packages/yoga-om-rom)** - Reactive Om: Bolson-based FRP integration (push-based events)
12−- **[yoga-om-strom](./packages/yoga-om-strom)** - Stream Om: Pull-based streaming library for data processing
14−For an extensive overview, check out the tests in each package:
15−- [yoga-om-core tests](./packages/yoga-om-core/test/)
16−- [yoga-om-node tests](./packages/yoga-om-node/test/)
17−- [yoga-om-rom tests](./packages/yoga-om-rom/test/)
18−- [yoga-om-strom tests](./packages/yoga-om-strom/test/)
22−This project requires:
23−- **Bun** - Fast JavaScript runtime and package manager
24−- **Spago Next (v0.93.45+)** - For workspace and yaml configuration support
25−- **PureScript (v0.15.15+)** - The PureScript compiler
27## Installation
7## Installation
32−# Install Bun (fast JavaScript runtime & package manager)
33−curl -fsSL https://bun.sh/install | bash
36−bun --version # Should show 1.0+
39−### 2. Install Spago Next
42−# Install Spago Next globally using Bun
43−bun install -g spago@next
46−spago version # Should show 0.93.45+
49−> **Important:** This project uses `spago.yaml` (Spago Next) and **will not work** with old Spago v0.21.x. See [MIGRATION.md](./MIGRATION.md) if migrating from old Spago.
51−### 3. Install Dependencies
54−# Install workspace dependencies
57−# Install PureScript dependencies
70−# Or test individual packages
71−bun test:core # Test yoga-om-core
72−bun test:node # Test yoga-om-node
73−bun test:rom # Test yoga-om-rom
74−bun test:strom # Test yoga-om-strom
77−### Adding Packages to Your Project
79−### Core Package (Required)
82spago install yoga-om-core
10spago install yoga-om-core
85−### Node.js Extensions (Optional)
13+## What's Included
88−spago install yoga-om-node
91−### Reactive FRP Integration (Optional)
94−spago install yoga-om-rom
97−### Pull-Based Streaming (Optional)
100−spago install yoga-om-strom
105−Check out the [minimal example](#running-an-om)!
107−## Which Package Should I Use?
109−- **yoga-om-core**: Start here! This is the base package that provides the `Om` type and all core operations. It works in both browser and Node.js environments.
111−- **yoga-om-node**: Add this if you're building a Node.js application and want convenient wrappers for file system operations, environment variables, etc.
113−- **yoga-om-rom**: Add this if you're integrating with Bolson's FRP system for push-based reactive/event-driven programming (UI, user interactions).
115−- **yoga-om-strom**: Add this for pull-based data streaming with features like batching, parallel processing, and resource-safe stream composition (APIs, file I/O, data pipelines).
119−### 📚 Setup & Configuration
120−- **[BUN_SETUP.md](./BUN_SETUP.md)** - Bun usage guide
121−- **[BUN_ONLY.md](./BUN_ONLY.md)** - Why Bun-only (no nvm/npm)
122−- **[SPAGO_NEXT.md](./SPAGO_NEXT.md)** - Spago Next guide
123−- **[YAML_ONLY.md](./YAML_ONLY.md)** - YAML configuration (no Dhall)
124−- **[MIGRATION.md](./MIGRATION.md)** - Migrating from old Spago
126−### 🏗️ Project Structure
127−- **[STRUCTURE.md](./STRUCTURE.md)** - Workspace organisation
128−- **[TESTING.md](./TESTING.md)** - Testing guide
129−- **[COLOCATION_SUMMARY.md](./COLOCATION_SUMMARY.md)** - Test colocation
131−### 📦 Package Documentation
15+- **Om type**: The core monad transformer stack combining `ReaderT`, `ExceptV`, and `Aff`
132−- [yoga-om-core README](./packages/yoga-om-core/README.md)
16+- **Error handling**: `throw`, `handleErrors`, `expand` for mix-and-match error types
133−- [yoga-om-node README](./packages/yoga-om-node/README.md)
17+- **Dependency injection**: `ask`, `asks` for accessing context
134−- [yoga-om-rom README](./packages/yoga-om-rom/README.md)
18+- **Parallel computations**: `race`, `inParallel` for concurrent operations
135−- [yoga-om-strom README](./packages/yoga-om-strom/README.md)
19+- **Helpers**: `note`, `delay`, `unliftAff` and more
137−## What can it do?
21+## Basic Usage
139−An `Om` consists of three parts.
140−A *context*, potential *errors*, and the *value* of a concurrent computation.
142−Conventionally in code, we abbreviate this as `Om ctx errs a`.
144−### `ctx`: Dependency injection
146−`Om` supports writing code that `ask`s for dependencies that you only provide
147−once at the start of the application.
149```purescript
23```purescript
150−myOmThatNeedsDbName = do
24+import Yoga.Om (Om)
151− { dbName } <- ask
25+import Yoga.Om as Om
154−This is an `Om` of the shape `Om { dbName :: String } _ _`. We are only
155−concerned about the `ctx` part of `Om` in this section, hence the `_`s.
157−### `errors`: Mix-and match errors
159−Dealing with failure in `Om` is just wonderful.
161−### Throwing errors
27+myApp :: Om { dbUrl :: String } (dbError :: String) Unit
162−To throw an error, simply use the `throwError` function with a record that
28+myApp = do
163−has the name of the error as its label and the error data as its value:
29+ { dbUrl } <- Om.ask
30+ -- Your application logic here
165−```purescript
33+main = myApp
166−myOmThatThrows = Om.throw { myError: "This failed" }
34+ # Om.launchOm_
35+ { dbUrl: "postgresql://localhost" }
36+ { exception: \e -> Console.error (show e)
37+ , dbError: \err -> Console.error err
169−This is an `Om _ ( myError :: String ) _`
41+## Features
171−### Handling errors
43+### Context (Dependency Injection)
172−To catch one or multiple errors use `handleErrors`
174```purescript
45```purescript
175−myOmHandled = handleErrors { myError: \text -> Console.warn text } myOmThatThrows
46+getUser :: Om { db :: Database } _ User
49+ -- Use db to fetch user
178−As stated earlier `myOmThatThrows` has type: `Om _ (myError :: String) _`.
52+### Error Handling
180−By handling all potential `myError` errors we've produced `myOmHandled` which has
181−the type `Om _ () _`.
185−A powerful feature of `Om` is that you can easily combine different `Om`
186−computations that can throw different errors.
188```purescript
54```purescript
189−om1 :: forall otherErrors. Om _ ( ioError :: Int | otherErrors ) _
55+saveUser :: Om _ (dbError :: String, validationError :: String) Unit
190−om1 = throw { ioError: -8 }
56+saveUser = do
191−
57+ -- Can throw either dbError or validationError
192−om2 :: forall otherErrors. Om _ ( userError :: String | otherErrors ) _
58+ Om.throw { validationError: "Invalid email" }
193−om2 = throw { userError: "Your last name can't be shorter than 0 characters" }
195−om3 :: forall errs. Om _ ( ioError :: Int, userError :: String | errs ) _
201−This means that you can and should only tag a function with the errors it can actually
61+### Parallel Operations
202−throw and not the complete set of errors that might happen anywhere in your program.
204−The compiler helps you out with this.
206−### Working with `Aff` and `Effect`
208−In order to transform any `Aff a` into an `Om _ _ a` you may use `liftAff`, or `fromAff`.
209−To do the same with `Effect` you may use `liftEffect`.
213−Let's bring it all back home. Eventually you want to actually run an `Om`.
214−Most probably at the start of your application, in a `main :: Effect Unit` function for
217−That's the right time to supply the dependencies to your `Om` and to handle any remaining possible errors:
219```purescript
63```purescript
220−module Main where
64+fetchMultiple :: Om _ _ (Array User)
221−
65+fetchMultiple = Om.inParallel
222−import Prelude
66+ [ fetchUser 1
223−import Effect.Class.Console as Console
67+ , fetchUser 2
224−import Effect (Effect)
68+ , fetchUser 3
225−import Data.Maybe (Maybe)
69+ ]
228−import Yoga.Om.Node as Node
236− \e -> Console.error ("Unexpected exception: " <> show e)
238− \{ variable } -> Console.error $ "Make sure the $" <> variable <> " env variable is set"
241−greet :: Om {} (nameNotFound :: { variable :: String }) Unit
243− name <- Node.getEnv "NAME"
244− Console.log $ "Welcome " <> name
247−### Parallel computations
72+## Testing
249−You can run different `Om`s in parallel.
74+Tests are colocated with the implementation in the `test/` directory:
251−Either the fastest one that does not error out wins:
76+```bash
252−```purescript
77+# Run tests
253−Om.race [ Om.delay (1.0 # Seconds) *> pure "slow" , pure "fast" ]
78+cd packages/yoga-om-core && spago test
256−Or you look at all the results and get an `Om _ _ (Array _)`:
80+# Or from workspace root
257−```purescript
81+bun test:core
259− [ Om.delay (9.0 # Milliseconds) *> pure "1"
260− , Om.delay (1.0 # Milliseconds) *> pure "2"
264−## FAQ
84+See [test/Test/Om/Core.purs](./test/Test/Om/Core.purs) for comprehensive test examples.
266−### What if I need `State` and `Writer`?
268−Since `Om` combines the powers of `Reader` and supports `Effect`ful computations
269−it is less clutter (especially on the type signature) to bolt this functionality
270−on ad-hoc via `Ref`s in the `ctx`
273−### It's so tedious to repeat the labels and keys in `ctx` and `errs`
275−You will probably prefer to define type aliases:
281−import Cache as Cache
283−import Type.Row (type (+))
285−myWholeApp :: Om (DB.Ctx + Cache.Ctx ()) (DB.Errs + Cache.Errs ()) Unit
86+## Package Structure
287− DB.writeToDB "'); DROP TABLE orders;--"
291−```purescript
90+├── src/
292−module DB where
91+│ └── Yoga/
293−
92+│ ├── Om.purs # Main Om implementation
294−writeToDB :: forall ctx errs. String -> Om (Ctx ctx) (Errs errs) Unit
93+│ └── Om/
295−writeToDB s = do
94+│ ├── Error.purs # Error types and helpers
296− -- ...
95+│ └── Error.js # FFI for error handling
297− pure unit
96+└── test/ # Tests colocated here!
299−
98+ ├── Main.purs # Test runner
300−type Ctx r = (dbCtx :: { port :: Int, hostname :: String } | r)
99+ └── Om/
301−
100+ └── Core.purs # Core Om tests (20 tests)
302−type Errs r = IOErr + TimeoutErr + r
303−type IOErr r = ( ioError :: { message :: String, code :: Int, details :: String } | r )
304−type TimeoutErr r = ( timeout :: { query :: String } | r )
308−## Technical behind the scenes info
103+## See Also
310−`Om` is a monad transformer stack built from the stack safe continuation
311−passing `RWSET` without `State` or `Writer` with errors specialised to
312−polymorphic `Variant`s.
317−We would like to thank all the PureScript contributors, especially the ones whose libraries we depend on.
105+- **[yoga-om-node](../yoga-om-node)** - Node.js-specific extensions
106+- **[yoga-om-rom](../yoga-om-rom)** - Reactive Om: Bolson FRP integration (push-based)
107+- **[yoga-om-strom](../yoga-om-strom)** - Stream Om: Pull-based streaming library
319−Special thanks to @reactormonk who has a very similar library ([rave](https://github.com/reactormonk/purescript-rave)) which has the trick to inject variants as single field records instead of the cumbersome `(Proxy :: Proxy "key") value` syntax.
109+For more examples, see the [main README](../../README.md) and [tests](./test/).
@@ -1,288 +0,0 @@
1−# Using Spago Next with yoga-om
5−This project uses **Spago Next (v0.93.45+)** with `spago.yaml` configuration for proper workspace support.
10−# 1. Install Bun (if not already installed)
11−curl -fsSL https://bun.sh/install | bash
13−# 2. Install Spago Next using Bun
14−bun install -g spago@next
16−# 3. Verify installation
18−# Output: 0.93.45 (or higher)
20−# 4. Install dependencies
21−bun install # Install JS/TS dependencies
22−spago install # Install PureScript dependencies
35−- **Workspace Support** - True monorepo with multiple packages
36−- **YAML Configuration** - Modern, readable configuration
37−- **Colocated Tests** - Tests live with the code they test
38−- **Independent Packages** - Each package can be built/tested separately
39−- **Better Performance** - Faster builds and incremental compilation
40−- **Registry System** - Direct package set from PureScript registry
42−### ❌ Old Spago (v0.21.x)
44−- Uses `spago.dhall` (legacy)
45−- No proper workspace support
46−- Centralised test configuration
51−### Workspace Root: `spago.yaml`
59−This defines the workspace and package set version.
61−### Package Config: `packages/*/spago.yaml`
63−Each package has its own configuration:
69− - prelude: ">=6.0.0 <7.0.0"
70− - aff: ">=7.0.0 <8.0.0"
75− - spec: ">=7.0.0 <8.0.0"
86−# Build specific package
87−spago build -p yoga-om-core
99−# Test specific package
100−cd packages/yoga-om-core && spago test
103−cd packages/yoga-om-core && spago test --watch
106−### Installing Dependencies
109−# Install all workspace dependencies
112−# Install specific dependency
115−# Install in specific package
116−cd packages/yoga-om-core && spago install arrays
119−### Package Management
125−# Show dependency graph
129−## Workspace Structure
133−├── spago.yaml # Workspace config (defines registry)
136−│ │ ├── spago.yaml # Package config
137−│ │ ├── src/ # Implementation
138−│ │ └── test/ # Tests (colocated!)
143−│ └── yoga-om-streams/
148− ├── spago.dhall # Old config (deprecated)
149− └── packages.dhall # Old packages (deprecated)
152−## Package Dependencies
154−Packages can depend on each other:
157−# In packages/yoga-om-node/spago.yaml
159− - yoga-om-core: "*" # Workspace package
162−The `"*"` version means "use the workspace version".
166−### 1. Test Single Package (Fast)
169−cd packages/yoga-om-core
173−Only builds and tests that package.
175−### 2. Test All Packages
181−Tests each package independently.
186−cd packages/yoga-om-core
190−Auto-runs tests on file changes.
194−GitHub Actions configuration:
197−- name: Install Spago Next
198− uses: purescript-contrib/setup-purescript@main
200− purescript: "0.15.15"
203−- name: Test yoga-om-core
204− run: cd packages/yoga-om-core && spago test
206−- name: Test yoga-om-node
207− run: cd packages/yoga-om-node && spago test
210−Each package tests independently in parallel.
216−Install [PureScript IDE](https://marketplace.visualstudio.com/items?itemName=nwolverson.ide-purescript):
219−// .vscode/settings.json
221− "purescript.buildCommand": "spago build",
222− "purescript.addSpagoSources": true,
223− "purescript.packagePath": "spago.yaml"
229−With [psc-ide-vim](https://github.com/FrigoEU/psc-ide-vim):
233−let g:psc_ide_use_spago = 1
238−### "There's no spago.dhall"
240−You're using old Spago. Install Spago Next:
243−npm uninstall -g spago
244−npm install -g spago@next
247−### "Module not found"
249−Install dependencies:
257−Make sure you're in the package directory:
260−cd packages/yoga-om-core
264−Or use the test script:
272−- [Spago Next Documentation](https://github.com/purescript/spago)
273−- [PureScript Registry](https://github.com/purescript/registry)
274−- [Migration Guide](./MIGRATION.md)
275−- [Testing Guide](./TESTING.md)
277−## Version Information
279−- **Spago Next**: 0.93.45+
280−- **PureScript**: 0.15.15+
281−- **Package Set**: registry:51.1.0
286−spago version # Should be 0.93.45+
287−purs --version # Should be 0.15.15+
STROM_BUN_VS_NODE.mddeleted−182
@@ -1,182 +0,0 @@
1−# Strom Performance: Bun vs Node.js Comparison
6−- **Build:** Optimized (PureScript with -O flag)
8−## Performance Comparison
10−| Operation | Node.js | Bun | Winner | Speedup |
11−|-----------|---------|-----|--------|---------|
12−| **map** (1M) | 41.7M/sec | 40.0M/sec | Node | 1.04x |
13−| **filter** (1M) | 58.8M/sec | 52.6M/sec | Node | 1.12x |
14−| **3x map chain** (1M) | 28.6M/sec | **71.4M/sec** | **Bun** 🔥 | **2.5x** |
15−| **pipeline** (1M) | 41.7M/sec | 37.0M/sec | Node | 1.13x |
16−| **fold** (1M) | 43.5M/sec | **76.9M/sec** | **Bun** 🔥 | **1.77x** |
17−| **collect** (100K) | 100.0M/sec | 50.0M/sec | Node | 2.0x |
18−| **take** (10K) | 2ms | 4ms | Node | 2.0x |
19−| **mergeND** (1M) | 20.8M/sec | **24.4M/sec** | **Bun** | 1.17x |
20−| **mapPar(4)** (1K) | 35.7K/sec | **45.5K/sec** | **Bun** | 1.27x |
21−| **infinite+take** (1M) | 2.8M/sec | **6.6M/sec** | **Bun** 🔥 | **2.34x** |
22−| **scan** (1M) | 1.36M/sec | 1.35M/sec | Tie | ~1.0x |
23−| **unfold** (100K) | 4.3M/sec | 3.8M/sec | Node | 1.13x |
27−### Bun Wins (6 operations)
28−1. **3x map chain: 2.5x faster** 🔥 (28.6M → 71.4M)
29−2. **infinite+take: 2.34x faster** 🔥 (2.8M → 6.6M)
30−3. **fold: 1.77x faster** 🔥 (43.5M → 76.9M)
31−4. **mapPar: 1.27x faster** (35.7K → 45.5K)
32−5. **mergeND: 1.17x faster** (20.8M → 24.4M)
34−### Node.js Wins (5 operations)
35−1. **collect: 2.0x faster** (100M vs 50M)
36−2. **take: 2.0x faster** (2ms vs 4ms)
37−3. **filter: 1.12x faster** (58.8M vs 52.6M)
38−4. **unfold: 1.13x faster** (4.3M vs 3.8M)
39−5. **pipeline: 1.13x faster** (41.7M vs 37.0M)
41−### Tied (1 operation)
42−- **scan:** Nearly identical performance
48−1. **Chained operations** (3x map: 2.5x faster)
49− - Bun's JIT optimizer excels at function composition
50− - 71M elements/sec is incredible!
52−2. **Infinite streams** (2.34x faster)
53− - Better handling of async boundaries
54− - 6.6M/sec vs Node's 2.8M/sec
56−3. **Aggregation** (fold: 1.77x faster)
57− - 76.9M elements/sec is outstanding
58− - Superior loop optimization
60−4. **Concurrent operations** (mergeND, mapPar)
61− - Better fiber/promise handling
64−### 💪 Node.js Strengths
66−1. **Array collection** (collect: 2.0x faster)
67− - Better Array allocation
70−2. **Early termination** (take: 2.0x faster)
71− - More efficient stream cancellation
73−3. **Single operations** (filter, pipeline, unfold)
74− - More mature optimizations for simple cases
77−### 🤝 Similar Performance
79−**Scan:** Both ~1.35M/sec - stateful operations hit similar bottlenecks
81−## Performance Patterns
84−- ✅ **Complex pipelines** with multiple transformations
85−- ✅ **Infinite streams** with async boundaries
86−- ✅ **Reduction operations** (fold, reduce)
87−- ✅ **Concurrent operations** (race, parallel)
89−### When Node.js Excels
90−- ✅ **Array materialization** (collect)
91−- ✅ **Simple operations** (filter, single map)
92−- ✅ **Early termination** scenarios
93−- ✅ **Unfold/generator patterns**
95−## Absolute Performance Rankings
97−### Top 5 Fastest Operations (Any Runtime)
99−1. **collect (Node):** 100M elements/sec 🥇
100−2. **fold (Bun):** 76.9M elements/sec 🥈
101−3. **3x map chain (Bun):** 71.4M elements/sec 🥉
102−4. **filter (Node):** 58.8M elements/sec
103−5. **filter (Bun):** 52.6M elements/sec
105−### Notable Achievements
107−- **Bun 3x map chain: 71M/sec** - Faster than many native solutions!
108−- **Node collect: 100M/sec** - Incredibly fast array building
109−- **Bun fold: 77M/sec** - Outstanding aggregation performance
111−## Real-World Recommendations
114−- ✅ Complex data transformation pipelines
115−- ✅ Infinite event streams
116−- ✅ Batch aggregation workloads
117−- ✅ Concurrent stream processing
118−- ✅ Long-running stream operations
120−**Expected improvement: 1.5-2.5x faster**
123−- ✅ Simple filter/map operations
124−- ✅ Collecting results into arrays
125−- ✅ Short-lived streams
126−- ✅ When consistency matters (more mature)
128−**Expected improvement: Marginal (10-20% faster on some ops)**
130−### Either is Fine For:
131−- Stateful operations (scan)
132−- Most general-purpose streaming
133−- Production deployments (both are fast enough!)
137−**It's a tie, but with different strengths:**
139−### Bun Average: ~40M elements/sec
140−- Better at complex pipelines
141−- Superior infinite stream handling
142−- Faster concurrent operations
144−### Node.js Average: ~38M elements/sec
145−- Better at array operations
146−- Faster simple transformations
147−- More predictable performance
150−- **Development:** Use either (personal preference)
151−- **Production pipelines:** **Bun** (1.5-2x faster on complex operations)
152−- **Production APIs:** **Node.js** (more mature, better tooling)
154−## Surprising Findings
156−1. **Bun's 3x map chain is 2.5x faster!**
157− - 71M elements/sec is phenomenal
158− - Better than most native solutions
160−2. **Node's collect is 2x faster**
161− - 100M elements/sec is incredible
162− - Excellent Array optimization
164−3. **Bun handles infinite streams 2.3x better**
165− - 6.6M vs 2.8M elements/sec
166− - Superior async boundary handling
168−4. **Most operations within 20% of each other**
169− - Both runtimes are production-ready
170− - Choose based on your workload pattern
176−- **Bun:** Best for complex pipelines (71M elements/sec on chains)
177−- **Node:** Best for simple operations (100M elements/sec on collect)
178−- **Average:** Both deliver 38-40M elements/sec
180−**Strom is production-ready on both runtimes!** ✅
182−The choice depends more on your ecosystem and tooling preferences than raw performance.
STROM_COMPLETE_STATUS.mddeleted−232
@@ -1,232 +0,0 @@
1−# Strom - Complete Production Status
5−**Strom is now at ~90% ZStream feature parity**, production-ready for all common streaming use cases.
7−## Final Implementation Status
9−### ✅ Fully Working (Core Features)
11−**Sequential Operations (100%)**
12−- ✅ Construction: `empty`, `succeed`, `fromArray`, `fromOm`, `range`, etc.
13−- ✅ Transformations: `map`, `mapM`, `filter`, `scan`, `mapAccum`, `tap`
14−- ✅ Selection: `take`, `drop`, `takeWhile`, `dropWhile`, `filter`, `collect`
15−- ✅ Grouping: `grouped`, `chunked`, `groupBy`, `partition`
16−- ✅ Combining: `append`, `concat`, `zip`, `interleave`, `intersperse`
18−**Concurrent Operations (90%)**
19−- ✅ `mapPar` - True parallel mapping with bounded concurrency
20−- ✅ `mapMPar` - Alias for parallel mapping
21−- ✅ `foreachPar` - Parallel side effects
22−- ✅ `race` - Concurrent racing (first to complete)
23−- ✅ `raceAll` - Race multiple streams
24−- ⚠️ `merge` - Deterministic merge (not truly non-deterministic)
26−**Infinite Streams (100%)** 🎉
27−- ✅ `iterateStrom` - Limited to 10k (fast, no overhead)
28−- ✅ **`iterateStromInfinite`** - Truly infinite with Aff boundaries
29−- ✅ `repeatStrom` - Limited to 10k (fast)
30−- ✅ **`repeatStromInfinite`** - Truly infinite with Aff boundaries
31−- ✅ `repeatOmStrom` - Limited to 100 iterations
32−- ✅ **`repeatOmStromInfinite`** - Truly infinite with Aff boundaries
33−- ✅ `unfoldStrom` - Infinite until function returns Nothing
35−**Time Operations (85%)**
36−- ✅ `timeout` - Stream timeouts via racing
37−- ✅ `debounce` - Rate limiting with pacing
38−- ✅ `throttle` - Time-based sampling
39−- ✅ `delay` - Simple delays
40−- ❌ Advanced scheduling (cron, windows) - not needed for most use cases
42−**Resource Safety (100%)**
43−- ✅ `bracket` - Acquire/release pattern
44−- ✅ `bracketExit` - Bracket with exit info
45−- ✅ `acquireRelease` - Simplified bracket
46−- ✅ `ensuring` - Run finalisers
48−**Error Handling (80%)**
49−- ✅ `catchAll` - Catch all errors
50−- ✅ `retry` / `retryN` - Retry on failure
51−- ✅ `timeout` - Timeout handling
52−- ❌ `catchSome` - Selective error catching (type constraints too complex)
53−- ❌ `die` - Throw typed errors (type constraints too complex)
55−**Cancellation (100%)** 🎉
56−- ✅ Full support via `Om.launchOm` + Aff `killFiber`
57−- ✅ Any Om-returning function can be run cancellably
58−- ✅ Examples: `Om.launchOm ctx handlers (runCollect stream)`
60−### ⚠️ Partially Working
62−**`merge` - Deterministic Only**
63−- Current: Sequential pulls, deterministic combination
64−- Missing: True non-deterministic concurrent merge
65−- Workaround: Use `race` for non-deterministic first-wins
66−- Impact: Low - most use cases don't need non-deterministic merge
68−**`interleave` - Chunk-Level Only**
69−- Current: Alternates chunks, not individual elements
70−- Workaround: Chunks are usually small enough
71−- Impact: Low - works well for practical use
73−### ❌ Not Implemented (Low Priority)
75−**Advanced Type-Level Features**
76−- `die` - Throw typed stream errors
77−- `catchSome` - Selective error catching
78−- Reason: Complex variant row constraints
79−- Workaround: Use `catchAll` and pattern match manually
81−**Advanced Scheduling**
82−- Cron-style scheduling
84−- Complex time-based grouping
85−- Reason: Requires significant timer infrastructure
86−- Workaround: Use application-level scheduling
88−**Advanced Backpressure**
89−- Dynamic chunk sizing
90−- Bounded buffering with overflow strategies
91−- Flow control signals
92−- Reason: Would require channel-based architecture
93−- Current: Basic chunking provides adequate backpressure for most use cases
98−58/58 tests passed (100%)
100−~17 warnings (cosmetic only)
104−- Construction: 10 tests
105−- Running/Consuming: 4 tests
106−- Transformations: 7 tests
107−- Selection: 10 tests
111−- Error Handling: 2 tests
112−- Complex Scenarios: 5 tests
113−- Edge Cases: 5 tests
114−- **Infinite streams: 3 tests** (including 15k element tests!)
119−- **Exported functions**: 70+
120−- **Tests**: 58 (100% pass rate)
121−- **Compilation**: Clean (0 errors)
122−- **Type safety**: Full inference
124−## Performance Characteristics
126−### Sequential Operations
127−- **O(n)** for most operations (map, filter, etc.)
128−- **Chunked processing**: Efficient for large datasets
129−- **Lazy evaluation**: Only pulls what's needed
131−### Concurrent Operations
132−- **mapPar**: Bounded parallelism (configurable)
133−- **Async overhead**: ~0.01ms per 100 elements (negligible)
134−- **race**: True non-deterministic racing
137−- **`*Infinite` variants**: Truly stack-safe via Aff
138−- **Cost**: ~1.5ms per 15k elements (0.1µs per element)
139−- **Limit**: None - can process millions of elements
141−## Production Use Cases
143−| Use Case | Ready? | Notes |
144−|----------|--------|-------|
145−| **Data ETL** | ✅✅✅✅✅ | Excellent |
146−| **Batch processing** | ✅✅✅✅✅ | Excellent |
147−| **Parallel workloads** | ✅✅✅✅✅ | True parallelism |
148−| **API integration** | ✅✅✅✅✅ | Rate limiting works great |
149−| **File processing** | ✅✅✅✅✅ | Resource-safe |
150−| **Infinite streams** | ✅✅✅✅✅ | Full support with `*Infinite` |
151−| **Cancellable streams** | ✅✅✅✅✅ | Via Om.launchOm |
152−| **Real-time streaming** | ✅✅✅✅ | Good enough for most |
153−| **High-frequency reactive** | ⚠️⚠️⚠️ | Pull-based limitation |
155−## How to Use Cancellation
158−import Effect.Aff (killFiber)
159−import Effect.Exception (error)
161−import Yoga.Om.Strom as Strom
163−-- Collect results cancellably
164−fiber <- Om.launchOm ctx handlers (Strom.runCollect myStream)
166−killFiber (error "Cancelled") fiber
168−-- Subscribe with callback
169−fiber <- Om.launchOm ctx handlers
170− (Strom.traverseStrom_ logValue myStream)
172−killFiber (error "Unsubscribed") fiber
174−-- Drain for side effects
175−fiber <- Om.launchOm ctx handlers (Strom.runDrain myStream)
176−killFiber (error "Stopped") fiber
179−## Feature Parity vs ZStream
181−| Category | Coverage | Notes |
182−|----------|----------|-------|
183−| Sequential operations | 100% | Complete |
184−| Concurrent operations | 90% | Missing non-deterministic merge |
185−| Infinite streams | 100% | **Full support** |
186−| Resource safety | 100% | Excellent |
187−| Error handling | 80% | Missing selective catching |
188−| Time operations | 85% | Core operations complete |
189−| Backpressure | 30% | Basic chunking |
190−| Cancellation | 100% | **Via Aff** |
191−| **Overall** | **~90%** | **Production-ready** |
193−## What Was Achieved Today
195−Starting point: 60% feature parity
196−1. ✅ True concurrency (`mapPar`, `race`, `timeout`)
197−2. ✅ Time operations (`debounce`, `throttle`)
198−3. ✅ **Infinite streams** (via Aff boundaries)
199−4. ✅ **Cancellation support** (via Om.launchOm)
200−5. ✅ Comprehensive testing
202−**Final: ~90% feature parity** 🎉
207−- ✅ Any sequential data processing
208−- ✅ Parallel batch workloads
209−- ✅ Rate-limited APIs
210−- ✅ File/database streaming
211−- ✅ Infinite stream processing
212−- ✅ Cancellable background tasks
213−- ✅ Om-native applications
215−**Consider alternatives for:**
216−- ❌ Ultra high-frequency reactive (push-based architectures)
217−- ❌ When you specifically need ZStream's exact API
218−- ❌ Advanced backpressure strategies
222−Strom is a **production-ready streaming library** with:
223−- Full sequential streaming
225−- Infinite streams (stack-safe)
226−- Cancellation support
228−- Comprehensive error handling
230−It's suitable for 90% of real-world streaming use cases and integrates beautifully with the Om ecosystem.
232−The Aff-based improvements (async boundaries for infinite streams, cancellation via fibers) were the key breakthroughs that elevated Strom from "good" to "excellent". 🚀
STROM_CONCURRENCY_UPGRADE.mddeleted−238
@@ -1,238 +0,0 @@
1−# Strom Concurrency Upgrade
5−Successfully upgraded Strom from sequential-only to **true concurrent streaming** using Om's concurrency primitives.
7−## What Was Implemented ✅
9−### 1. **`mapPar` - Parallel Mapping with Bounded Concurrency**
11−**Before**: Sequential alias to `mapMStrom`
13−mapPar _concurrency f stream = mapMStrom f stream -- Ignored concurrency!
16−**After**: True parallel processing
18−mapPar :: forall ctx err a b. Int -> (a -> Om ctx err b) -> Strom ctx err a -> Strom ctx err b
22−- Splits chunks into groups of size `concurrency`
23−- Uses `Om.inParallel` to process each group concurrently
24−- Maintains chunking architecture for efficiency
25−- Falls back to sequential if `concurrency <= 1`
29−Strom.fromArray [1, 2, 3, 4, 5, 6, 7, 8]
30− # Strom.mapPar 3 (\n -> do -- Process 3 at a time
31− Om.delay (Milliseconds 100.0)
35−-- Processes in groups: [1,2,3], [4,5,6], [7,8]
36−-- Much faster than sequential!
39−### 2. **`race` - True Concurrent Racing**
41−**Before**: Sequential evaluation pretending to race
43−race s1 s2 = mkStrom do
44− step1 <- runStrom s1 -- Evaluated first
45− step2 <- runStrom s2 -- Then second
49−**After**: True concurrent racing
51−race :: forall ctx err a. Strom ctx err a -> Strom ctx err a -> Strom ctx err a
52−race s1 s2 = mkStrom do
53− Om.race [ runStrom s1, runStrom s2 ] -- Truly concurrent
59− slow = Strom.fromOm (Om.delay (Milliseconds 1000.0) *> pure 1)
60− fast = Strom.fromOm (Om.delay (Milliseconds 10.0) *> pure 2)
62− Strom.race slow fast -- Returns 2 immediately!
65−### 3. **`raceAll` - Race Multiple Streams**
67−**Before**: Fold-based, sequential
69−raceAll streams = Array.foldl race empty streams
72−**After**: One-shot concurrent racing
74−raceAll :: forall ctx err a. Array (Strom ctx err a) -> Strom ctx err a
75−raceAll streams = mkStrom do
76− Om.race (map runStrom streams) -- All race concurrently
79−### 4. **`timeout` - Stream Timeouts**
81−**Before**: No-op placeholder
83−timeout _duration stream = stream -- TODO
86−**After**: Functional timeout via racing
88−timeout :: forall ctx err a. Milliseconds -> Strom ctx err a -> Strom ctx err a
89−timeout duration stream = mkStrom do
90− Om.race [ runStrom stream, Om.delay duration *> runStrom empty ]
93−If stream doesn't complete within `duration`, it terminates as empty.
97−Strom.fromOm (Om.delay (Milliseconds 5000.0) *> pure 1)
98− # Strom.timeout (Milliseconds 100.0)
100−-- Returns [] (empty) because timeout expired
103−### 5. **`foreachPar` - Already Worked**
105−This already used `mapPar` internally, so it now benefits from true parallelism:
107−foreachPar :: forall ctx err a. Int -> (a -> Om ctx err Unit) -> Strom ctx err a -> Om ctx err Unit
110−## Performance Impact 🚀
112−### Sequential Operations
113−- **No change** - Still optimal
114−- `map`, `filter`, `scan`, etc. unchanged
116−### Parallel Operations
117−- **`mapPar`**: Now actually parallel!
118− - 10 items with 100ms each: ~1 second (not 10 seconds)
119− - With `concurrency: 5`: ~200ms (processes in 2 batches)
121−- **`race`**: True non-deterministic racing
122− - Actually returns whichever stream produces first
123− - Perfect for timeouts, fallbacks, fastest-wins scenarios
128−56/56 tests passed (added 2 timing tests)
130−3 warnings (unused imports/names only)
133−All existing tests continue to pass, verifying backward compatibility.
134−New tests for `debounce` and `throttle` verify timing behaviour.
136−## Remaining Limitations
138−### What Still Needs Work
140−**1. Non-deterministic `merge` (Medium)**
141−- Current `merge` combines results deterministically
142−- True concurrent merge needs fiber coordination with AVars
143−- Would continuously pull from both streams and emit as available
145−**2. Time-based operators (Easy-Medium)**
147−debounce :: Milliseconds -> Strom ctx err a -> Strom ctx err a -- Placeholder
148−throttle :: Milliseconds -> Strom ctx err a -> Strom ctx err a -- Placeholder
150−- Need stateful timing with AVars
151−- `debounce`: Only emit if no new value within duration
152−- `throttle`: Emit at most one per duration
154−**3. Infinite Streams (Easy)**
155−- `iterateStrom`, `repeatStrom` still limited to 1000 elements
156−- Architecture supports lazy infinite, just need to fix implementations
158−**4. Advanced Backpressure (Complex)**
159−- Current chunking provides basic backpressure
160−- More sophisticated strategies would need channel-based coordination
162−## Revised Feature Parity Assessment
166−| Feature | Before | After | Notes |
167−|---------|--------|-------|-------|
168−| Sequential ops | 85% | 85% | No change, already solid |
169−| Concurrent ops | 15% | **75%** | 🎉 Major upgrade |
170−| Resource safety | 90% | 90% | Already excellent |
171−| Error handling | 80% | 80% | Already good |
172−| Backpressure | 20% | 20% | Needs channel-based approach |
173−| Time ops | 5% | **70%** | 🎉 timeout, debounce, throttle all work |
175−**Overall: 60% → 80% feature parity** 🚀
177−## Production Readiness
179−### Now Production-Ready For ✅
181−1. **Sequential ETL/Data Processing** ✅ (was already ready)
182−2. **Parallel Batch Processing** ✅ (NEW!)
184− Strom.fromArray bigDataset
185− # Strom.mapPar 10 processItem -- True parallelism
189−3. **Timeout Patterns** ✅ (NEW!)
192− # Strom.timeout (Milliseconds 5000.0)
193− # Strom.catchAll (\_ -> fallbackStream)
196−4. **Race/Fastest-Wins Patterns** ✅ (NEW!)
198− Strom.race primarySource backupSource
201−### Still Not Ready For ❌
203−1. **Truly Reactive/Push-based Streams** ❌
204− - Still pull-based architecture
207−2. **Complex Time-based Processing** ❌
208− - Debounce/throttle not implemented
209− - Would need stateful coordination
211−3. **Non-deterministic Merging** ❌
212− - Current merge is deterministic
213− - Need fiber-based implementation
217−- **Lines of code**: ~1,195
218−- **Compilation time**: ~17s
219−- **Test suite**: 54 tests (100% pass)
220−- **Warnings**: 13 (cosmetic only)
225−Strom is now a **serious production streaming library** suitable for:
226−- ✅ Sequential streaming (excellent)
227−- ✅ Parallel batch processing (now excellent)
228−- ✅ Timeout and racing patterns (now excellent)
229−- ✅ Resource-safe streaming (excellent)
231−It's approximately **80% feature-complete** compared to ZStream, up from 60%.
233−The remaining 20% requires:
234−- Non-deterministic merge (medium effort)
235−- Lazy infinite streams (easy effort)
236−- Advanced backpressure (complex effort)
238−**Bottom line**: The Aff and AVar work paid off. Strom is now concurrent AND time-aware where it matters. 🎉
STROM_FINAL_STATUS.mddeleted−230
@@ -1,230 +0,0 @@
1−# Strom - Final Production Status
5−**Strom is now at ~80% ZStream feature parity**, up from 60% at the start of this session.
7−## What We Implemented Today ✅
9−### Concurrency Upgrade (Om.race, Om.inParallel)
11−1. **`mapPar`** - True parallel mapping with bounded concurrency
12−2. **`race`** - Concurrent racing (first-to-complete wins)
13−3. **`raceAll`** - Race multiple streams
14−4. **`timeout`** - Stream timeouts via racing
16−### Time Operations (AVar + Om.delay)
18−5. **`debounce`** - Rate limiting with pacing
19−6. **`throttle`** - Time-based sampling/filtering
26−3 warnings (cosmetic only)
27−~1,240 lines of production code
30−## Feature Parity Breakdown
34−| Category | Before | After | Improvement |
35−|----------|--------|-------|-------------|
36−| Sequential operations | 85% | 85% | Unchanged (already excellent) |
37−| **Concurrent operations** | 15% | **75%** | **+60% 🚀** |
38−| Resource safety | 90% | 90% | Unchanged (already excellent) |
39−| Error handling | 80% | 80% | Good |
40−| **Time operations** | 5% | **70%** | **+65% 🚀** |
41−| Backpressure | 20% | 20% | Basic chunking |
42−| **Overall** | **60%** | **80%** | **+20% 🎉** |
44−## Production-Ready Use Cases ✅
46−### What Strom Excels At Now
48−**1. Sequential ETL/Data Processing** ⭐⭐⭐⭐⭐
50−Strom.fromArray bigDataset
51− # Strom.filterStrom isValid
52− # Strom.mapStrom transform
53− # Strom.groupedStrom 1000
54− # Strom.mapMStrom writeBatch
58−**2. Parallel Batch Processing** ⭐⭐⭐⭐⭐ (NEW!)
61− # Strom.mapPar 10 processItemConcurrently -- True parallelism!
65−**3. Timeout Patterns** ⭐⭐⭐⭐⭐ (NEW!)
68− # Strom.timeout (Milliseconds 5000.0)
69− # Strom.catchAll (\_ -> fallbackSource)
72−**4. Rate-Limited APIs** ⭐⭐⭐⭐⭐ (NEW!)
75− # Strom.throttle (Milliseconds 100.0) -- Max 10/sec
76− # Strom.mapMStrom callAPI
79−**5. Race/Fastest-Wins** ⭐⭐⭐⭐⭐ (NEW!)
81−Strom.race primaryCache secondaryCache
85−**6. Resource-Safe Streaming** ⭐⭐⭐⭐⭐
89− (\handle -> Om.closeFile handle)
90− (\handle -> Strom.fromFile handle)
92−-- File always closed, even on errors
95−## What's Still Missing (20%)
97−### Easy Wins (If Needed)
99−**Lazy Infinite Streams** (2-3 hours)
100−- Remove 1000-element limits from `iterateStrom`, `repeatStrom`
101−- Architecture already supports it, just fix implementations
103−### Medium Effort (If Needed)
105−**Non-deterministic `merge`** (1 day)
106−- Current merge is deterministic
107−- Need fiber-based coordination with AVars
108−- Continuously pull from both streams
110−### Complex (Probably Not Needed)
112−**Advanced Backpressure** (1+ weeks)
113−- Channel-based coordination
114−- Dynamic chunk sizing
115−- Sophisticated flow control
117−**Push-based/Reactive** (Significant rewrite)
118−- Strom is pull-based by design
119−- For true push/reactive, different architecture needed
121−## Architecture Strengths
123−### What Makes Strom Good
125−✅ **Pull-based** - Natural for batch processing
126−✅ **Chunked** - Efficient for large datasets
127−✅ **Om-native** - Perfect context/error integration
128−✅ **Type-safe** - Leverages PureScript's type system
129−✅ **Resource-safe** - Bracket pattern guarantees cleanup
130−✅ **Composable** - Pipeline operators work beautifully
132−### Design Trade-offs
134−⚠️ **Pull-based** - Not ideal for truly reactive scenarios
135−⚠️ **Chunking** - Some operations buffer (e.g., groupBy)
136−⚠️ **Om-bound** - Requires Om monad (but that's the point!)
138−## Performance Characteristics
140−### Sequential Operations
141−- **Map/Filter**: O(n) per element, O(1) per chunk
142−- **Take/Drop**: O(n) worst case, early termination
143−- **Scan/Fold**: O(n) with state accumulation
144−- **Grouped**: O(n) with buffering
146−### Concurrent Operations
147−- **mapPar**: Bounded parallelism, configurable concurrency
148−- **race**: True non-deterministic racing
149−- **timeout**: Minimal overhead (just a race)
152−- **debounce**: O(1) delay per chunk
153−- **throttle**: O(n) timestamp checks, pure state
155−## Code Quality Metrics
157−- **Lines**: ~1,240 (up from 1,197)
158−- **Functions**: 70+ exported
159−- **Tests**: 56 (100% pass rate)
160−- **Warnings**: 3 (cosmetic)
162−- **Type safety**: Full inference
163−- **Documentation**: Inline + examples
167−### Compared to ZStream
170−- Om integration (ZIO vs Om paradigms)
171−- Type safety for PureScript
172−- Simpler mental model (fewer abstractions)
175−- Sequential operations
178−- Pipeline ergonomics
182−- Advanced backpressure
183−- Some niche operators
186−- Push-based reactivity (different design)
187−- ZIO-specific integrations
189−### Production Readiness
191−| Use Case | Ready? | Notes |
192−|----------|--------|-------|
193−| Data ETL | ✅✅✅✅✅ | Excellent |
194−| Batch processing | ✅✅✅✅✅ | Excellent |
195−| API integration | ✅✅✅✅✅ | Excellent |
196−| File processing | ✅✅✅✅✅ | Excellent |
197−| Parallel workloads | ✅✅✅✅✅ | Now excellent! |
198−| Rate-limited APIs | ✅✅✅✅✅ | Now excellent! |
199−| Real-time streaming | ✅✅✅ | Good enough for most |
200−| High-frequency reactive | ⚠️⚠️ | Pull-based limitation |
201−| Complex event processing | ⚠️⚠️⚠️ | Missing some operators |
206−- ✅ Any sequential data processing
207−- ✅ Parallel batch workloads
208−- ✅ Rate-limited API consumption
209−- ✅ File/database streaming
210−- ✅ Om-native applications
212−**Consider alternatives for**:
213−- ❌ Ultra high-frequency reactive (WebSockets, UI events)
214−- ❌ Complex CEP requiring advanced operators
215−- ❌ When you need ZStream's exact API
219−Strom is **production-ready** for its target use cases. The concurrency and timing upgrades transformed it from a "sequential-only" library to a **genuine concurrent streaming library**.
222−- 80% ZStream parity (up from 60%)
223−- 56/56 tests passing
225−- Real concurrency working
226−- Time operations working
228−It's now a **serious production streaming library** suitable for real-world workloads.
230−The "Aff and AVar stuff" was indeed not too hard—and the impact was massive! 🎉
STROM_OPTIMIZATION_SUMMARY.mddeleted−150
@@ -1,150 +0,0 @@
1−# Strom.purs Optimization Summary
3−## Result: ✅ ALL OPTIMIZATIONS COMPLETE
5−The file compiles successfully with 0 errors (only 4 harmless warnings).
9−### 1. ✅ `runCollect` - O(n²) → O(n)
13−runCollect = runFold [] (\acc a -> Array.snoc acc a)
15−Problem: `Array.snoc` copies entire array for each element!
19−runCollect stream = do
20− chunks <- tailRecM go (Tuple List.Nil stream)
21− pure $ Array.concat $ Array.fromFoldable $ List.reverse chunks
23−Solution: Accumulate chunks in a List (O(1) cons), then concat all at once.
25−### 2. ✅ `take` - Now Tracks State Correctly
29−take n stream = mkStrom do
30− step <- runStrom stream
32− Done (Just chunk) -> pure $ Done $ Just $ Array.take n chunk
33− Loop next -> pure $ Loop $ take n next -- ❌ n never changes!
35−Problem: Takes n elements from *each* chunk instead of n total.
39−take n stream = takeHelper n stream
41− takeHelper remaining s
42− | remaining <= 0 = empty
43− | otherwise = mkStrom do
46− Done (Just chunk) -> pure $ Done $ Just $ Array.take remaining chunk
47− Loop next -> pure $ Loop $ takeHelper remaining next
49−Solution: Pass `remaining` as parameter through recursion.
51−### 3. ✅ `drop` - Now Tracks State Correctly
53−**Before**: Same issue - dropped n from each chunk.
57−drop n stream = dropHelper n stream
59− dropHelper remaining s
61− | otherwise = mkStrom do
65− if remaining >= Array.length chunk
66− then pure $ Done Nothing
67− else pure $ Done $ Just $ Array.drop remaining chunk
68− Loop next -> pure $ Loop $ dropHelper remaining next
70−Solution: Same parameter-passing approach as `take`.
72−### 4. ✅ `filter` - Now Continues Correctly
76−if Array.null filtered
77− then pure $ Done Nothing -- ❌ Terminates entire stream!
78− else pure $ Done $ Just filtered
80−Problem: When chunk filters to empty, stream terminates prematurely.
84−let filtered = Array.filter predicate chunk
85−pure $ Done $ if Array.null filtered then Nothing else Just filtered
87−Solution: Return `Done Nothing` (no chunk) but don't stop Loop recursion.
89−## Implementation Approach
91−### Initial Plan: Use ST (State Thread)
93−The plan was to use ST for safe local mutation:
95−take n stream = liftEffect $ ST.run do
97− -- track state with ref
100−### Reality Check: Parameter Passing
102−ST didn't work well because:
103−- STRef's `h` parameter prevents refs from escaping their ST block
104−- Stream pulls are independent Om computations, can't share ST state
105−- Would need Effect.Ref instead, which causes binding group issues
107−**Solution**: Pure functional parameter passing
108−- Pass state (like `remaining`) through recursive helper functions
109−- No mutable state needed
110−- Simple, type-safe, and efficient
111−- Avoids all the binding group issues from the original broken code
113−## Performance Improvements
115−| Function | Before | After | Improvement |
116−|----------|--------|-------|-------------|
117−| `runCollect` | O(n²) | O(n) | **100x faster** for 10k elements |
118−| `take` | ❌ Broken | ✅ Correct | Now actually works |
119−| `drop` | ❌ Broken | ✅ Correct | Now actually works |
120−| `filter` | ❌ Broken | ✅ Correct | Now actually works |
124−- [`packages/yoga-om-strom/src/Yoga/Om/Strom.purs`](packages/yoga-om-strom/src/Yoga/Om/Strom.purs) (316 lines)
126−## Compilation Status
129−Found 4 linter errors:
130− [WARNING] Shadowed definitions (map, append) - expected, harmless
131− [WARNING] UseZip style suggestion - cosmetic only
138−- **316 lines** (was 294, +22 for improved implementations)
139−- **All functions correct** and efficient
140−- **Clean compilation** with no errors
141−- **Ready for production use**
145−1. **ST isn't always the answer** - Sometimes pure functional patterns are simpler
146−2. **Parameter passing scales** - Works well for stream transformations
147−3. **Chunked processing is efficient** - List-based chunk accumulation is O(n)
148−4. **Type safety wins** - No unsafe mutations, no binding groups, just works
150−The module is now both **correct** and **efficient**! 🚀
STROM_OPTIMIZER_COMPARISON.mddeleted−184
@@ -1,184 +0,0 @@
1−# Strom Performance: Debug vs Optimized Build 🚀
3−## Comparison: PureScript Optimizer Impact
5−### Core Operations (1M elements)
7−| Operation | Debug Build | Optimized Build | Speedup | Improvement |
8−|-----------|-------------|-----------------|---------|-------------|
9−| **map** | 24.4M/sec | **62.5M/sec** | **2.56x** | 🔥 156% faster |
10−| **filter** | 22.7M/sec | **37.0M/sec** | **1.63x** | 🔥 63% faster |
11−| **3x map chain** | 20.4M/sec | **38.5M/sec** | **1.89x** | 🔥 89% faster |
12−| **Complex pipeline** | 26.3M/sec | **38.5M/sec** | **1.46x** | ✅ 46% faster |
13−| **fold** | 40.0M/sec | **43.5M/sec** | **1.09x** | ✅ 9% faster |
14−| **scan** | 0.67M/sec | **1.41M/sec** | **2.11x** | 🔥 111% faster |
15−| **unfold** | 3.1M/sec | **4.8M/sec** | **1.55x** | ✅ 55% faster |
17−### Memory & Collection
19−| Operation | Debug Build | Optimized Build | Speedup | Improvement |
20−|-----------|-------------|-----------------|---------|-------------|
21−| **collect** 100K | 50.0M/sec | **50.0M/sec** | 1.0x | ➡️ Same |
22−| **take** 10K | 4ms | **2ms** | **2.0x** | 🔥 100% faster |
24−### Concurrent Operations
26−| Operation | Debug Build | Optimized Build | Speedup | Improvement |
27−|-----------|-------------|-----------------|---------|-------------|
28−| **mergeND** | 14.9M/sec | **14.9M/sec** | 1.0x | ➡️ Same |
29−| **mapPar(4)** | 22K/sec | **28K/sec** | 1.25x | ✅ 25% faster |
33−| Operation | Debug Build | Optimized Build | Speedup | Improvement |
34−|-----------|-------------|-----------------|---------|-------------|
35−| **iterateInfinite** | 2.7M/sec | **2.9M/sec** | 1.09x | ✅ 9% faster |
39−### Massive Improvements 🔥
41−1. **map: 2.56x faster** (24M → 62M elements/sec)
42− - Now comparable to native performance!
43− - Optimizer eliminated intermediate allocations
45−2. **scan: 2.11x faster** (0.67M → 1.41M elements/sec)
46− - Stateful operations benefit heavily from optimization
47− - Function call overhead reduced
49−3. **3x map chain: 1.89x faster** (20M → 38M elements/sec)
50− - Nearly doubled throughput
51− - Better inlining and fusion
53−### Moderate Improvements ✅
55−4. **filter: 1.63x faster** (23M → 37M elements/sec)
56−5. **unfold: 1.55x faster** (3.1M → 4.8M elements/sec)
57−6. **pipeline: 1.46x faster** (26M → 38M elements/sec)
61−7. **collect, mergeND: No change**
62− - Already I/O or runtime bound
63− - Optimizer can't help much here
65−8. **infinite streams: 1.09x faster**
66− - Bottleneck is the async boundaries for stack safety
69−## Performance Characteristics
71−### What the Optimizer Does Well
73−✅ **Pure function calls** → inlined and optimized
74−✅ **Array operations** → reduced overhead
75−✅ **Stateful operations** → better register allocation
76−✅ **Chained operations** → some fusion opportunities
78−### What the Optimizer Can't Help
80−⚠️ **I/O operations** → mergeND stayed same (runtime bound)
81−⚠️ **Async boundaries** → infinite streams barely improved
82−⚠️ **Already-fast operations** → collect already maxed out
84−## Absolute Performance Numbers
87−- **Range:** 0.67M - 40M elements/sec
88−- **Typical:** 20-25M elements/sec
89−- **Best:** 40M elements/sec (fold)
92−- **Range:** 1.4M - 62M elements/sec
93−- **Typical:** 38-43M elements/sec
94−- **Best:** 62M elements/sec (map)
97−- **Average speedup:** **~1.7x** across all operations
98−- **Best speedup:** **2.56x** (map)
99−- **Production-ready:** Absolutely! 🎉
101−## Comparison to Other Libraries (Optimized)
103−### vs ZStream (Scala/ZIO)
104−- ZStream: ~50-100M elements/sec (JVM)
105−- **Strom Optimized: ~38-62M elements/sec**
106−- **Ratio: 60-120% as fast** ✅
108−**Strom is now competitive with ZStream for many operations!**
110−### vs Node.js Native Streams
111−- Node streams: ~100-200M elements/sec (native C++)
112−- **Strom Optimized: ~38-62M elements/sec**
113−- **Ratio: 20-60% as fast** ✅
115−Still slower but now reasonable gap for the safety benefits.
117−### vs JS Array Operations
120−arr.map(x => x + 1) // ~100-500M elements/sec
123−Strom.mapStrom(_ + 1) // ~62M elements/sec
126−**Strom is now 10-15% as fast as native** (vs 5% before) ✅
132−Processing 10M records:
137−### After (Optimized)
139−Processing 10M records:
140−- map: ~160ms (2.5x faster!)
141−- pipeline: ~260ms (1.5x faster!)
144−### Streaming 1M API Responses
149−That's 24-34ms saved per million requests!
152−## Recommendation: Always Use Optimizer for Production ✅
154−The PureScript optimizer provides:
155−- **1.5-2.5x speedup** on average
156−- **No downside** (same behavior, just faster)
157−- **Essential for production** workloads
162−# Debug build (for development)
165−# Production build (with optimizer)
166−spago build --purs-args "-O"
167−# or however you're running it
172−**The optimizer makes a HUGE difference!** 🚀
174−- **2.56x speedup** for map operations
175−- **62M elements/sec** - competitive with ZStream
176−- **Production-ready** and blazing fast
182−- ✅ **FAST** (62M elements/sec)
184−**Outstanding work on the production build!** The optimizer really shines here.
STROM_PERFORMANCE_ANALYSIS.mddeleted−203
@@ -1,203 +0,0 @@
1−# Strom Performance Analysis
3−## Current Status: **EXCELLENT** 🚀
5−**Real benchmark results:** 20-40M elements/sec for core operations!
7−Overall, Strom is well-designed for performance with its chunked pull-based architecture. Actual load testing confirms theoretical predictions.
11−### ✅ What's Already Fast
13−1. **Chunked Processing**
14− - Processes elements in batches (chunks of 100-1000 elements)
15− - Reduces allocation and function call overhead
16− - Good for throughput
18−2. **Pull-Based (Lazy)**
19− - Only computes what's needed
20− - Perfect for infinite streams
21− - No unnecessary buffering
23−3. **Om's Async Boundaries**
24− - Infinite streams use `delay (Milliseconds 0.0)` for stack safety
25− - Concurrent operations leverage Aff's fiber model
26− - `Om.race` and `Om.inParallel` are already optimized
28−4. **Structural Sharing**
29− - Streams share structure when possible
30− - `map`, `filter`, etc. don't copy unnecessarily
32−### ⚠️ Performance Issues Found
34−#### ~~1. Array.snoc is O(n)~~ ✅ DEBUNKED
36−**Status: NOT AN ISSUE**
38−Array.snoc in PureScript is **O(1)** (amortized), not O(n). It uses JavaScript's push internally, which is highly optimized. The current code using `Array.snoc` is perfectly fine.
40−#### 1. **No Fusion** - LOW IMPACT (PureScript limitation)
49−This creates 3 intermediate streams and pulls 3 times per element.
51−**Why it's LOW impact:** Chunking already amortizes this overhead.
53−**Possible fix (advanced):** Stream fusion via rewrite rules (compiler support needed)
55−#### 2. **Hard-coded Chunk Sizes** - LOW IMPACT
58−- `rangeStrom`: 1000 elements
59−- `iterateStrom`: 100 elements
60−- No way to tune per workload
62−**Impact:** Usually fine, but could be suboptimal for:
63−- Very small elements (could use larger chunks)
64−- Very large elements (could use smaller chunks)
65−- Memory-constrained environments
67−**Fix:** Add configurable chunk size (low priority)
69−## Benchmarking Recommendations
71−### Quick Performance Test
74−-- Test 1: Snoc vs List building (should see big difference)
76− Strom.unfoldStrom (\n -> if n > 10000 then Nothing else Just (Tuple n (n + 1))) 0
79−-- Test 2: Multiple maps (should be fine due to chunking)
81− Strom.rangeStrom 1 100000
82− # Strom.mapStrom (_ + 1)
83− # Strom.mapStrom (_ * 2)
84− # Strom.mapStrom (_ - 1)
87−-- Test 3: Concurrent mergeND (should be fast)
90− (Strom.rangeStrom 1 50000)
91− (Strom.rangeStrom 50001 100000)
95−### Actual Measured Performance ✅
97−| Operation | Elements/sec | Notes |
98−|-----------|-------------|-------|
99−| `mapStrom` | **24M** | Excellent! |
100−| `filterStrom` | **23M** | Excellent! |
101−| `fold` | **40M** | Fastest operation |
102−| `3x map chain` | **20M** | Great fusion |
103−| `mapPar` (concurrency=4) | 22K | Use for I/O only |
104−| `mergeND` | **15M** | True concurrency! |
105−| `scanStrom` | 0.67M | Stateful, expected |
106−| `iterateInfinite` | **2.7M** | Stack-safe! |
108−**Summary: 20-40M elements/sec for typical operations** 🎉
110−## Optimization Priority List
112−### High Priority (Do Now) 🔴
114−**None!** Performance is already excellent.
116−### Medium Priority (Nice to Have) 🟡
118−**Add configurable chunk sizes**
120−-- Add to construction functions
121−rangeStromWithChunkSize :: Int -> Int -> Int -> Strom ctx err Int
122−iterateStromWithChunkSize :: Int -> (a -> a) -> a -> Strom ctx err a
124−- Estimated effort: 1 hour
125−- Impact: 10-50% speedup in specific workloads
126−- Risk: Low (additive API)
129−- Compare to baseline JS array operations
130−- Measure concurrent vs sequential
131−- Profile memory usage
132−- Estimated effort: 2-3 hours
134−### Low Priority (Future) 🟢
136−**Stream fusion (requires compiler support)**
137−- Automatically combine multiple `map`/`filter` operations
138−- Would need GHC-style rewrite rules or manual fusion API
139−- Estimated effort: Very high (weeks)
140−- Impact: 2-5x speedup for pipelines
142−**Specialized chunk representations**
143−- Use `ArrayBuffer` for numeric streams
144−- Use `Builder` pattern for string concatenation
145−- Estimated effort: High (days)
146−- Impact: 2-10x for specific types
150−### Current Memory Usage
152−**Per Stream Object:**
153−- Strom newtype: ~8 bytes (just a function reference)
154−- Step (Loop): ~32 bytes (tuple + maybe + references)
155−- Chunk (Array): 8 bytes + (N × element size)
157−**For a 1M element stream with chunks of 100:**
158−- 10,000 Step objects: ~320 KB
159−- Chunks held in memory: 1-2 chunks = ~800 bytes (for Int)
160−- **Total peak memory: < 1 MB** ✅
162−### Memory Leaks to Avoid
166−-- Holding onto entire collected stream
167−allData <- Strom.runCollect infiniteStream -- OOM!
170−✅ **Do this instead:**
172−-- Process and discard
173−Strom.forMStrom_ processChunk stream -- O(1) memory
176−## Performance vs ZStream (Scala/ZIO)
178−| Metric | Strom | ZStream | Notes |
179−|--------|-------|---------|-------|
180−| Chunking | ✅ Yes | ✅ Yes | Similar approach |
181−| Fusion | ❌ No | ✅ Yes | ZStream has compiler support |
182−| Concurrency | ✅ Yes | ✅ Yes | Both use fiber model |
183−| Pull-based | ✅ Yes | ✅ Yes | Both lazy |
184−| Type safety | ✅ Strong | ✅ Strong | Both track errors |
185−| Throughput | ~1-10M/s | ~5-50M/s | ZStream more optimized JVM |
187−**Overall:** Strom is **70-80% as fast** as ZStream for typical workloads, which is excellent for PureScript.
189−## Recommended Next Steps
191−1. ✅ Add benchmark suite (optional, 2-3 hours)
192−2. 🤔 Profile real-world workload (depends on use case)
193−3. 🤔 Add configurable chunk sizes if needed (minor optimization)
197−**Strom is already very well optimized!** There are no critical performance issues. The architecture is sound:
198−- Chunked processing ✅
199−- Efficient array operations ✅
200−- Lazy pull-based evaluation ✅
201−- Good concurrency primitives ✅
203−**Performance is excellent and not a blocker.** 🎉
STROM_PERFORMANCE_RESULTS.mddeleted−210
@@ -1,210 +0,0 @@
1−# Strom Performance - Actual Benchmark Results 🚀
4−- **Platform:** Node.js v25.2.1
5−- **OS:** macOS (darwin 24.5.0)
6−- **Hardware:** (your local machine)
9−## ⚡ UPDATE: Production Build with Optimizer
11−**These results are from the OPTIMIZED production build!**
12−See `STROM_OPTIMIZER_COMPARISON.md` for before/after comparison.
16−### Core Operations (1M elements) - OPTIMIZED BUILD
18−| Operation | Throughput | Duration | Notes |
19−|-----------|-----------|----------|-------|
20−| **map** | **62.5M elements/sec** 🔥 | 17ms | Incredible! 2.5x faster |
21−| **filter** (50% kept) | **37.0M elements/sec** 🔥 | 27ms | 1.6x faster |
22−| **3x map chain** | **38.5M elements/sec** 🔥 | 26ms | 1.9x faster |
23−| **Complex pipeline** (map+filter+map) | **38.5M elements/sec** 🔥 | 26ms | 1.5x faster |
24−| **fold** (sum) | **43.5M elements/sec** | 23ms | Fastest operation |
25−| **scan** (running sum) | **1.41M elements/sec** 🔥 | 707ms | 2.1x faster! |
27−### Memory & Collection
29−| Operation | Throughput | Duration | Notes |
30−|-----------|-----------|----------|-------|
31−| **collect** 100K elements | **50.0M elements/sec** | 2ms | Very fast |
32−| **take** 10K from 1M | N/A | 4ms | Early termination works! |
34−### Concurrent Operations
36−| Operation | Throughput | Duration | Notes |
37−|-----------|-----------|----------|-------|
38−| **mergeND** (2x500K) | **14.9M elements/sec** | 67ms | True concurrency |
39−| **mapPar(4)** 1K elements | **22K elements/sec** | 45ms | Good for I/O-bound |
43−| Operation | Throughput | Duration | Notes |
44−|-----------|-----------|----------|-------|
45−| **iterateInfinite** + take 1M | **2.7M elements/sec** | 377ms | Stack-safe! |
46−| **unfold** 100K | **3.1M elements/sec** | 32ms | Good |
50−### 🔥 BLAZING FAST (Optimized Build)
51−- **Core operations: 38-62M elements/sec** - INCREDIBLE!
52−- **Map: 62.5M elements/sec** - competitive with native libraries!
53−- **No performance degradation** with chained operations (3 maps = 38.5M/sec)
54−- **Fold: 43.5M elements/sec**
57−- Processing 1M elements in 25-50ms shows chunking is effective
58−- No visible overhead from chunk boundaries
61−- Infinite stream processed 1M elements without stack overflow
62−- `iterateStromInfinite` is production-ready
66−1. **Scan is slower** (0.67M/sec vs 40M/sec for fold)
67− - This is expected: scan maintains state and emits intermediate results
68− - Still reasonable performance
70−2. **mapPar has overhead** (22K/sec vs 24M/sec for sequential)
71− - Only use for I/O-bound operations
72− - The 4x concurrency shines when operations actually block
74−3. **mergeND is fast** (14.9M/sec)
75− - Only ~40% slower than sequential operations
76− - Worth it for true concurrency
78−4. **Early termination works** (take 10K in 4ms)
79− - Lazy evaluation prevents wasteful computation
81−## Comparison to Other Streaming Libraries
83−### vs ZStream (Scala/ZIO)
84−- ZStream: ~50-100M elements/sec (JVM optimized)
85−- **Strom (optimized): ~38-62M elements/sec (JavaScript)**
86−- **Ratio: Strom is 60-120% as fast** ✅ **NOW COMPETITIVE!**
88−This is **excellent** considering:
90−- PureScript's immutability overhead
91−- No JIT warmup optimizations
93−### vs Node.js Streams
94−- Node streams: ~100-200M elements/sec (native C++)
95−- **Strom: ~20-40M elements/sec**
96−- **Ratio: Strom is 10-40% as fast** ⚠️
102−- Better error handling
104−### vs JS Array Operations
106−// Baseline: native JS
107−arr.map(x => x + 1) // ~100-500M elements/sec
110−Strom.mapStrom(_ + 1) // ~24M elements/sec
113−**4-20x slower than native**, which is acceptable for:
114−- The safety and composability you get
115−- Complex pipelines where the gap narrows
117−## Real-World Performance Estimate
119−### Streaming 100K API Responses
121−Time to process 100K items:
123−- fold/aggregate: ~2ms
124−- complex pipeline: ~5-10ms
126−**Verdict: Fast enough for most APIs** ✅
128−### Processing 10M Records
130−Time to process 10M items:
133−- pipeline: ~380-500ms
135−**Verdict: Acceptable for batch processing** ✅
137−### Streaming Events (Real-time)
139−Throughput: 20-40M events/sec
140−= 20,000-40,000 events/ms
141−= Way more than needed for real-time
143−**Verdict: Overkill for event streaming** ✅
145−## Bottlenecks & Optimization Opportunities
147−### Current Bottlenecks
149−1. ✅ **NOT Array.snoc** (it's O(1), we were wrong!)
150−2. ⚠️ **Scan performance** (0.67M vs 40M for fold)
151− - This is fundamental to maintaining state
152− - Not easily optimizable
154−3. 💡 **No stream fusion**
155− - Multiple maps create intermediate streams
156− - Would need compiler support
158−### Low-Hanging Fruit
160−None! Performance is already excellent.
162−### Advanced Optimizations (Not Worth It)
164−1. **Custom chunk representations** (ArrayBuffer for numbers)
165− - Complex implementation
169−2. **Manual stream fusion**
170− - Would need macro system
171− - High maintenance cost
176−- Processing 1K-100M elements
177−- You need type safety and composability
178−- Resource safety matters
179−- Concurrent stream processing
181−### ⚠️ Consider Alternatives When
182−- Processing billions of elements (use database streaming)
183−- Sub-millisecond latency required (use native solutions)
184−- Pure data transformation (native JS might be simpler)
186−### 🎯 Optimization Tips
188−1. **Use takeStrom early** - lazy evaluation prevents waste
189−2. **Prefer fold over scan** - when you don't need intermediate results
190−3. **Use mapPar only for I/O** - has overhead for pure computation
191−4. **Batch with chunkedStrom** - if you want to control chunking
195−**Strom performance is EXCELLENT** 🎉
197−- 20-40M elements/sec for core operations
198−- Stack-safe infinite streams
199−- True concurrency works well
200−- No critical bottlenecks
202−**Production ready** for:
203−- API request/response streaming
205−- Batch data pipelines
206−- Real-time analytics
208−**With the optimizer, Strom achieves 60-120% of ZStream's performance!**
210−For many operations, Strom is now **FASTER than ZStream** on equivalent workloads! 🎉
STROM_REWRITE_SUMMARY.mddeleted−103
@@ -1,103 +0,0 @@
1−# Strom.purs Rewrite Summary
5−The file now **compiles successfully** with 0 errors!
9−- **Before**: 711 lines (broken, never compiled)
10−- **After**: 294 lines (working, compiles cleanly)
11−- **Net change**: -638 broken lines, +98 working lines
15−### ✅ Core Functionality
16−- `empty`, `succeed` - basic construction
17−- `fromArray`, `fromFoldable` - from collections
18−- `range` - integer ranges
21−- `map` - pure transformation
22−- `mapM` - monadic transformation
23−- `tap`, `tapM` - side-effect observation
24−- `filter` - element filtering
27−- `take` - take n elements
28−- `takeWhile` - take while predicate true
29−- `drop` - drop n elements
32−- `runCollect` - collect to array
33−- `runDrain` - discard all
34−- `runFold` - fold with accumulator
37−- `append` - concatenate two streams
38−- `concat` - concatenate array of streams
39−- `zip`, `zipWith` - zip streams together
41−### ✅ Typeclass Instances
42−- `Functor` - for `map`
44−- `Applicative` - for `pure`
45−- `Semigroup` - for `<>`
46−- `Monoid` - for `mempty`
51−Found 4 linter errors:
52− [WARNING] Shadowed definitions (append, map) - harmless
53− [WARNING] UseZip style suggestion - cosmetic only
56−**0 type errors** - the file compiles successfully!
60−All the problematic patterns that caused "binding group" errors:
61−- ❌ Ref-based stateful helpers (`takeStream`, `dropStream`, etc.)
62−- ❌ Complex recursive helper functions with explicit type signatures
63−- ❌ Helper functions that created binding group inference issues
64−- ❌ Over-engineered implementations of `scan`, `mapAccum`, `chunked`
66−## Design Principles Used
68−1. **Simple direct recursion** - no separate helper functions
69−2. **Avoid Refs** - no mutable state tracking
70−3. **Test incrementally** - verify after each addition
71−4. **Proven patterns only** - based on working functions like `map`
72−5. **Working > Complete** - 20 working functions beats 60 broken ones
74−## Next Steps (Optional)
76−If you need more functionality, these can be added incrementally:
79−- `dropWhile` - drop while predicate true
80−- `takeUntil` - take until predicate true
81−- `filterM` - monadic filtering
82−- `traverse_`, `for_` - effectful traversal
85−- `fromAff`, `fromOm` - from Om/Aff computations
86−- `repeat` - infinite repetition
87−- `interleave` - deterministic interleaving
88−- Monad instance with `bind`
90−### Advanced (Would need careful design)
91−- `scan`, `mapAccum` - stateful transformations
92−- `merge`, `race` - non-deterministic combining
93−- `subscribe` - cancelable observation
97−The current implementation provides solid core functionality. Only add more functions if you actually need them. The module is now:
100−- ✅ **Simple and maintainable**
101−- ✅ **Based on proven patterns**
103−This is a much better foundation than 700+ lines of broken AI-generated code!
STROM_TIMING_COMPLETE.mddeleted−118
@@ -1,118 +0,0 @@
1−# Strom Time Operations - Complete! ✅
5−Added `debounce` and `throttle` using AVar state tracking and Om's delay primitives.
7−## What Was Implemented
9−### 1. **`debounce` - Rate Limiting**
13−debounce :: forall ctx err a. Milliseconds -> Strom ctx err a -> Strom ctx err a
16−Adds a delay after each chunk emission to pace the stream.
19−- Rate-limiting API calls
20−- Giving downstream processing time
21−- Preventing overwhelm of slow consumers
25−Strom.fromArray bigDataset
26− # Strom.groupedStrom 100
27− # Strom.debounce (Milliseconds 50.0) -- 50ms between batches
28− # Strom.mapMStrom writeToDatabaseBatch
31−### 2. **`throttle` - Time-Based Filtering**
35−throttle :: forall ctx err a. Milliseconds -> Strom ctx err a -> Strom ctx err a
38−Uses pure state to track last emission time and filters elements arriving too quickly.
41−- Tracks wall-clock time using `Effect.Now`
42−- Passes state through stream transformations (no AVar needed!)
43−- First element always passes
44−- Subsequent elements only pass if enough time has elapsed
47−- Sampling high-frequency streams
48−- Rate-limiting user interactions
49−- Reducing noise from sensor data
54− # Strom.throttle (Milliseconds 100.0) -- Max 10 per second
55− # Strom.mapMStrom updateUI
61−- ✅ `debounce adds delay between elements`
62−- ✅ `throttle limits emission rate`
64−**Total: 56/56 tests pass**
66−## Complete Time Operations
68−| Function | Status | Use Case |
69−|----------|--------|----------|
70−| `delay` | ✅ Had already | Simple delays |
71−| `timeout` | ✅ **NEW** | Terminate if too slow |
72−| `debounce` | ✅ **NEW** | Rate limit with pacing |
73−| `throttle` | ✅ **NEW** | Sample/filter by time |
75−## Performance Characteristics
77−**Debounce**: O(1) per chunk
78−- Simply adds delay, no state tracking
81−**Throttle**: O(n) per element
82−- Checks timestamp for each element
83−- Pure state passing (no AVar overhead)
84−- Efficient for typical workloads
86−## Updated Feature Parity
88−### Time Operations: 5% → 70% ✅
90−| Feature | Before | After |
91−|---------|--------|-------|
96−| scheduled emissions | ❌ | ❌ |
97−| cron-style timing | ❌ | ❌ |
99−We now have all the essential time-based operators!
103−- **New functions**: 2 (debounce, throttle)
104−- **Lines added**: ~40
105−- **Compilation**: Clean (3 warnings, cosmetic)
106−- **Tests**: 56/56 pass
110−Strom now has **production-ready time-based operations**:
112−- ✅ Rate limiting (debounce)
113−- ✅ Sampling (throttle)
116−Combined with the concurrency upgrade, Strom is now at **~80% ZStream parity**, up from 60%.
118−The "AVar and delay" work was straightforward and highly impactful! 🎉
STROM_WITH_OM.mddeleted−292
@@ -1,292 +0,0 @@
1−# Strom with Om - Complete Feature Set
3−## Om Utilities Available in Strom
5−Since Strom uses Om as its effect type, **all Om utilities work seamlessly** with streams!
7−### Concurrency (Already Used)
10−-- Race multiple Om computations
11−Om.race :: Array (Om ctx e a) -> Om ctx e a
13−-- Run multiple Om computations in parallel
14−Om.inParallel :: Array (Om ctx e a) -> Om ctx e (Array a)
16−-- Launch Om in background (cancellable)
17−Om.launchOm :: ctx -> handlers -> Om ctx err a -> Effect (Fiber a)
18−Om.launchOm_ :: ctx -> handlers -> Om ctx err Unit -> Effect Unit
21−### Error Handling Utilities
23−**Convert `Maybe` to errors:**
25−-- Stream of Maybe values -> Stream with errors
27− # Strom.mapMStrom \maybeValue ->
28− Om.note { customError: "Value was Nothing" } maybeValue
29− # Strom.catchAll \err -> Strom.succeed defaultValue
32−**Convert `Either` to errors:**
34−-- Stream with Either results
36− # Strom.mapMStrom \result ->
37− Om.throwLeftAs (\e -> { parseError: show e }) result
40−**Handle specific errors:**
43− # Strom.catchAll \err ->
45− { parseError: \msg -> Strom.succeed defaultValue
46− , networkError: \e -> Strom.retry (fetchFromBackup e)
51−### Context Management
53−**Expand context (run stream needing less context):**
55−-- Stream needing only { logger :: Logger }
56−smallContextStream :: Strom { logger :: Logger } err a
58−-- Use in larger context
59−bigContextOp :: Om { logger :: Logger, db :: DB } err Unit
61− result <- smallContextStream
62− # Strom.mapMStrom Om.expandCtx -- Automatically shrinks context
69−Om.widenCtx :: Om { | lt } err ~> Om { | gt } err
70−-- Allows using functions with smaller context in larger context
77−Om.delay :: Duration d => d -> Om ctx err Unit
80−Strom.fromArray [1, 2, 3]
81− # Strom.mapMStrom \n -> do
82− Om.delay (Milliseconds 100.0)
88−**Convert Aff to Om:**
90−Om.fromAff :: Aff a -> Om ctx err a
93−Strom.repeatOmStromInfinite
94− (Om.fromAff fetchDataFromAPI)
95− # Strom.takeStrom 100
98−### Error Construction
101−-- Throw typed errors
102−Om.throw :: Record err -> Om ctx errors a
103−Om.error :: Record err -> Variant errors
106−Strom.fromArray items
107− # Strom.mapMStrom \item ->
110− else Om.throw { validation: "Invalid item" }
113−## Complete Example: Real-World Stream Processing
119−import Yoga.Om.Strom as Strom
121−import Effect.Aff (Milliseconds(..), killFiber)
122−import Effect.Exception (error)
131− ( database :: String
132− , validation :: String
134− , exception :: Error
137−-- Infinite stream processing pipeline
138−processOrders :: Strom Context Errors Unit
140− -- Infinite stream of orders
141− Strom.repeatOmStromInfinite fetchNextOrder
142− # Strom.throttle (Milliseconds 100.0) -- Rate limit
143− # Strom.mapMStrom validateOrder -- May throw validation errors
144− # Strom.filterMStrom isHighPriority -- Filter with DB check
145− # Strom.mapPar 5 enrichWithCustomerData -- Parallel enrichment
146− # Strom.groupedStrom 10 -- Batch
147− # Strom.mapMStrom processBatch -- May throw database errors
148− # Strom.catchAll handleErrors -- Recover from errors
149− # Strom.runDrain -- Run for side effects
151−fetchNextOrder :: Om Context Errors Order
153− -- Poll queue with timeout
154− maybeOrder <- Om.fromAff pollOrderQueue
155− -- Convert Maybe to error
156− Om.note { network: "No orders available" } maybeOrder
158−validateOrder :: Order -> Om Context Errors Order
159−validateOrder order = do
160− config <- Om.asks _.config
161− if isValidOrder config order
163− else Om.throw { validation: "Invalid order: " <> show order }
165−isHighPriority :: Order -> Om Context Errors Boolean
166−isHighPriority order = do
168− customer <- Om.fromAff $ lookupCustomer db order.customerId
169− -- Convert Either to error
170− Om.throwLeftAs (\e -> { database: show e }) customer
173−enrichWithCustomerData :: Order -> Om Context Errors EnrichedOrder
174−enrichWithCustomerData order = do
175− result <- Om.fromAff $ fetchCustomerData order.customerId
176− Om.throwLeftAs (\e -> { network: show e }) result
177− <#> \customer -> { order, customer }
179−processBatch :: Array EnrichedOrder -> Om Context Errors Unit
180−processBatch batch = do
181− logger <- Om.asks _.logger
183− Om.fromAff $ log logger $ "Processing batch of " <> show (length batch)
184− result <- Om.fromAff $ saveBatch db batch
185− Om.throwLeftAs (\e -> { database: show e }) result
187−handleErrors :: Variant Errors -> Strom Context Errors Unit
190− { validation: \msg -> do
192− Strom.empty -- Skip invalid orders
193− , network: \msg -> do
195− Om.delay (Seconds 5.0) -- Wait and retry
197− , database: \msg -> do
199− Om.throw { exception: error "Database failure" }
206− let ctx = { db, logger, config }
207− let handlers = { exception: \e -> log $ message e }
209− -- Launch in background
210− fiber <- Om.launchOm ctx handlers processOrders
212− -- Cancel after 1 hour
213− _ <- setTimeout (3600 * 1000) do
214− killFiber (error "Shutting down") fiber
221−### 1. **All Om Utilities Work with Streams**
223−Since `Strom` operations return `Om ctx err a`, you can use **any Om utility** inside stream transformations:
227− # Strom.mapMStrom \value -> do
228− Om.delay (Milliseconds 10.0) -- ✅ Works
229− result <- Om.fromAff apiCall -- ✅ Works
230− Om.note { error: "Failed" } result -- ✅ Works
233−### 2. **Context Propagation is Automatic**
235−The context flows through the entire pipeline:
238−-- Context available in every operation
239−process :: Strom { db :: DB, logger :: Logger } Errors Result
241− Strom.fromArray items
242− # Strom.mapMStrom \item -> do
243− logger <- Om.asks _.logger -- ✅ Context available
244− db <- Om.asks _.db -- ✅ Context available
248−### 3. **Error Handling is Composable**
250−Mix and match Om's error utilities with Strom's error handling:
254− # Strom.mapMStrom (Om.note { error: "Conversion failed" })
255− # Strom.retry -- Retry on errors
256− # Strom.catchAll handleError
259−### 4. **Cancellation is Built-in**
261−Any Strom operation can be run cancellably via `Om.launchOm`:
264−fiber <- Om.launchOm ctx handlers (Strom.runCollect myStream)
266−killFiber (error "Cancelled") fiber
269−## Summary: What Strom + Om Provides
271−| Feature | Status | Via |
272−|---------|--------|-----|
273−| Sequential operations | ✅ 100% | Strom |
274−| Concurrent operations | ✅ 90% | Strom + Om.race/inParallel |
275−| Infinite streams | ✅ 100% | Strom (*Infinite variants) |
276−| Time operations | ✅ 85% | Strom + Om.delay |
277−| Resource safety | ✅ 100% | Strom bracket |
278−| Error handling | ✅ 95% | Strom + Om utilities |
279−| Context management | ✅ 100% | Om expandCtx/widenCtx |
280−| Cancellation | ✅ 100% | Om.launchOm + Aff |
281−| **Overall** | **✅ ~95%** | **Strom + Om** |
286−1. ✅ Import `Yoga.Om.Strom` for streaming operations
287−2. ✅ Import `Yoga.Om` for Om utilities (note, throwLeftAs, expand, etc.)
288−3. ✅ Use `Om.launchOm` for cancellation
289−4. ✅ Leverage Om's full error handling toolkit
290−5. ✅ Use context expansion for modular streams
292−The combination of Strom (streaming) + Om (effects) gives you **95% of ZStream/ZIO functionality** with full PureScript type safety! 🎉
@@ -1,251 +0,0 @@
3−This is a monorepo workspace containing multiple PureScript packages for the yoga-om effect system.
10−│ ├── yoga-om-core/ # Core Om types and operations
17−│ │ ├── test/ # ⭐ Tests colocated with implementation
26−│ ├── yoga-om-node/ # Node.js extensions
31−│ │ ├── test/ # ⭐ Tests colocated with implementation
39−│ ├── yoga-om-rom/ # Reactive Om: Bolson FRP integration
44−│ │ ├── test/ # ⭐ Tests colocated with implementation
52−│ ├── yoga-om-strom/ # Stream Om: Pull-based streaming
64−│ └── yoga-om-strom/ # Advanced streaming (Strom)
72−│ ├── test/ # ⭐ Tests colocated with implementation
78−│ │ └── DoNotation.purs
80−│ │ ├── DoVsOperators.purs
81−│ │ ├── KafkaIntegration.purs
82−│ │ ├── KafkaIntegration.js
83−│ │ ├── MergingShowcase.purs
84−│ │ └── RealWorldDo.purs
87−│ └── [... documentation files ...]
89−├── src/ # Legacy: kept for backwards compatibility
96−├── test/ # Legacy: now deprecated, use package tests
101−├── spago.yaml # Workspace configuration
102−├── package.json # Workspace scripts
103−├── test-all.sh # Run all package tests
104−├── TESTING.md # Testing guide
110−### 🏗️ **Workspace Organisation**
111−- Monorepo with multiple independent packages
112−- Each package is self-contained and publishable
113−- Shared workspace configuration via root `spago.yaml`
115−### 📦 **Package Independence**
116−- Each package has its own:
117− - `spago.yaml` - Dependencies and configuration
118− - `package.json` - NPM metadata
119− - `README.md` - Package-specific documentation
120− - `src/` - Implementation code
121− - `test/` - Test code
123−### ✅ **Colocated Tests**
124−- Tests live in each package's `test/` directory
125−- Clear ownership: tests are next to the code they test
126−- Independent testing: test each package separately
127−- Fast feedback: run only relevant tests
129−### 🔗 **Dependencies**
131−yoga-om-core (base package)
133− ├── yoga-om-node (depends on core)
134− ├── yoga-om-rom (depends on core)
135− └── yoga-om-strom (depends on core)
142−bun test # Run all package tests
143−./test-all.sh # Same, via shell script
146−### Run Individual Package Tests
148−bun test:core # Test yoga-om-core
149−bun test:node # Test yoga-om-node
150−bun test:rom # Test yoga-om-rom
151−bun test:strom # Test yoga-om-strom
154−cd packages/yoga-om-core && spago test
157−See [TESTING.md](./TESTING.md) for detailed testing guide.
161−### Build All Packages
163−bun run build # Build all workspace packages
167−### Build Individual Packages
169−bun run build:core # Build yoga-om-core
170−bun run build:node # Build yoga-om-node
171−bun run build:rom # Build yoga-om-rom
172−bun run build:strom # Build yoga-om-strom
175−cd packages/yoga-om-core && spago build
178−## Adding a New Package
180−1. Create package directory:
182− mkdir -p packages/my-package/src packages/my-package/test
185−2. Create `spago.yaml`:
190− - prelude: ">=6.0.0 <7.0.0"
195− - spec: ">=7.0.0 <8.0.0"
198−3. Create `package.json`:
201− "name": "purescript-my-package",
207−4. Add implementation in `src/`
208−5. Add tests in `test/`
209−6. Add to workspace scripts in root `package.json`
213−The root `src/` and `test/` directories have been removed. All code now lives in the package structure under `packages/`.
215−### Package Structure Migration Complete
217−All packages are now organised under `packages/`:
219−packages/yoga-om-core/ → Core Om functionality
220−packages/yoga-om-node/ → Node.js extensions
221−packages/yoga-om-rom/ → Reactive Om (FRP/Bolson)
222−packages/yoga-om-strom/ → Stream Om (pull-based streaming)
227−- **[README.md](./README.md)** - Main project README
228−- **[TESTING.md](./TESTING.md)** - Testing guide
229−- **[STRUCTURE.md](./STRUCTURE.md)** - This file
230−- **Package READMEs** - Each package has its own README
232−### Package-Specific Docs
234−- [yoga-om-core README](./packages/yoga-om-core/README.md)
235−- [yoga-om-node README](./packages/yoga-om-node/README.md)
236−- [yoga-om-rom README](./packages/yoga-om-rom/README.md)
237−- [yoga-om-strom documentation](./packages/yoga-om-strom/) (extensive)
239−## Benefits of This Structure
241−✅ **Clear Organisation** - Each package is self-contained
242−✅ **Independent Testing** - Test packages in isolation
243−✅ **Faster Development** - Work on one package at a time
244−✅ **Better Scalability** - Easy to add new packages
245−✅ **Improved Navigation** - Tests are colocated with code
246−✅ **Package Publishing** - Each package can be published independently
247−✅ **Better CI** - Run only affected tests
251−See [TESTING.md](./TESTING.md) for testing-specific questions, or check individual package READMEs for package-specific documentation.
@@ -1,378 +0,0 @@
5−This project uses **Bun** and **Spago Next (v0.93.45+)** with `spago.yaml` configuration and **file-level test colocation**.
8−# Install Bun (required!)
9−curl -fsSL https://bun.sh/install | bash
11−# Install Spago Next using Bun
12−bun install -g spago@next
15−bun --version # Should show 1.0+
16−spago version # Should show 0.93.45+
19−> **Important:** Tests will not work with old Spago v0.21.x or npm-based workflow. See [MIGRATION.md](./MIGRATION.md) for upgrade instructions.
23−Tests are **colocated at the file level** with their implementations. Each test file has a `.test.purs` suffix and lives right next to the code it tests.
27−### File-Level Colocation
34− Om.purs # ← Implementation
35− Om.test.purs # ← Tests right next to it! ⭐
40− Main.purs # Test runner entry point
41− spago.yaml # Includes test config + exclude patterns
47− Node.purs # ← Implementation
48− Node.test.purs # ← Tests right next to it! ⭐
50− Main.purs # Test runner entry point
57− Rom.purs # ← Implementation
58− Rom.test.purs # ← Tests right next to it! ⭐
60− Main.purs # Test runner entry point
67− Strom.purs # ← Implementation
68− Strom.test.purs # ← Tests right next to it! ⭐
70− Do.purs # ← Implementation
71− Do.test.purs # ← Tests right next to it! ⭐
74− Main.purs # Test runner entry point
78−### Benefits of This Structure
80−1. **Immediate Context**: Tests are right there when you're reading/editing implementation
81−2. **Easy Refactoring**: Move/rename a module, the test moves with it
82−3. **Clear Ownership**: No guessing which test tests which module
83−4. **Modern Best Practice**: Same pattern as Rust, Go, TypeScript
84−5. **Publishing Safety**: Tests are excluded from published packages via `exclude` patterns
90−Run tests for all packages:
93−# Using npm/bun scripts
98−# Using shell script directly
102−### Individual Package Tests
104−Run tests for a specific package:
109−cd packages/yoga-om-core && spago test
113−cd packages/yoga-om-node && spago test
117−cd packages/yoga-om-rom && spago test
121−cd packages/yoga-om-strom && spago test
126−Run tests in watch mode (re-runs on file changes):
129−cd packages/yoga-om-core && spago test --watch
136−Test files use the `.test.purs` suffix and are colocated with the implementation:
139−Yoga/Om/Node.purs # Implementation
140−Yoga/Om/Node.test.purs # Tests
143−### Test Module Naming
145−Test modules follow the pattern `<Module>.Test`:
148−-- In Yoga/Om/Node.test.purs
149−module Yoga.Om.Node.Test where
151−import Yoga.Om.Node as Node -- Import what you're testing
155− describe "Yoga.Om.Node" do
156− it "does something" do
162−We use **purescript-spec** for testing:
165−module Yoga.Om.MyModule.Test where
169−import Test.Spec (Spec, describe, it, pending)
170−import Test.Spec.Assertions (shouldEqual, shouldReturn, fail)
172−import Yoga.Om.MyModule as MyModule
176− describe "MyModule" do
178− describe "Feature X" do
180− it "works correctly" do
181− result <- runOm $ MyModule.doSomething
182− result `shouldEqual` expectedValue
184− it "handles errors" do
185− result <- runOm $ MyModule.doSomethingThatFails
186− result `shouldEqual` fallbackValue
188− pending "future feature not yet implemented"
193−Each package has a test runner at `src/Test/Main.purs`:
196−module Test.Main where
200−import Effect (Effect)
201−import Effect.Aff (launchAff_)
202−import Test.Spec.Reporter (consoleReporter)
203−import Test.Spec.Runner (runSpec)
204−import Yoga.Om.MyModule.Test as MyModuleTest
207−main = launchAff_ $ runSpec [consoleReporter] do
211−### Helper for Running Om in Tests
213−Common pattern for testing Om computations:
216−import Effect.Aff (Aff)
217−import Test.Spec.Assertions (fail)
220−-- Helper to run Om computations in tests
221−runOm :: forall a. Om {} () a -> Aff a
222−runOm om = Om.runOm {} { exception: \err -> fail (show err) } om
225−it "test something" do
226− result <- runOm $ MyModule.doSomething
227− result `shouldEqual` expected
232−### yoga-om-core (20 tests)
233−- Basics (runs safely, launches safely)
235−- Context (Reader) composition
236−- Error helpers and composition
237−- Helper functions (Maybe, Either lifting)
238−- Parallel computations (race, inParallel)
240−### yoga-om-node (3+ tests)
241−- Environment variable operations
243−- Current working directory
245−### yoga-om-rom (pending)
246−- Om to Event conversion
247−- Event to Om conversion
251−### yoga-om-strom (75+ tests)
252−- Construction (empty, succeed, fromArray, range, iterate, unfold)
253−- Running/Consuming (runCollect, runDrain, runFold, runForEach)
254−- Transformations (map, mapOm, mapParallel, bind, scan, tap)
255−- Selection (take, takeWhile, drop, dropWhile, filter, collect)
256−- Combining (append, concat, zip, interleave, race)
257−- Grouping (grouped, chunked, partition)
258−- Do-notation (guards, comprehensions, cartesian products)
260−- Real-world patterns (Pythagorean triples, primes)
264−Tests are **excluded from published packages** via `exclude` patterns in `spago.yaml`:
273− - "src/**/*.test.purs" # ← Exclude all .test.purs files
274− - "src/Test/**" # ← Exclude test runner
276− githubOwner: rowtype-yoga
277− githubRepo: purescript-yoga-om
278− subdir: packages/yoga-om-core
281−When you run `spago publish`, test files are automatically excluded. Only the implementation code is published to the Registry.
285−Tests run in CI for each package:
288−- name: Test yoga-om-core
289− run: cd packages/yoga-om-core && spago test
291−- name: Test yoga-om-node
292− run: cd packages/yoga-om-node && spago test
294−- name: Test yoga-om-rom
295− run: cd packages/yoga-om-rom && spago test
297−- name: Test yoga-om-strom
298− run: cd packages/yoga-om-strom && spago test
303−### Tests not finding modules
305−Make sure you're running from the correct directory:
307−cd packages/yoga-om-core && spago test
310−### Spago version mismatch
312−Ensure you have Spago Next (0.93.45+):
314−spago version # Should show 0.93.45 or higher
317−### Module not found errors
319−Rebuild dependencies:
321−cd packages/yoga-om-core
329−To add tests for a new module:
331−1. **Create test file** next to implementation with `.test.purs` suffix:
333− src/Yoga/Om/NewModule.purs # Implementation
334− src/Yoga/Om/NewModule.test.purs # Tests ← Create this
337−2. **Write test module**:
339− module Yoga.Om.NewModule.Test where
341− import Yoga.Om.NewModule as NewModule
345− describe "NewModule" do
350−3. **Add to test runner** (`src/Test/Main.purs`):
352− import Yoga.Om.NewModule.Test as NewModuleTest
354− main = launchAff_ $ runSpec [consoleReporter] do
360− cd packages/yoga-om-core && spago test
365−For more information:
367−- [COLOCATION_SUMMARY.md](./COLOCATION_SUMMARY.md) - Detailed explanation of test colocation
368−- [STRUCTURE.md](./STRUCTURE.md) - Workspace structure documentation
369−- [purescript-spec docs](https://pursuit.purescript.org/packages/purescript-spec) - Test framework documentation
370−- [Spago README](https://github.com/purescript/spago) - Spago documentation
374−✅ Tests are colocated with implementations using `.test.purs` suffix
375−✅ Tests are excluded from published packages
376−✅ Each package can be tested independently
377−✅ Use `bun test` to run all tests
378−✅ Use `bun test:core` (etc.) to run individual packages
@@ -1,255 +0,0 @@
1−# ✅ YAML-Only Configuration (No Dhall)
3−This project uses **only** `spago.yaml` files for configuration. All legacy `spago.dhall` files have been removed.
10−spago.yaml # Workspace config
11−packages/yoga-om-core/spago.yaml # Package config
12−packages/yoga-om-node/spago.yaml # Package config
13−packages/yoga-om-streams/spago.yaml # Package config
14−.spago-version # Spago version lock (0.93.45)
17−### ❌ Not Used (Legacy)
20−.legacy/spago.dhall # Old workspace config (moved to .legacy/)
21−.legacy/packages.dhall # Old package set (moved to .legacy/)
22−test.dhall # Old test config (deleted)
29−✅ **Modern Tooling** - Spago Next features
30−✅ **Readable** - YAML is more accessible than Dhall
31−✅ **Standard** - YAML is widely used
32−✅ **Workspace Support** - True monorepo with colocated tests
33−✅ **Registry System** - Direct from PureScript registry
34−✅ **No Dhall** - No need to learn Dhall
36−### Legacy Dhall Issues
38−❌ **Complex** - Dhall syntax requires learning curve
39−❌ **Limited Workspace** - No true monorepo support
40−❌ **Centralised** - Tests couldn't be colocated
41−❌ **Package Sets** - Manual package-sets.dhall management
45−### Workspace Root: `spago.yaml`
53−Simple and clean. Defines:
55−- Uses registry version 51.1.0
57−### Package Config: `packages/*/spago.yaml`
66− githubOwner: rowtype-yoga
67− githubRepo: purescript-yoga-om
68− subdir: packages/yoga-om-core
70− - prelude: ">=6.0.0 <7.0.0"
71− - aff: ">=7.0.0 <8.0.0"
75− - spec: ">=7.0.0 <8.0.0"
78−Everything in one file:
80−- Dependencies with version ranges
82−- Publishing information
84−## Commands (No Dhall!)
89−spago build # Build workspace
90−spago build -p yoga-om-core # Build package
93−No `-x` flag needed. No dhall files to reference.
98−cd packages/yoga-om-core
99−spago test # Just works!
102−No `spago -x test.dhall test`. Clean and simple.
104−### Installing Dependencies
107−# JavaScript dependencies
108−bun install # Install JS/TS packages
110−# PureScript dependencies
111−spago install arrays # Add PureScript dependency
114−Updates `spago.yaml` automatically. No manual dhall editing.
116−## Migration from Dhall
125− -- ... 20 more dependencies
127−, packages = ./packages.dhall
128−, sources = [ "src/**/*.purs" ]
132−let conf = ./spago.dhall
133−in conf // { sources = conf.sources # [ "test/**/*.purs" ] }
144−That's it. Much simpler.
148−Check your project only uses YAML:
151−# Should NOT find any active dhall files
152−find . -name "*.dhall" -not -path "./.legacy/*"
154−# Should find these YAML files
155−find . -name "spago.yaml"
158−# ./packages/yoga-om-core/spago.yaml
159−# ./packages/yoga-om-node/spago.yaml
160−# ./packages/yoga-om-streams/spago.yaml
165−Modern editors understand `spago.yaml`:
171− "purescript.packagePath": "spago.yaml" // Not spago.dhall!
177−Automatically finds `spago.yaml` in workspace root.
184−- uses: purescript-contrib/setup-purescript@main
186− purescript: "0.15.15"
187− spago: "0.93.45" # Spago Next (YAML support)
189−- run: spago build # No dhall files needed!
194−### Q: Can I use old Spago?
196−**No.** Old Spago (v0.21.x) uses dhall and doesn't support workspaces.
200−npm install -g spago@next
203−### Q: What happened to dhall files?
205−Moved to `.legacy/` for reference. Not used by build system.
207−### Q: How do I add dependencies?
210−spago install package-name
213−Or edit `spago.yaml`:
216− - new-package: ">=1.0.0 <2.0.0"
219−### Q: Where's packages.dhall?
221−Don't need it. Dependencies come from the [PureScript Registry](https://github.com/purescript/registry).
223−### Q: How do I override packages?
225−Use `extra_packages` in `spago.yaml`:
231− git: https://github.com/user/my-package
237−| Feature | Dhall (Old) | YAML (New) |
238−|---------|-------------|------------|
239−| Configuration | Complex | Simple |
240−| Workspace Support | ❌ | ✅ |
241−| Colocated Tests | ❌ | ✅ |
242−| Registry | Manual | Automatic |
243−| Learning Curve | High | Low |
244−| Tooling | Limited | Modern |
248−- [SPAGO_NEXT.md](./SPAGO_NEXT.md) - Spago Next guide
249−- [MIGRATION.md](./MIGRATION.md) - Migration from old Spago
250−- [TESTING.md](./TESTING.md) - Testing with YAML config
251−- [Spago Documentation](https://github.com/purescript/spago)
255−**This project is YAML-only. No dhall files are used.** ✅
YAML_ONLY_SUMMARY.mddeleted−262
@@ -1,262 +0,0 @@
1−# ✅ YAML-Only Configuration Complete!
5−The project now uses **only `spago.yaml` files** for configuration. All Dhall files have been removed or moved to `.legacy/`.
12−spago.yaml # Workspace config (YAML)
13−packages/*/spago.yaml # Package configs (YAML)
14−.spago-version # Lock to 0.93.45
16−YAML_ONLY.md # This guide
17−SPAGO_NEXT.md # Spago Next guide
18−MIGRATION.md # Migration guide
21−### 🗑️ Removed/Deprecated
25−spago.dhall # Moved to .legacy/
26−packages.dhall # Moved to .legacy/
27−.legacy/ # Legacy files for reference only
33−test-all.sh # No dhall references
34−.github/workflows/ci.yml # Uses Spago Next
35−README.md # Prominent Spago Next requirement
36−TESTING.md # YAML-only instructions
43−├── spago.yaml # ✅ YAML workspace config
44−├── .spago-version # ✅ Spago version lock
47−│ │ ├── spago.yaml # ✅ YAML package config
49−│ │ └── test/ # ✅ Colocated tests
51−│ │ ├── spago.yaml # ✅ YAML package config
53−│ │ └── test/ # ✅ Colocated tests
54−│ └── yoga-om-streams/
55−│ ├── spago.yaml # ✅ YAML package config
57−│ └── test/ # ✅ Colocated tests
59−├── .legacy/ # 🗑️ Old dhall files (not used)
62−│ └── README.md # Explains these are deprecated
65− ├── README.md # Main README
66− ├── YAML_ONLY.md # YAML-only guide
67− ├── SPAGO_NEXT.md # Spago Next guide
68− ├── MIGRATION.md # Migration from old Spago
69− ├── TESTING.md # Testing guide
70− ├── STRUCTURE.md # Workspace structure
71− └── COLOCATION_SUMMARY.md # Test colocation changes
78−- **Bun** - Fast JavaScript runtime and package manager
79−- **Spago Next v0.93.45+** - Install with `bun install -g spago@next`
80−- **PureScript v0.15.15+**
82−### ❌ Will NOT Work With
85−- Dhall configuration files
86−- Centralised test directory
88−## Commands (YAML-Only)
95−spago build -p yoga-om-core
99−cd packages/yoga-om-core && spago test
105−### ❌ These Don't Work (Old Spago)
108−spago -x test.dhall test # No test.dhall file
109−spago -x spago.dhall build # No spago.dhall in use
114−Check everything is YAML-only:
117−# Should be empty (no active dhall files)
118−find . -name "*.dhall" -not -path "./.legacy/*"
120−# Should find all YAML configs
121−find . -name "spago.yaml"
124−# ./packages/yoga-om-core/spago.yaml
125−# ./packages/yoga-om-node/spago.yaml
126−# ./packages/yoga-om-streams/spago.yaml
128−# Check spago version
130−# Should be: 0.93.45 or higher
137−curl -fsSL https://bun.sh/install | bash
139−# 2. Install Spago Next
140−bun install -g spago@next
142−# 3. Install dependencies
153−Should work without any dhall files!
157−✅ **YAML-Only** - No Dhall required
158−✅ **Workspace Support** - True monorepo
159−✅ **Colocated Tests** - Tests with implementation
160−✅ **Modern Tooling** - Spago Next features
161−✅ **Simpler** - YAML is more accessible than Dhall
162−✅ **Registry** - Direct from PureScript registry
163−✅ **Independent Packages** - Build/test separately
167−GitHub Actions now uses Spago Next:
170−- uses: purescript-contrib/setup-purescript@main
172− purescript: "0.15.15"
173− spago: "0.93.45" # Spago Next with YAML support
175−- run: spago build # No dhall files needed!
177−- run: cd packages/yoga-om-core && spago test
182−Comprehensive docs for YAML-only setup:
184−1. **[YAML_ONLY.md](./YAML_ONLY.md)** - Complete YAML-only guide
185−2. **[SPAGO_NEXT.md](./SPAGO_NEXT.md)** - Spago Next usage
186−3. **[MIGRATION.md](./MIGRATION.md)** - Migrating from Dhall
187−4. **[TESTING.md](./TESTING.md)** - Testing with YAML
188−5. **[STRUCTURE.md](./STRUCTURE.md)** - Workspace structure
192−If you had old Spago v0.21.x:
194−1. ✅ Legacy files moved to `.legacy/`
195−2. ✅ New `spago.yaml` configs created
196−3. ✅ Tests colocated in packages
197−4. ✅ Scripts updated (no dhall references)
199−6. ✅ Documentation updated
203−1. **Install Spago Next**
205− npm install -g spago@next
208−2. **Install Dependencies**
213−3. **Test Everything Works**
218−4. **Start Developing**
220− cd packages/yoga-om-core
226−### "There's no spago.dhall"
228−**Good!** That means you're using YAML-only configuration. Just use:
233−### "Module not found"
235−Install dependencies:
242−Use the test script or cd to package:
246−cd packages/yoga-om-core && spago test
251−Your project is fully YAML-only when:
253−- ✅ No active `.dhall` files (except in `.legacy/`)
254−- ✅ All packages have `spago.yaml`
255−- ✅ Tests run with `./test-all.sh`
256−- ✅ Build works with `spago build`
257−- ✅ No `-x` flags needed in commands
258−- ✅ Spago version is 0.93.45+
262−**🎉 Project is now 100% YAML-only! No Dhall required!**
@@ -1,40 +0,0 @@
2− "name": "purescript-yoga-om",
8− "url": "https://github.com/rowtype-yoga/purescript-yoga-om"
17− "purescript-aff": "^v7.1.0",
18− "purescript-avar": "^v5.0.0",
19− "purescript-console": "^v6.0.0",
20− "purescript-control": "^v6.0.0",
21− "purescript-datetime": "^v6.1.0",
22− "purescript-effect": "^v4.0.0",
23− "purescript-either": "^v6.1.0",
24− "purescript-exceptions": "^v6.0.0",
25− "purescript-functions": "^v6.0.0",
26− "purescript-maybe": "^v6.0.0",
27− "purescript-newtype": "^v5.0.0",
28− "purescript-parallel": "^v6.0.0",
29− "purescript-prelude": "^v6.0.1",
30− "purescript-record": "^v4.0.0",
31− "purescript-record-studio": "https://github.com/rowtype-yoga/purescript-record-studio.git#v1.0.1",
32− "purescript-tailrec": "^v6.1.0",
33− "purescript-transformers": "^v6.0.0",
34− "purescript-tuples": "^v7.0.0",
35− "purescript-typelevel-prelude": "^v7.0.0",
36− "purescript-uncurried-transformers": "https://github.com/PureFunctor/purescript-uncurried-transformers.git#v1.1.0",
37− "purescript-unsafe-coerce": "^v6.0.0",
38− "purescript-variant": "^v8.0.0"
@@ -1,571 +0,0 @@
5− "name": "purescript-yoga-om-workspace",
7− "purescript": "^0.15.15",
8− "purs-tidy": "^0.11.1",
12− "purs-backend-es": "^1.4.2",
17− "@gar/promisify": ["@gar/promisify@1.1.3", "", {}, "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw=="],
19− "@isaacs/balanced-match": ["@isaacs/balanced-match@4.0.1", "", {}, "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ=="],
21− "@isaacs/brace-expansion": ["@isaacs/brace-expansion@5.0.0", "", { "dependencies": { "@isaacs/balanced-match": "^4.0.1" } }, "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA=="],
23− "@isaacs/cliui": ["@isaacs/cliui@8.0.2", "", { "dependencies": { "string-width": "^5.1.2", "string-width-cjs": "npm:string-width@^4.2.0", "strip-ansi": "^7.0.1", "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", "wrap-ansi": "^8.1.0", "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" } }, "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA=="],
25− "@isaacs/fs-minipass": ["@isaacs/fs-minipass@4.0.1", "", { "dependencies": { "minipass": "^7.0.4" } }, "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w=="],
27− "@nodelib/fs.scandir": ["@nodelib/fs.scandir@4.0.1", "", { "dependencies": { "@nodelib/fs.stat": "4.0.0", "run-parallel": "^1.2.0" } }, "sha512-vAkI715yhnmiPupY+dq+xenu5Tdf2TBQ66jLvBIcCddtz+5Q8LbMKaf9CIJJreez8fQ8fgaY+RaywQx8RJIWpw=="],
29− "@nodelib/fs.stat": ["@nodelib/fs.stat@4.0.0", "", {}, "sha512-ctr6bByzksKRCV0bavi8WoQevU6plSp2IkllIsEqaiKe2mwNNnaluhnRhcsgGZHrrHk57B3lf95MkLMO3STYcg=="],
31− "@nodelib/fs.walk": ["@nodelib/fs.walk@3.0.1", "", { "dependencies": { "@nodelib/fs.scandir": "4.0.1", "fastq": "^1.15.0" } }, "sha512-nIh/M6Kh3ZtOmlY00DaUYB4xeeV6F3/ts1l29iwl3/cfyY/OuCfUx+v08zgx8TKPTifXRcjjqVQ4KB2zOYSbyw=="],
33− "@npmcli/fs": ["@npmcli/fs@2.1.2", "", { "dependencies": { "@gar/promisify": "^1.1.3", "semver": "^7.3.5" } }, "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ=="],
35− "@npmcli/move-file": ["@npmcli/move-file@2.0.1", "", { "dependencies": { "mkdirp": "^1.0.4", "rimraf": "^3.0.2" } }, "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ=="],
37− "@tootallnate/once": ["@tootallnate/once@2.0.0", "", {}, "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A=="],
39− "agent-base": ["agent-base@6.0.2", "", { "dependencies": { "debug": "4" } }, "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ=="],
41− "agentkeepalive": ["agentkeepalive@4.6.0", "", { "dependencies": { "humanize-ms": "^1.2.1" } }, "sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ=="],
43− "aggregate-error": ["aggregate-error@3.1.0", "", { "dependencies": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" } }, "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA=="],
45− "ansi-escapes": ["ansi-escapes@4.3.2", "", { "dependencies": { "type-fest": "^0.21.3" } }, "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ=="],
47− "ansi-regex": ["ansi-regex@5.0.1", "", {}, "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="],
49− "ansi-styles": ["ansi-styles@3.2.1", "", { "dependencies": { "color-convert": "^1.9.0" } }, "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA=="],
51− "aproba": ["aproba@1.2.0", "", {}, "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="],
53− "argparse": ["argparse@2.0.1", "", {}, "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="],
55− "asn1": ["asn1@0.2.6", "", { "dependencies": { "safer-buffer": "~2.1.0" } }, "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ=="],
57− "astral-regex": ["astral-regex@2.0.0", "", {}, "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ=="],
59− "balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="],
61− "bcrypt-pbkdf": ["bcrypt-pbkdf@1.0.2", "", { "dependencies": { "tweetnacl": "^0.14.3" } }, "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w=="],
63− "bluebird": ["bluebird@3.7.2", "", {}, "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg=="],
65− "brace-expansion": ["brace-expansion@1.1.12", "", { "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg=="],
67− "braces": ["braces@3.0.3", "", { "dependencies": { "fill-range": "^7.1.1" } }, "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA=="],
69− "buffer-from": ["buffer-from@1.1.2", "", {}, "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="],
71− "buildcheck": ["buildcheck@0.0.7", "", {}, "sha512-lHblz4ahamxpTmnsk+MNTRWsjYKv965MwOrSJyeD588rR3Jcu7swE+0wN5F+PbL5cjgu/9ObkhfzEPuofEMwLA=="],
73− "bundle-name": ["bundle-name@4.1.0", "", { "dependencies": { "run-applescript": "^7.0.0" } }, "sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q=="],
75− "byline": ["byline@5.0.0", "", {}, "sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q=="],
77− "cacache": ["cacache@11.3.3", "", { "dependencies": { "bluebird": "^3.5.5", "chownr": "^1.1.1", "figgy-pudding": "^3.5.1", "glob": "^7.1.4", "graceful-fs": "^4.1.15", "lru-cache": "^5.1.1", "mississippi": "^3.0.0", "mkdirp": "^0.5.1", "move-concurrently": "^1.0.1", "promise-inflight": "^1.0.1", "rimraf": "^2.6.3", "ssri": "^6.0.1", "unique-filename": "^1.1.1", "y18n": "^4.0.0" } }, "sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA=="],
79− "chalk": ["chalk@2.4.2", "", { "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" } }, "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ=="],
81− "chownr": ["chownr@3.0.0", "", {}, "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g=="],
83− "clean-stack": ["clean-stack@2.2.0", "", {}, "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A=="],
85− "cli-cursor": ["cli-cursor@3.1.0", "", { "dependencies": { "restore-cursor": "^3.1.0" } }, "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw=="],
87− "color-convert": ["color-convert@1.9.3", "", { "dependencies": { "color-name": "1.1.3" } }, "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg=="],
89− "color-name": ["color-name@1.1.3", "", {}, "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw=="],
91− "concat-map": ["concat-map@0.0.1", "", {}, "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="],
93− "concat-stream": ["concat-stream@1.6.2", "", { "dependencies": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", "readable-stream": "^2.2.2", "typedarray": "^0.0.6" } }, "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw=="],
95− "copy-concurrently": ["copy-concurrently@1.0.5", "", { "dependencies": { "aproba": "^1.1.1", "fs-write-stream-atomic": "^1.0.8", "iferr": "^0.1.5", "mkdirp": "^0.5.1", "rimraf": "^2.5.4", "run-queue": "^1.0.0" } }, "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A=="],
97− "core-util-is": ["core-util-is@1.0.3", "", {}, "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="],
99− "cpu-features": ["cpu-features@0.0.10", "", { "dependencies": { "buildcheck": "~0.0.6", "nan": "^2.19.0" } }, "sha512-9IkYqtX3YHPCzoVg1Py+o9057a3i0fp7S530UWokCSaFVTc7CwXPRiOjRjBQQ18ZCNafx78YfnG+HALxtVmOGA=="],
101− "cross-spawn": ["cross-spawn@7.0.6", "", { "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" } }, "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA=="],
103− "cyclist": ["cyclist@1.0.2", "", {}, "sha512-0sVXIohTfLqVIW3kb/0n6IiWF3Ifj5nm2XaSrLq2DI6fKIGa2fYAZdk917rUneaeLVpYfFcyXE2ft0fe3remsA=="],
105− "debug": ["debug@4.4.3", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="],
107− "default-browser": ["default-browser@5.4.0", "", { "dependencies": { "bundle-name": "^4.1.0", "default-browser-id": "^5.0.0" } }, "sha512-XDuvSq38Hr1MdN47EDvYtx3U0MTqpCEn+F6ft8z2vYDzMrvQhVp0ui9oQdqW3MvK3vqUETglt1tVGgjLuJ5izg=="],
109− "default-browser-id": ["default-browser-id@5.0.1", "", {}, "sha512-x1VCxdX4t+8wVfd1so/9w+vQ4vx7lKd2Qp5tDRutErwmR85OgmfX7RlLRMWafRMY7hbEiXIbudNrjOAPa/hL8Q=="],
111− "define-lazy-prop": ["define-lazy-prop@3.0.0", "", {}, "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg=="],
113− "duplexify": ["duplexify@3.7.1", "", { "dependencies": { "end-of-stream": "^1.0.0", "inherits": "^2.0.1", "readable-stream": "^2.0.0", "stream-shift": "^1.0.0" } }, "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g=="],
115− "eastasianwidth": ["eastasianwidth@0.2.0", "", {}, "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA=="],
117− "emoji-regex": ["emoji-regex@8.0.0", "", {}, "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="],
119− "encoding": ["encoding@0.1.13", "", { "dependencies": { "iconv-lite": "^0.6.2" } }, "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A=="],
121− "end-of-stream": ["end-of-stream@1.4.5", "", { "dependencies": { "once": "^1.4.0" } }, "sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg=="],
123− "entities": ["entities@4.5.0", "", {}, "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="],
125− "env-paths": ["env-paths@3.0.0", "", {}, "sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A=="],
127− "err-code": ["err-code@2.0.3", "", {}, "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA=="],
129− "escape-string-regexp": ["escape-string-regexp@1.0.5", "", {}, "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg=="],
131− "execa": ["execa@2.1.0", "", { "dependencies": { "cross-spawn": "^7.0.0", "get-stream": "^5.0.0", "is-stream": "^2.0.0", "merge-stream": "^2.0.0", "npm-run-path": "^3.0.0", "onetime": "^5.1.0", "p-finally": "^2.0.0", "signal-exit": "^3.0.2", "strip-final-newline": "^2.0.0" } }, "sha512-Y/URAVapfbYy2Xp/gb6A0E7iR8xeqOCXsuuaoMn7A5PzrXUK84E1gyiEfq0wQd/GHA6GsoHWwhNq8anb0mleIw=="],
133− "fastq": ["fastq@1.20.1", "", { "dependencies": { "reusify": "^1.0.4" } }, "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw=="],
135− "figgy-pudding": ["figgy-pudding@3.5.2", "", {}, "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw=="],
137− "filesize": ["filesize@4.2.1", "", {}, "sha512-bP82Hi8VRZX/TUBKfE24iiUGsB/sfm2WUrwTQyAzQrhO3V9IhcBBNBXMyzLY5orACxRyYJ3d2HeRVX+eFv4lmA=="],
139− "fill-range": ["fill-range@7.1.1", "", { "dependencies": { "to-regex-range": "^5.0.1" } }, "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg=="],
141− "flush-write-stream": ["flush-write-stream@1.1.1", "", { "dependencies": { "inherits": "^2.0.3", "readable-stream": "^2.3.6" } }, "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w=="],
143− "foreground-child": ["foreground-child@3.3.1", "", { "dependencies": { "cross-spawn": "^7.0.6", "signal-exit": "^4.0.1" } }, "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw=="],
145− "from2": ["from2@2.3.0", "", { "dependencies": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" } }, "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g=="],
147− "fs-extra": ["fs-extra@11.3.3", "", { "dependencies": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", "universalify": "^2.0.0" } }, "sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg=="],
149− "fs-minipass": ["fs-minipass@2.1.0", "", { "dependencies": { "minipass": "^3.0.0" } }, "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg=="],
151− "fs-write-stream-atomic": ["fs-write-stream-atomic@1.0.10", "", { "dependencies": { "graceful-fs": "^4.1.2", "iferr": "^0.1.5", "imurmurhash": "^0.1.4", "readable-stream": "1 || 2" } }, "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA=="],
153− "fs.realpath": ["fs.realpath@1.0.0", "", {}, "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="],
155− "fuse.js": ["fuse.js@7.1.0", "", {}, "sha512-trLf4SzuuUxfusZADLINj+dE8clK1frKdmqiJNb1Es75fmI5oY6X2mxLVUciLLjxqw/xr72Dhy+lER6dGd02FQ=="],
157− "get-stream": ["get-stream@5.2.0", "", { "dependencies": { "pump": "^3.0.0" } }, "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA=="],
159− "glob": ["glob@11.1.0", "", { "dependencies": { "foreground-child": "^3.3.1", "jackspeak": "^4.1.1", "minimatch": "^10.1.1", "minipass": "^7.1.2", "package-json-from-dist": "^1.0.0", "path-scurry": "^2.0.0" }, "bin": { "glob": "dist/esm/bin.mjs" } }, "sha512-vuNwKSaKiqm7g0THUBu2x7ckSs3XJLXE+2ssL7/MfTGPLLcrJQ/4Uq1CjPTtO5cCIiRxqvN6Twy1qOwhL0Xjcw=="],
161− "graceful-fs": ["graceful-fs@4.2.11", "", {}, "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="],
163− "has-flag": ["has-flag@3.0.0", "", {}, "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw=="],
165− "http-cache-semantics": ["http-cache-semantics@4.2.0", "", {}, "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ=="],
167− "http-proxy-agent": ["http-proxy-agent@5.0.0", "", { "dependencies": { "@tootallnate/once": "2", "agent-base": "6", "debug": "4" } }, "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w=="],
169− "https-proxy-agent": ["https-proxy-agent@5.0.1", "", { "dependencies": { "agent-base": "6", "debug": "4" } }, "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA=="],
171− "humanize-ms": ["humanize-ms@1.2.1", "", { "dependencies": { "ms": "^2.0.0" } }, "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ=="],
173− "iconv-lite": ["iconv-lite@0.6.3", "", { "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" } }, "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw=="],
175− "iferr": ["iferr@0.1.5", "", {}, "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA=="],
177− "imurmurhash": ["imurmurhash@0.1.4", "", {}, "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA=="],
179− "indent-string": ["indent-string@4.0.0", "", {}, "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg=="],
181− "infer-owner": ["infer-owner@1.0.4", "", {}, "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A=="],
183− "inflight": ["inflight@1.0.6", "", { "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA=="],
185− "inherits": ["inherits@2.0.4", "", {}, "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="],
187− "ip-address": ["ip-address@10.1.0", "", {}, "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q=="],
189− "is-docker": ["is-docker@3.0.0", "", { "bin": { "is-docker": "cli.js" } }, "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ=="],
191− "is-fullwidth-code-point": ["is-fullwidth-code-point@3.0.0", "", {}, "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="],
193− "is-inside-container": ["is-inside-container@1.0.0", "", { "dependencies": { "is-docker": "^3.0.0" }, "bin": { "is-inside-container": "cli.js" } }, "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA=="],
195− "is-lambda": ["is-lambda@1.0.1", "", {}, "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ=="],
197− "is-number": ["is-number@7.0.0", "", {}, "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="],
199− "is-plain-obj": ["is-plain-obj@2.1.0", "", {}, "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA=="],
201− "is-stream": ["is-stream@2.0.1", "", {}, "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg=="],
203− "is-wsl": ["is-wsl@3.1.0", "", { "dependencies": { "is-inside-container": "^1.0.0" } }, "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw=="],
205− "isarray": ["isarray@1.0.0", "", {}, "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ=="],
207− "isexe": ["isexe@2.0.0", "", {}, "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="],
209− "jackspeak": ["jackspeak@4.1.1", "", { "dependencies": { "@isaacs/cliui": "^8.0.2" } }, "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ=="],
211− "jsonfile": ["jsonfile@6.2.0", "", { "dependencies": { "universalify": "^2.0.0" }, "optionalDependencies": { "graceful-fs": "^4.1.6" } }, "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg=="],
213− "linkify-it": ["linkify-it@5.0.0", "", { "dependencies": { "uc.micro": "^2.0.0" } }, "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ=="],
215− "log-symbols": ["log-symbols@3.0.0", "", { "dependencies": { "chalk": "^2.4.2" } }, "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ=="],
217− "log-update": ["log-update@4.0.0", "", { "dependencies": { "ansi-escapes": "^4.3.0", "cli-cursor": "^3.1.0", "slice-ansi": "^4.0.0", "wrap-ansi": "^6.2.0" } }, "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg=="],
219− "lru-cache": ["lru-cache@5.1.1", "", { "dependencies": { "yallist": "^3.0.2" } }, "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w=="],
221− "make-fetch-happen": ["make-fetch-happen@10.2.1", "", { "dependencies": { "agentkeepalive": "^4.2.1", "cacache": "^16.1.0", "http-cache-semantics": "^4.1.0", "http-proxy-agent": "^5.0.0", "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", "lru-cache": "^7.7.1", "minipass": "^3.1.6", "minipass-collect": "^1.0.2", "minipass-fetch": "^2.0.3", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", "promise-retry": "^2.0.1", "socks-proxy-agent": "^7.0.0", "ssri": "^9.0.0" } }, "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w=="],
223− "markdown-it": ["markdown-it@14.1.0", "", { "dependencies": { "argparse": "^2.0.1", "entities": "^4.4.0", "linkify-it": "^5.0.0", "mdurl": "^2.0.0", "punycode.js": "^2.3.1", "uc.micro": "^2.1.0" }, "bin": { "markdown-it": "bin/markdown-it.mjs" } }, "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg=="],
225− "mdurl": ["mdurl@2.0.0", "", {}, "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w=="],
227− "merge-stream": ["merge-stream@2.0.0", "", {}, "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="],
229− "micromatch": ["micromatch@4.0.8", "", { "dependencies": { "braces": "^3.0.3", "picomatch": "^2.3.1" } }, "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA=="],
231− "mimic-fn": ["mimic-fn@2.1.0", "", {}, "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="],
233− "minimatch": ["minimatch@10.1.1", "", { "dependencies": { "@isaacs/brace-expansion": "^5.0.0" } }, "sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ=="],
235− "minimist": ["minimist@1.2.8", "", {}, "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="],
237− "minipass": ["minipass@7.1.2", "", {}, "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="],
239− "minipass-collect": ["minipass-collect@1.0.2", "", { "dependencies": { "minipass": "^3.0.0" } }, "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA=="],
241− "minipass-fetch": ["minipass-fetch@2.1.2", "", { "dependencies": { "minipass": "^3.1.6", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" }, "optionalDependencies": { "encoding": "^0.1.13" } }, "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA=="],
243− "minipass-flush": ["minipass-flush@1.0.5", "", { "dependencies": { "minipass": "^3.0.0" } }, "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw=="],
245− "minipass-pipeline": ["minipass-pipeline@1.2.4", "", { "dependencies": { "minipass": "^3.0.0" } }, "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A=="],
247− "minipass-sized": ["minipass-sized@1.0.3", "", { "dependencies": { "minipass": "^3.0.0" } }, "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g=="],
249− "minizlib": ["minizlib@3.1.0", "", { "dependencies": { "minipass": "^7.1.2" } }, "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw=="],
251− "mississippi": ["mississippi@3.0.0", "", { "dependencies": { "concat-stream": "^1.5.0", "duplexify": "^3.4.2", "end-of-stream": "^1.1.0", "flush-write-stream": "^1.0.0", "from2": "^2.1.0", "parallel-transform": "^1.1.0", "pump": "^3.0.0", "pumpify": "^1.3.3", "stream-each": "^1.1.0", "through2": "^2.0.0" } }, "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA=="],
253− "mkdirp": ["mkdirp@0.5.6", "", { "dependencies": { "minimist": "^1.2.6" }, "bin": { "mkdirp": "bin/cmd.js" } }, "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw=="],
255− "move-concurrently": ["move-concurrently@1.0.1", "", { "dependencies": { "aproba": "^1.1.1", "copy-concurrently": "^1.0.0", "fs-write-stream-atomic": "^1.0.8", "mkdirp": "^0.5.1", "rimraf": "^2.5.4", "run-queue": "^1.0.3" } }, "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ=="],
257− "ms": ["ms@2.1.3", "", {}, "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="],
259− "nan": ["nan@2.25.0", "", {}, "sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g=="],
261− "negotiator": ["negotiator@0.6.4", "", {}, "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w=="],
263− "npm-run-path": ["npm-run-path@3.1.0", "", { "dependencies": { "path-key": "^3.0.0" } }, "sha512-Dbl4A/VfiVGLgQv29URL9xshU8XDY1GeLy+fsaZ1AA8JDSfjvr5P5+pzRbWqRSBxk6/DW7MIh8lTM/PaGnP2kg=="],
265− "once": ["once@1.4.0", "", { "dependencies": { "wrappy": "1" } }, "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w=="],
267− "onetime": ["onetime@5.1.2", "", { "dependencies": { "mimic-fn": "^2.1.0" } }, "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg=="],
269− "open": ["open@10.2.0", "", { "dependencies": { "default-browser": "^5.2.1", "define-lazy-prop": "^3.0.0", "is-inside-container": "^1.0.0", "wsl-utils": "^0.1.0" } }, "sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA=="],
271− "p-finally": ["p-finally@2.0.1", "", {}, "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw=="],
273− "p-map": ["p-map@4.0.0", "", { "dependencies": { "aggregate-error": "^3.0.0" } }, "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ=="],
275− "package-json-from-dist": ["package-json-from-dist@1.0.1", "", {}, "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw=="],
277− "parallel-transform": ["parallel-transform@1.2.0", "", { "dependencies": { "cyclist": "^1.0.1", "inherits": "^2.0.3", "readable-stream": "^2.1.5" } }, "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg=="],
279− "path-is-absolute": ["path-is-absolute@1.0.1", "", {}, "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="],
281− "path-key": ["path-key@3.1.1", "", {}, "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="],
283− "path-scurry": ["path-scurry@2.0.1", "", { "dependencies": { "lru-cache": "^11.0.0", "minipass": "^7.1.2" } }, "sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA=="],
285− "picomatch": ["picomatch@4.0.3", "", {}, "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q=="],
287− "process-nextick-args": ["process-nextick-args@2.0.1", "", {}, "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="],
289− "promise-inflight": ["promise-inflight@1.0.1", "", {}, "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g=="],
291− "promise-retry": ["promise-retry@2.0.1", "", { "dependencies": { "err-code": "^2.0.2", "retry": "^0.12.0" } }, "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g=="],
293− "pump": ["pump@3.0.3", "", { "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, "sha512-todwxLMY7/heScKmntwQG8CXVkWUOdYxIvY2s0VWAAMh/nd8SoYiRaKjlr7+iCs984f2P8zvrfWcDDYVb73NfA=="],
295− "pumpify": ["pumpify@1.5.1", "", { "dependencies": { "duplexify": "^3.6.0", "inherits": "^2.0.3", "pump": "^2.0.0" } }, "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ=="],
297− "punycode": ["punycode@2.3.1", "", {}, "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg=="],
299− "punycode.js": ["punycode.js@2.3.1", "", {}, "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA=="],
301− "purescript": ["purescript@0.15.15", "", { "dependencies": { "purescript-installer": "^0.3.5" }, "bin": { "purs": "purs.bin" } }, "sha512-4gwLNJa4KRiV+Wl+lyMY4MUFM6cSnIqvz7MvSTdLdvXJN2P9CrABnNbSspaokkNRFd9soWHBFDlYsAtRchqHtg=="],
303− "purescript-installer": ["purescript-installer@0.3.5", "", { "dependencies": { "byline": "^5.0.0", "cacache": "^11.3.2", "chalk": "^2.4.2", "env-paths": "^2.2.0", "execa": "^2.0.3", "filesize": "^4.1.2", "is-plain-obj": "^2.0.0", "log-symbols": "^3.0.0", "log-update": "^4.0.0", "make-fetch-happen": "^10.0.0", "minimist": "^1.2.0", "ms": "^2.1.2", "once": "^1.4.0", "rimraf": "^2.6.3", "semver": "^7.3.7", "tar": "^6.1.11", "which": "^1.3.1", "zen-observable": "^0.8.14" }, "bin": { "install-purescript": "index.js" } }, "sha512-w04BBvW4BSQlspLsZ9Bs5vtUBZqvC4bC+FizC5GUp2/rpmYvXJ0CTf79Q3MKo2A8p1ZjqbhCI+SqdTQ30UZUIQ=="],
305− "purs-backend-es": ["purs-backend-es@1.4.3", "", { "bin": { "purs-backend-es": "index.js" } }, "sha512-wLJwI/+xbS04fKHo7KyzJ4WQ/Lrj/0AIkEt7LbXzuE+L4Qzp8+BAcf1o+faMcWFVjtTtG8frM1p9qVenB5WxRg=="],
307− "purs-tidy": ["purs-tidy@0.11.1", "", { "bin": { "purs-tidy": "bin/index.js" } }, "sha512-5EAktcnu0mHuftnrpk1Iy7NiqKhxvE74HQRZB43i24Wabs/XclFvHSSE+amxmTr4QM/mcGx2B7ZyRprijnWqDg=="],
309− "queue-microtask": ["queue-microtask@1.2.3", "", {}, "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A=="],
311− "readable-stream": ["readable-stream@2.3.8", "", { "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", "isarray": "~1.0.0", "process-nextick-args": "~2.0.0", "safe-buffer": "~5.1.1", "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } }, "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA=="],
313− "readline-sync": ["readline-sync@1.4.10", "", {}, "sha512-gNva8/6UAe8QYepIQH/jQ2qn91Qj0B9sYjMBBs3QOB8F2CXcKgLxQaJRP76sWVRQt+QU+8fAkCbCvjjMFu7Ycw=="],
315− "restore-cursor": ["restore-cursor@3.1.0", "", { "dependencies": { "onetime": "^5.1.0", "signal-exit": "^3.0.2" } }, "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA=="],
317− "retry": ["retry@0.12.0", "", {}, "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow=="],
319− "reusify": ["reusify@1.1.0", "", {}, "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw=="],
321− "rimraf": ["rimraf@2.7.1", "", { "dependencies": { "glob": "^7.1.3" }, "bin": { "rimraf": "./bin.js" } }, "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w=="],
323− "run-applescript": ["run-applescript@7.1.0", "", {}, "sha512-DPe5pVFaAsinSaV6QjQ6gdiedWDcRCbUuiQfQa2wmWV7+xC9bGulGI8+TdRmoFkAPaBXk8CrAbnlY2ISniJ47Q=="],
325− "run-parallel": ["run-parallel@1.2.0", "", { "dependencies": { "queue-microtask": "^1.2.2" } }, "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA=="],
327− "run-queue": ["run-queue@1.0.3", "", { "dependencies": { "aproba": "^1.1.1" } }, "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg=="],
329− "safe-buffer": ["safe-buffer@5.1.2", "", {}, "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="],
331− "safer-buffer": ["safer-buffer@2.1.2", "", {}, "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="],
333− "semver": ["semver@7.7.3", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q=="],
335− "shebang-command": ["shebang-command@2.0.0", "", { "dependencies": { "shebang-regex": "^3.0.0" } }, "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA=="],
337− "shebang-regex": ["shebang-regex@3.0.0", "", {}, "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="],
339− "signal-exit": ["signal-exit@3.0.7", "", {}, "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ=="],
341− "slice-ansi": ["slice-ansi@4.0.0", "", { "dependencies": { "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", "is-fullwidth-code-point": "^3.0.0" } }, "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ=="],
343− "smart-buffer": ["smart-buffer@4.2.0", "", {}, "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg=="],
345− "socks": ["socks@2.8.7", "", { "dependencies": { "ip-address": "^10.0.1", "smart-buffer": "^4.2.0" } }, "sha512-HLpt+uLy/pxB+bum/9DzAgiKS8CX1EvbWxI4zlmgGCExImLdiad2iCwXT5Z4c9c3Eq8rP2318mPW2c+QbtjK8A=="],
347− "socks-proxy-agent": ["socks-proxy-agent@7.0.0", "", { "dependencies": { "agent-base": "^6.0.2", "debug": "^4.3.3", "socks": "^2.6.2" } }, "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww=="],
349− "spago": ["spago@1.0.3", "", { "dependencies": { "@nodelib/fs.walk": "^3.0.1", "env-paths": "^3.0.0", "fs-extra": "^11.3.0", "fuse.js": "^7.1.0", "glob": "^11.0.1", "markdown-it": "^14.1.0", "micromatch": "^4.0.8", "open": "^10.1.0", "picomatch": "^4.0.2", "punycode": "^2.3.1", "readline-sync": "^1.4.10", "semver": "^7.7.1", "spdx-expression-parse": "^4.0.0", "ssh2": "^1.16.0", "supports-color": "^10.0.0", "tar": "^7.4.3", "tmp": "^0.2.3", "xhr2": "^0.2.1", "yaml": "^2.7.0" }, "bin": { "spago": "bin/bundle.js" } }, "sha512-3JR6ExwLwaKIMYdc77e6fKqiBKXNentyVkcfhaQx4tGDnWjfHS2Td+zxJZ/28QaBx8s6RXfgFD1VjbALGtM89g=="],
351− "spdx-exceptions": ["spdx-exceptions@2.5.0", "", {}, "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w=="],
353− "spdx-expression-parse": ["spdx-expression-parse@4.0.0", "", { "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ=="],
355− "spdx-license-ids": ["spdx-license-ids@3.0.22", "", {}, "sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ=="],
357− "ssh2": ["ssh2@1.17.0", "", { "dependencies": { "asn1": "^0.2.6", "bcrypt-pbkdf": "^1.0.2" }, "optionalDependencies": { "cpu-features": "~0.0.10", "nan": "^2.23.0" } }, "sha512-wPldCk3asibAjQ/kziWQQt1Wh3PgDFpC0XpwclzKcdT1vql6KeYxf5LIt4nlFkUeR8WuphYMKqUA56X4rjbfgQ=="],
359− "ssri": ["ssri@6.0.2", "", { "dependencies": { "figgy-pudding": "^3.5.1" } }, "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q=="],
361− "stream-each": ["stream-each@1.2.3", "", { "dependencies": { "end-of-stream": "^1.1.0", "stream-shift": "^1.0.0" } }, "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw=="],
363− "stream-shift": ["stream-shift@1.0.3", "", {}, "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ=="],
365− "string-width": ["string-width@4.2.3", "", { "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" } }, "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g=="],
367− "string-width-cjs": ["string-width@4.2.3", "", { "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" } }, "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g=="],
369− "string_decoder": ["string_decoder@1.1.1", "", { "dependencies": { "safe-buffer": "~5.1.0" } }, "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg=="],
371− "strip-ansi": ["strip-ansi@6.0.1", "", { "dependencies": { "ansi-regex": "^5.0.1" } }, "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A=="],
373− "strip-ansi-cjs": ["strip-ansi@6.0.1", "", { "dependencies": { "ansi-regex": "^5.0.1" } }, "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A=="],
375− "strip-final-newline": ["strip-final-newline@2.0.0", "", {}, "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA=="],
377− "supports-color": ["supports-color@10.2.2", "", {}, "sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g=="],
379− "tar": ["tar@7.5.7", "", { "dependencies": { "@isaacs/fs-minipass": "^4.0.0", "chownr": "^3.0.0", "minipass": "^7.1.2", "minizlib": "^3.1.0", "yallist": "^5.0.0" } }, "sha512-fov56fJiRuThVFXD6o6/Q354S7pnWMJIVlDBYijsTNx6jKSE4pvrDTs6lUnmGvNyfJwFQQwWy3owKz1ucIhveQ=="],
381− "through2": ["through2@2.0.5", "", { "dependencies": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" } }, "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ=="],
383− "tmp": ["tmp@0.2.5", "", {}, "sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow=="],
385− "to-regex-range": ["to-regex-range@5.0.1", "", { "dependencies": { "is-number": "^7.0.0" } }, "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ=="],
387− "tweetnacl": ["tweetnacl@0.14.5", "", {}, "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA=="],
389− "type-fest": ["type-fest@0.21.3", "", {}, "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w=="],
391− "typedarray": ["typedarray@0.0.6", "", {}, "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA=="],
393− "uc.micro": ["uc.micro@2.1.0", "", {}, "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A=="],
395− "unique-filename": ["unique-filename@1.1.1", "", { "dependencies": { "unique-slug": "^2.0.0" } }, "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ=="],
397− "unique-slug": ["unique-slug@2.0.2", "", { "dependencies": { "imurmurhash": "^0.1.4" } }, "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w=="],
399− "universalify": ["universalify@2.0.1", "", {}, "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw=="],
401− "util-deprecate": ["util-deprecate@1.0.2", "", {}, "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="],
403− "which": ["which@1.3.1", "", { "dependencies": { "isexe": "^2.0.0" }, "bin": { "which": "./bin/which" } }, "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ=="],
405− "wrap-ansi": ["wrap-ansi@6.2.0", "", { "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" } }, "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA=="],
407− "wrap-ansi-cjs": ["wrap-ansi@7.0.0", "", { "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" } }, "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q=="],
409− "wrappy": ["wrappy@1.0.2", "", {}, "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="],
411− "wsl-utils": ["wsl-utils@0.1.0", "", { "dependencies": { "is-wsl": "^3.1.0" } }, "sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw=="],
413− "xhr2": ["xhr2@0.2.1", "", {}, "sha512-sID0rrVCqkVNUn8t6xuv9+6FViXjUVXq8H5rWOH2rz9fDNQEd4g0EA2XlcEdJXRz5BMEn4O1pJFdT+z4YHhoWw=="],
415− "xtend": ["xtend@4.0.2", "", {}, "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ=="],
417− "y18n": ["y18n@4.0.3", "", {}, "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ=="],
419− "yallist": ["yallist@5.0.0", "", {}, "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw=="],
421− "yaml": ["yaml@2.8.2", "", { "bin": { "yaml": "bin.mjs" } }, "sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A=="],
423− "zen-observable": ["zen-observable@0.8.15", "", {}, "sha512-PQ2PC7R9rslx84ndNBZB/Dkv8V8fZEpk83RLgXtYd0fwUgEjseMn1Dgajh2x6S8QbZAFa9p2qVCEuYZNgve0dQ=="],
425− "@isaacs/cliui/string-width": ["string-width@5.1.2", "", { "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", "strip-ansi": "^7.0.1" } }, "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA=="],
427− "@isaacs/cliui/strip-ansi": ["strip-ansi@7.1.2", "", { "dependencies": { "ansi-regex": "^6.0.1" } }, "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA=="],
429− "@isaacs/cliui/wrap-ansi": ["wrap-ansi@8.1.0", "", { "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", "strip-ansi": "^7.0.1" } }, "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ=="],
431− "@npmcli/move-file/mkdirp": ["mkdirp@1.0.4", "", { "bin": { "mkdirp": "bin/cmd.js" } }, "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="],
433− "@npmcli/move-file/rimraf": ["rimraf@3.0.2", "", { "dependencies": { "glob": "^7.1.3" }, "bin": { "rimraf": "bin.js" } }, "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA=="],
435− "cacache/chownr": ["chownr@1.1.4", "", {}, "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg=="],
437− "cacache/glob": ["glob@7.2.3", "", { "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } }, "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q=="],
439− "chalk/supports-color": ["supports-color@5.5.0", "", { "dependencies": { "has-flag": "^3.0.0" } }, "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow=="],
441− "cross-spawn/which": ["which@2.0.2", "", { "dependencies": { "isexe": "^2.0.0" }, "bin": { "node-which": "./bin/node-which" } }, "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="],
443− "foreground-child/signal-exit": ["signal-exit@4.1.0", "", {}, "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw=="],
445− "fs-minipass/minipass": ["minipass@3.3.6", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="],
447− "lru-cache/yallist": ["yallist@3.1.1", "", {}, "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="],
449− "make-fetch-happen/cacache": ["cacache@16.1.3", "", { "dependencies": { "@npmcli/fs": "^2.1.0", "@npmcli/move-file": "^2.0.0", "chownr": "^2.0.0", "fs-minipass": "^2.1.0", "glob": "^8.0.1", "infer-owner": "^1.0.4", "lru-cache": "^7.7.1", "minipass": "^3.1.6", "minipass-collect": "^1.0.2", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "mkdirp": "^1.0.4", "p-map": "^4.0.0", "promise-inflight": "^1.0.1", "rimraf": "^3.0.2", "ssri": "^9.0.0", "tar": "^6.1.11", "unique-filename": "^2.0.0" } }, "sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ=="],
451− "make-fetch-happen/lru-cache": ["lru-cache@7.18.3", "", {}, "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA=="],
453− "make-fetch-happen/minipass": ["minipass@3.3.6", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="],
455− "make-fetch-happen/ssri": ["ssri@9.0.1", "", { "dependencies": { "minipass": "^3.1.1" } }, "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q=="],
457− "micromatch/picomatch": ["picomatch@2.3.1", "", {}, "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="],
459− "minipass-collect/minipass": ["minipass@3.3.6", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="],
461− "minipass-fetch/minipass": ["minipass@3.3.6", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="],
463− "minipass-fetch/minizlib": ["minizlib@2.1.2", "", { "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" } }, "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg=="],
465− "minipass-flush/minipass": ["minipass@3.3.6", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="],
467− "minipass-pipeline/minipass": ["minipass@3.3.6", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="],
469− "minipass-sized/minipass": ["minipass@3.3.6", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="],
471− "path-scurry/lru-cache": ["lru-cache@11.2.5", "", {}, "sha512-vFrFJkWtJvJnD5hg+hJvVE8Lh/TcMzKnTgCWmtBipwI5yLX/iX+5UB2tfuyODF5E7k9xEzMdYgGqaSb1c0c5Yw=="],
473− "pumpify/pump": ["pump@2.0.1", "", { "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA=="],
475− "purescript-installer/env-paths": ["env-paths@2.2.1", "", {}, "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A=="],
477− "purescript-installer/tar": ["tar@6.2.1", "", { "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", "minipass": "^5.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" } }, "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A=="],
479− "rimraf/glob": ["glob@7.2.3", "", { "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } }, "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q=="],
481− "slice-ansi/ansi-styles": ["ansi-styles@4.3.0", "", { "dependencies": { "color-convert": "^2.0.1" } }, "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="],
483− "wrap-ansi/ansi-styles": ["ansi-styles@4.3.0", "", { "dependencies": { "color-convert": "^2.0.1" } }, "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="],
485− "wrap-ansi-cjs/ansi-styles": ["ansi-styles@4.3.0", "", { "dependencies": { "color-convert": "^2.0.1" } }, "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="],
487− "@isaacs/cliui/string-width/emoji-regex": ["emoji-regex@9.2.2", "", {}, "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="],
489− "@isaacs/cliui/strip-ansi/ansi-regex": ["ansi-regex@6.2.2", "", {}, "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg=="],
491− "@isaacs/cliui/wrap-ansi/ansi-styles": ["ansi-styles@6.2.3", "", {}, "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg=="],
493− "@npmcli/move-file/rimraf/glob": ["glob@7.2.3", "", { "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } }, "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q=="],
495− "cacache/glob/minimatch": ["minimatch@3.1.2", "", { "dependencies": { "brace-expansion": "^1.1.7" } }, "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw=="],
497− "fs-minipass/minipass/yallist": ["yallist@4.0.0", "", {}, "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="],
499− "make-fetch-happen/cacache/chownr": ["chownr@2.0.0", "", {}, "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="],
501− "make-fetch-happen/cacache/glob": ["glob@8.1.0", "", { "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^5.0.1", "once": "^1.3.0" } }, "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ=="],
503− "make-fetch-happen/cacache/mkdirp": ["mkdirp@1.0.4", "", { "bin": { "mkdirp": "bin/cmd.js" } }, "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="],
505− "make-fetch-happen/cacache/rimraf": ["rimraf@3.0.2", "", { "dependencies": { "glob": "^7.1.3" }, "bin": { "rimraf": "bin.js" } }, "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA=="],
507− "make-fetch-happen/cacache/tar": ["tar@6.2.1", "", { "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", "minipass": "^5.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" } }, "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A=="],
509− "make-fetch-happen/cacache/unique-filename": ["unique-filename@2.0.1", "", { "dependencies": { "unique-slug": "^3.0.0" } }, "sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A=="],
511− "make-fetch-happen/minipass/yallist": ["yallist@4.0.0", "", {}, "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="],
513− "minipass-collect/minipass/yallist": ["yallist@4.0.0", "", {}, "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="],
515− "minipass-fetch/minipass/yallist": ["yallist@4.0.0", "", {}, "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="],
517− "minipass-fetch/minizlib/yallist": ["yallist@4.0.0", "", {}, "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="],
519− "minipass-flush/minipass/yallist": ["yallist@4.0.0", "", {}, "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="],
521− "minipass-pipeline/minipass/yallist": ["yallist@4.0.0", "", {}, "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="],
523− "minipass-sized/minipass/yallist": ["yallist@4.0.0", "", {}, "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="],
525− "purescript-installer/tar/chownr": ["chownr@2.0.0", "", {}, "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="],
527− "purescript-installer/tar/minipass": ["minipass@5.0.0", "", {}, "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ=="],
529− "purescript-installer/tar/minizlib": ["minizlib@2.1.2", "", { "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" } }, "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg=="],
531− "purescript-installer/tar/mkdirp": ["mkdirp@1.0.4", "", { "bin": { "mkdirp": "bin/cmd.js" } }, "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw=="],
533− "purescript-installer/tar/yallist": ["yallist@4.0.0", "", {}, "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="],
535− "rimraf/glob/minimatch": ["minimatch@3.1.2", "", { "dependencies": { "brace-expansion": "^1.1.7" } }, "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw=="],
537− "slice-ansi/ansi-styles/color-convert": ["color-convert@2.0.1", "", { "dependencies": { "color-name": "~1.1.4" } }, "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="],
539− "wrap-ansi-cjs/ansi-styles/color-convert": ["color-convert@2.0.1", "", { "dependencies": { "color-name": "~1.1.4" } }, "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="],
541− "wrap-ansi/ansi-styles/color-convert": ["color-convert@2.0.1", "", { "dependencies": { "color-name": "~1.1.4" } }, "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="],
543− "@npmcli/move-file/rimraf/glob/minimatch": ["minimatch@3.1.2", "", { "dependencies": { "brace-expansion": "^1.1.7" } }, "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw=="],
545− "make-fetch-happen/cacache/glob/minimatch": ["minimatch@5.1.6", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g=="],
547− "make-fetch-happen/cacache/rimraf/glob": ["glob@7.2.3", "", { "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } }, "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q=="],
549− "make-fetch-happen/cacache/tar/minipass": ["minipass@5.0.0", "", {}, "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ=="],
551− "make-fetch-happen/cacache/tar/minizlib": ["minizlib@2.1.2", "", { "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" } }, "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg=="],
553− "make-fetch-happen/cacache/tar/yallist": ["yallist@4.0.0", "", {}, "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="],
555− "make-fetch-happen/cacache/unique-filename/unique-slug": ["unique-slug@3.0.0", "", { "dependencies": { "imurmurhash": "^0.1.4" } }, "sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w=="],
557− "purescript-installer/tar/minizlib/minipass": ["minipass@3.3.6", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="],
559− "slice-ansi/ansi-styles/color-convert/color-name": ["color-name@1.1.4", "", {}, "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="],
561− "wrap-ansi-cjs/ansi-styles/color-convert/color-name": ["color-name@1.1.4", "", {}, "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="],
563− "wrap-ansi/ansi-styles/color-convert/color-name": ["color-name@1.1.4", "", {}, "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="],
565− "make-fetch-happen/cacache/glob/minimatch/brace-expansion": ["brace-expansion@2.0.2", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ=="],
567− "make-fetch-happen/cacache/rimraf/glob/minimatch": ["minimatch@3.1.2", "", { "dependencies": { "brace-expansion": "^1.1.7" } }, "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw=="],
569− "make-fetch-happen/cacache/tar/minizlib/minipass": ["minipass@3.3.6", "", { "dependencies": { "yallist": "^4.0.0" } }, "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw=="],
generated-docs/html/Ansi.Codes.htmldeleted−1373
@@ -1,1373 +0,0 @@
2−<html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>PureScript: Ansi.Codes</title><link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:300,400,400i,700,700i" type="text/css" rel="stylesheet"><style type="text/css">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
5− * 1. Set default font family to sans-serif.
6− * 2. Prevent iOS text size adjust after orientation change, without disabling
11− font-family: sans-serif; /* 1 */
12− -ms-text-size-adjust: 100%; /* 2 */
13− -webkit-text-size-adjust: 100%; /* 2 */
17− * Remove default margin.
24−/* HTML5 display definitions
25− ========================================================================== */
28− * Correct `block` display not defined for any HTML5 element in IE 8/9.
29− * Correct `block` display not defined for `details` or `summary` in IE 10/11
31− * Correct `block` display not defined for `main` in IE 11.
51− * 1. Correct `inline-block` display not defined in IE 8/9.
52− * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
59− display: inline-block; /* 1 */
60− vertical-align: baseline; /* 2 */
64− * Prevent modern browsers from displaying `audio` without controls.
65− * Remove excess height in iOS 5 devices.
68−audio:not([controls]) {
74− * Address `[hidden]` styling not present in IE 8/9/10.
75− * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
84− ========================================================================== */
87− * Remove the gray background color from active links in IE 10.
91− background-color: transparent;
95− * Improve readability when focused and also mouse hovered in all browsers.
103−/* Text-level semantics
104− ========================================================================== */
107− * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
111− border-bottom: 1px dotted;
115− * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
124− * Address styling not present in Safari and Chrome.
132− * Address variable `h1` font-size and margin within `section` and `article`
133− * contexts in Firefox 4+, Safari, and Chrome.
142− * Address styling not present in IE 8/9.
151− * Address inconsistent and variable font size in all browsers.
159− * Prevent `sub` and `sup` affecting `line-height` in all browsers.
167− vertical-align: baseline;
179− ========================================================================== */
182− * Remove border when inside `a` element in IE 8/9/10.
190− * Correct overflow not hidden in IE 9/10/11.
198− ========================================================================== */
201− * Address margin not present in IE 8/9 and Safari.
209− * Address differences between Firefox and other browsers.
213− -moz-box-sizing: content-box;
214− box-sizing: content-box;
219− * Contain overflow in all browsers.
227− * Address odd `em`-unit font size rendering in all browsers.
234− font-family: monospace, monospace;
239− ========================================================================== */
242− * Known limitation: by default, Chrome and Safari on OS X allow very limited
243− * styling of `select`, unless a `border` property is set.
247− * 1. Correct color not being inherited.
248− * Known issue: affects color of disabled elements.
249− * 2. Correct font properties not being inherited.
250− * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
258− color: inherit; /* 1 */
259− font: inherit; /* 2 */
264− * Address `overflow` set to `hidden` in IE 8/9/10/11.
272− * Address inconsistent `text-transform` inheritance for `button` and `select`.
273− * All other form control elements do not inherit `text-transform` values.
274− * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
275− * Correct `select` style inheritance in Firefox.
280− text-transform: none;
284− * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
285− * and `video` controls.
286− * 2. Correct inability to style clickable `input` types in iOS.
287− * 3. Improve usability and consistency of cursor style between image-type
288− * `input` and others.
292−html input[type="button"], /* 1 */
294−input[type="submit"] {
295− -webkit-appearance: button; /* 2 */
296− cursor: pointer; /* 3 */
300− * Re-set default cursor for disabled elements.
304−html input[disabled] {
309− * Remove inner padding and border in Firefox 4+.
312−button::-moz-focus-inner,
313−input::-moz-focus-inner {
319− * Address Firefox 4+ setting `line-height` on `input` using `!important` in
320− * the UA stylesheet.
324− line-height: normal;
328− * It's recommended that you don't attempt to style these elements.
329− * Firefox's implementation doesn't respect box-sizing, padding, or width.
331− * 1. Address box sizing set to `content-box` in IE 8/9/10.
332− * 2. Remove excess padding in IE 8/9/10.
335−input[type="checkbox"],
336−input[type="radio"] {
337− box-sizing: border-box; /* 1 */
342− * Fix the cursor style for Chrome's increment/decrement buttons. For certain
343− * `font-size` values of the `input`, it causes the cursor style of the
344− * decrement button to change from `default` to `text`.
347−input[type="number"]::-webkit-inner-spin-button,
348−input[type="number"]::-webkit-outer-spin-button {
353− * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
354− * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
355− * (include `-moz` to future-proof).
358−input[type="search"] {
359− -webkit-appearance: textfield; /* 1 */
360− -moz-box-sizing: content-box;
361− -webkit-box-sizing: content-box; /* 2 */
362− box-sizing: content-box;
366− * Remove inner padding and search cancel button in Safari and Chrome on OS X.
367− * Safari (but not Chrome) clips the cancel button when the search input has
368− * padding (and `textfield` appearance).
371−input[type="search"]::-webkit-search-cancel-button,
372−input[type="search"]::-webkit-search-decoration {
373− -webkit-appearance: none;
377− * Define consistent border, margin, and padding.
381− border: 1px solid #c0c0c0;
383− padding: 0.35em 0.625em 0.75em;
387− * 1. Correct `color` not being inherited in IE 8/9/10/11.
388− * 2. Remove padding so people aren't caught out if they zero out fieldsets.
397− * Remove default vertical scrollbar in IE 8/9/10/11.
405− * Don't inherit the `font-weight` (applied by a rule above).
406− * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
414− ========================================================================== */
417− * Remove most spacing between table cells.
421− border-collapse: collapse;
429−</style><style type="text/css">/** ************************************************************************* *
430− ** CSS for HTML docs (e.g. Pursuit)
434− ** This CSS file is structured into several sections, from general to
435− ** specific, and (mostly) alphabetically within the sections.
437− ** Several global element styles are used. This is not encouraged and should
438− ** be kept to a minimum. If you want to add new styles you'll most likely
439− ** want to add a new CSS component. See the Components section for examples.
441− ** CSS components use three simple naming ideas from the BEM system:
442− ** - Block: `.my-component`
443− ** - Element: `.my-component__item`
444− ** - Modifier: `.my-component.my-component--highlighted`
447− ** <div .my-component>
448− ** <div .my-component__item>
449− ** <div .my-component__item>
451− ** <div .my-component.my-component--highlighted>
452− ** <div .my-component__item>
453− ** <div .my-component__item>
455− ** Components can be nested.
460− ** Typographic choices for sizes, line-heights and margins are based on a
461− ** musical major third scale (4:5). This gives us a way to find numbers
462− ** and relationships between them that are perceived as harmonic.
464− ** To make use of this modular scale, use a ratio of the form
466− ** where n ∈ ℤ, -6 ≤ n ≤ 8.
470− ** This CSS is generated by less. To compile it:
472− ** npm install [-g] less
473− ** lessc app/static/pursuit.less > app/static/pursuit.css
475− ** ************************************************************************* */
476−/* Section: Variables
477− * ========================================================================== */
478−/* Section: Document Styles
479− * ========================================================================== */
481− color-scheme: light dark;
484− box-sizing: border-box;
485− /* This overflow rule prevents everything from shifting slightly to the side
486− when moving from a page which isn't large enough to generate a scrollbar
493− box-sizing: inherit;
496− background-color: #ffffff;
498− font-family: "Roboto", sans-serif;
502−@media (prefers-color-scheme: dark) {
504− background-color: #141417;
508−@media (min-width: 38em) {
513−/* Section: Utility Classes
514− * ========================================================================== */
526−/* Content hidden like this will still be read by a screen reader */
536− * ========================================================================== */
543− padding-right: 20px;
551− margin-bottom: 3.08em;
554− margin-bottom: 2.44em;
556−@media (min-width: 52em) {
559− padding-right: 30px;
572−@media (min-width: 66em) {
578− * Based on http://www.lwis.net/journal/2008/02/08/pure-css-sticky-footer/
579− * Except we don't support IE6
580− * -------------------------------------------------------------------------- */
585−.everything-except-footer {
587− padding-bottom: 3em;
595− background-color: #1d222d;
598−@media (prefers-color-scheme: dark) {
600− background-color: #1d222d;
607−/* Section: Element Styles
609− * Have as few of these as possible and keep them general, because they will
610− * influence every component hereafter.
611− * ========================================================================== */
613− background-color: #f1f5f9;
615−@media (prefers-color-scheme: dark) {
617− background-color: #232327;
623− text-decoration: none;
626−@media (prefers-color-scheme: dark) {
634− text-decoration: none;
636−@media (prefers-color-scheme: dark) {
643− background-color: #f1f5f9;
646− font-family: "Roboto Mono", monospace;
649−@media (prefers-color-scheme: dark) {
652− background-color: #232327;
658− background-color: #dfe8f1;
660−@media (prefers-color-scheme: dark) {
663− background-color: #2f2f34;
669− white-space: pre-wrap;
670− word-wrap: break-word;
674− letter-spacing: -0.2em;
678− font-weight: normal;
682− letter-spacing: 0.33em;
687−@media (prefers-color-scheme: dark) {
695− padding: 1em 1.25rem;
696− /* Using rem here to align with lists etc. */
702− background-color: transparent;
709− line-height: inherit;
721− letter-spacing: -0.5px;
723− margin-top: 1.563rem;
724− margin-bottom: 1.25rem;
726−@media (min-width: 52em) {
729− margin-top: 5.96rem;
734− font-weight: normal;
736− margin-top: 3.052rem;
737− margin-bottom: 1rem;
741− font-weight: normal;
743− margin-top: 2.441rem;
744− margin-bottom: 1rem;
748− font-weight: normal;
749− margin-top: 2.441rem;
750− margin-bottom: 1rem;
763− background-color: #cccccc;
765−@media (prefers-color-scheme: dark) {
767− background-color: #43434e;
777− margin-bottom: 1rem;
780− border-bottom: 1px solid #cccccc;
781− border-collapse: collapse;
784− margin-bottom: 1rem;
787−@media (prefers-color-scheme: dark) {
789− border-bottom-color: #43434e;
795− padding: 0.41em 0.51em;
798− border-top: 1px solid #cccccc;
800−@media (prefers-color-scheme: dark) {
802− border-top-color: #43434e;
814− list-style-type: none;
816− margin-bottom: 1rem;
821− padding-left: 1.25em;
827− display: inline-block;
828− margin-left: -1.25em;
831−@media (prefers-color-scheme: dark) {
836−/* Tying this tightly to ul at the moment because it's a slight variation thereof */
837−ul.ul--search li::before {
840− transform: rotate(-45deg);
844− margin-bottom: 1rem;
845− padding-left: 1.25em;
851−/* Section: Components
852− * ========================================================================== */
854− * -------------------------------------------------------------------------- */
858− display: inline-block;
859− background-color: #000000;
860− border-radius: 1.3em;
869−@media (prefers-color-scheme: dark) {
871− background-color: #dedede;
875−.badge.badge--package {
876− background-color: #c4953a;
877− letter-spacing: -0.1em;
879−@media (prefers-color-scheme: dark) {
880− .badge.badge--package {
881− background-color: #d8ac55;
884−.badge.badge--module {
885− background-color: #75B134;
887−/* Component: Declarations
888− * -------------------------------------------------------------------------- */
891− padding-bottom: 0.328em;
892− margin-bottom: 0.262em;
902−.decl__anchor:visited {
907−@media (prefers-color-scheme: dark) {
909− .decl__anchor:visited {
913−.decl__anchor:hover {
916−@media (prefers-color-scheme: dark) {
917− .decl__anchor:hover {
922− background-color: transparent;
924− border-top: 1px solid #cccccc;
925− border-bottom: 1px solid #cccccc;
928−@media (prefers-color-scheme: dark) {
930− border-top-color: #43434e;
931− border-bottom-color: #43434e;
934−.decl__signature code {
937− padding-left: 2.441em;
938− text-indent: -2.441em;
939− white-space: normal;
942− font-family: "Roboto", sans-serif;
944− font-weight: normal;
946−/* See https://stackoverflow.com/a/32162038
947− Content licensed under CC BY-SA 3.0
949−.decl__role_hover[title] {
950− /* Remove line that appears under abbr element */
951− border-bottom: none;
952− text-decoration: none;
953− /* Ensure cursor doesn't change to question mark */
956−.decl__role_nominal::after {
959−.decl__role_phantom::after {
963− border-bottom: 1px solid #cccccc;
965−@media (prefers-color-scheme: dark) {
967− border-bottom-color: #43434e;
970−:target .decl__signature,
971−:target .decl__signature code {
972− /* We want the background to be transparent, even when the parent is a target */
973− background-color: transparent;
975−.decl__body .keyword,
976−.decl__body .syntax {
979−@media (prefers-color-scheme: dark) {
980− .decl__body .keyword,
981− .decl__body .syntax {
985−.decl__child_comments {
987− margin-bottom: 1rem;
989−/* Component: Dependency Link
990− * -------------------------------------------------------------------------- */
992− /* Currently no root styles, but keep the class as a namespace */
995− display: inline-block;
996− margin-right: 0.41em;
1000− display: inline-block;
1004−@media (prefers-color-scheme: dark) {
1005− .deplink__version {
1009−/* Component: Grouped List
1010− * -------------------------------------------------------------------------- */
1012− border-top: 1px solid #cccccc;
1013− margin: 0 0 2.44em 0;
1015−@media (prefers-color-scheme: dark) {
1017− border-top-color: #43434e;
1020−.grouped-list__title {
1024− letter-spacing: 1px;
1025− margin: 0.8em 0 -0.1em 0;
1026− text-transform: uppercase;
1028−@media (prefers-color-scheme: dark) {
1029− .grouped-list__title {
1030− border-top-color: #a0a0a0;
1033−.grouped-list__item {
1036−/* Component: Message
1037− * -------------------------------------------------------------------------- */
1040− border-radius: 5px;
1041− padding: 1em !important;
1043−.message.message--error {
1044− background-color: #fff0f0;
1045− border-color: #c85050;
1047−@media (prefers-color-scheme: dark) {
1048− .message.message--error {
1049− background-color: #6b0e0e;
1050− border-color: #c85050;
1053−.message.message--not-available {
1054− background-color: #f0f096;
1055− border-color: #e3e33d;
1057−@media (prefers-color-scheme: dark) {
1058− .message.message--not-available {
1059− background-color: #56560b;
1060− border-color: #b0b017;
1063−/* Component: Multi Col
1064− * Multiple columns side by side
1065− * -------------------------------------------------------------------------- */
1067− margin-bottom: 2.44em;
1071− padding-right: 1em;
1072− position: relative;
1075−@media (min-width: 38em) and (max-width: 51.999999em) {
1080− .multi-col__col:nth-child(2n+3) {
1084−@media (min-width: 52em) {
1089− .multi-col__col:nth-child(3n+4) {
1093−/* Component: Page Title
1094− * -------------------------------------------------------------------------- */
1096− margin: 4.77em 0 1.56em;
1097− padding-bottom: 1.25em;
1098− position: relative;
1100−.page-title__title {
1101− margin: 0 0 0 -0.05em;
1102− /* Visually align on left edge */
1104−.page-title__label {
1105− position: relative;
1109− letter-spacing: 1px;
1110− margin-bottom: -0.8em;
1111− text-transform: uppercase;
1114−@media (prefers-color-scheme: dark) {
1115− .page-title__label {
1119−/* Component: Top Banner
1120− * -------------------------------------------------------------------------- */
1122− background-color: #1d222d;
1124− font-weight: normal;
1126−@media (prefers-color-scheme: dark) {
1128− background-color: #1d222d;
1133−.top-banner__logo:visited {
1141−@media (prefers-color-scheme: dark) {
1143− .top-banner__logo:visited {
1147−.top-banner__logo:hover {
1149− text-decoration: none;
1152− margin-bottom: 1.25em;
1154−.top-banner__form input {
1155− border: 1px solid #1d222d;
1156− border-radius: 3px;
1157− background-color: #ffffff;
1161− padding: 0.21em 0.512em;
1164−@media (prefers-color-scheme: dark) {
1165− .top-banner__form input {
1166− border-color: #1d222d;
1167− background-color: #141417;
1171−.top-banner__actions {
1175−.top-banner__actions__item {
1176− display: inline-block;
1179− padding-left: 1.25em;
1181−.top-banner__actions__item:first-child {
1184−.top-banner__actions__item a,
1185−.top-banner__actions__item a:visited {
1188−@media (prefers-color-scheme: dark) {
1189− .top-banner__actions__item a,
1190− .top-banner__actions__item a:visited {
1194−.top-banner__actions__item a:hover {
1197−@media (prefers-color-scheme: dark) {
1198− .top-banner__actions__item a:hover {
1202−@media (min-width: 38em) {
1203− .top-banner__logo {
1207− .top-banner__form {
1213− .top-banner__actions {
1218−/* Component: Search Results
1219− * -------------------------------------------------------------------------- */
1220−.result.result--empty {
1225− margin-bottom: 0.2rem;
1228− margin-left: -0.1em;
1230−.result__body > *:first-child {
1231− margin-top: 0!important;
1233−.result__body > *:last-child {
1234− margin-bottom: 0!important;
1236−.result__signature {
1237− background-color: transparent;
1239− border-top: 1px solid #cccccc;
1240− border-bottom: 1px solid #cccccc;
1241− padding: 0.328em 0;
1243−@media (prefers-color-scheme: dark) {
1244− .result__signature {
1245− border-top-color: #43434e;
1246− border-bottom-color: #43434e;
1249−.result__signature code {
1251− padding-left: 2.441em;
1252− text-indent: -2.441em;
1253− white-space: normal;
1256− margin-top: 0.2rem;
1258−.result__actions__item {
1261−.result__actions__item + .result__actions__item {
1262− margin-left: 0.65em;
1264−/* Component: Version Selector
1265− * -------------------------------------------------------------------------- */
1267− margin-bottom: 0.8em;
1269−@media (min-width: 38em) {
1270− .version-selector {
1271− position: absolute;
1278− * These styles should be cleaned up
1279− * ========================================================================== */
1280−/* Help paragraphs */
1285− /* FIXME: target with class */
1288−/* Section: Markdown
1289− * Github rendered README
1290− * ========================================================================== */
1293− Useful for narrow screens, such as mobiles. Documentation often contains URLs
1294− which would otherwise force the page to become wider, and force creation of
1295− horizontal scrollbars. Yuck.
1297− word-wrap: break-word;
1299−.markdown-body > *:first-child {
1300− margin-top: 0 !important;
1302−.markdown-body > *:last-child {
1303− margin-bottom: 0 !important;
1305−.markdown-body a:not([href]) {
1307− text-decoration: none;
1309−.markdown-body blockquote {
1313− border-left: 0.25em solid #ddd;
1315−@media (prefers-color-scheme: dark) {
1316− .markdown-body blockquote {
1317− border-left-color: #444;
1320−.markdown-body blockquote > :first-child {
1323−.markdown-body blockquote > :last-child {
1326−.markdown-body .anchor {
1327− /* We hide the anchor because the link doesn't point to a valid location */
1330−.markdown-body .pl-k {
1334−@media (prefers-color-scheme: dark) {
1335− .markdown-body .pl-k {
1339−.markdown-body .pl-c1,
1340−.markdown-body .pl-en {
1341− /* Not really sure what this is */
1344−.markdown-body .pl-s {
1345− /* String literals */
1348−.markdown-body .pl-cce {
1349− /* String literal escape sequences */
1352−.markdown-body .pl-smi {
1353− /* type variables? */
1356−</style></head><body><div class="everything-except-footer"><div class="top-banner clearfix"><div class="container clearfix"><div style="float: left; font-size: 2.44em; font-weight: 300; line-height: 90px; margin: 0">PureScript API documentation</div><div class="top-banner__actions"><div class="top-banner__actions__item"><a href="index.html">Index</a></div></div></div></div><main class="container clearfix" role="main"><div class="page-title clearfix"><div class="page-title__label">Module</div><h1 class="page-title__title">Ansi.Codes</h1></div><div class="col col--main"><p>This module defines a data type representing ANSI escape codes, as well as
1357−functions for serialising them as Strings.</p>
1358−<div class="decl" id="v:prefix"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:prefix">#</a><span>prefix</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Codes.html#v:prefix" title="Ansi.Codes.prefix"><span class="ident">prefix</span></a> <span class="syntax">::</span> <a href="Prim.html#t:String" title="Prim.String"><span class="ctor">String</span></a></code></pre><p>The prefix for all escape codes.</p>
1359−</div></div><div class="decl" id="v:colorSuffix"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:colorSuffix">#</a><span>colorSuffix</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Codes.html#v:colorSuffix" title="Ansi.Codes.colorSuffix"><span class="ident">colorSuffix</span></a> <span class="syntax">::</span> <a href="Prim.html#t:String" title="Prim.String"><span class="ctor">String</span></a></code></pre><p>The suffix for escape codes; note that this is only required for colors.</p>
1360−</div></div><div class="decl" id="t:EscapeCode"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:EscapeCode">#</a><span>EscapeCode</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">data</span> <a href="Ansi.Codes.html#t:EscapeCode" title="Ansi.Codes.EscapeCode"><span class="ctor">EscapeCode</span></a></code></pre><p>An ANSI escape code. Not all sequences are implemented.
1361−See: <a href="https://en.wikipedia.org/wiki/ANSI_escape_code">https://en.wikipedia.org/wiki/ANSI_escape_code</a>.</p>
1362−<h4>Constructors</h4><ul><li id="v:Up"><code><a href="Ansi.Codes.html#v:Up" title="Ansi.Codes.Up"><span class="ctor">Up</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></li><li id="v:Down"><code><a href="Ansi.Codes.html#v:Down" title="Ansi.Codes.Down"><span class="ctor">Down</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></li><li id="v:Forward"><code><a href="Ansi.Codes.html#v:Forward" title="Ansi.Codes.Forward"><span class="ctor">Forward</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></li><li id="v:Back"><code><a href="Ansi.Codes.html#v:Back" title="Ansi.Codes.Back"><span class="ctor">Back</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></li><li id="v:NextLine"><code><a href="Ansi.Codes.html#v:NextLine" title="Ansi.Codes.NextLine"><span class="ctor">NextLine</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></li><li id="v:PreviousLine"><code><a href="Ansi.Codes.html#v:PreviousLine" title="Ansi.Codes.PreviousLine"><span class="ctor">PreviousLine</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></li><li id="v:HorizontalAbsolute"><code><a href="Ansi.Codes.html#v:HorizontalAbsolute" title="Ansi.Codes.HorizontalAbsolute"><span class="ctor">HorizontalAbsolute</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></li><li id="v:Position"><code><a href="Ansi.Codes.html#v:Position" title="Ansi.Codes.Position"><span class="ctor">Position</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></li><li id="v:EraseData"><code><a href="Ansi.Codes.html#v:EraseData" title="Ansi.Codes.EraseData"><span class="ctor">EraseData</span></a> <a href="Ansi.Codes.html#t:EraseParam" title="Ansi.Codes.EraseParam"><span class="ctor">EraseParam</span></a></code></li><li id="v:EraseLine"><code><a href="Ansi.Codes.html#v:EraseLine" title="Ansi.Codes.EraseLine"><span class="ctor">EraseLine</span></a> <a href="Ansi.Codes.html#t:EraseParam" title="Ansi.Codes.EraseParam"><span class="ctor">EraseParam</span></a></code></li><li id="v:ScrollUp"><code><a href="Ansi.Codes.html#v:ScrollUp" title="Ansi.Codes.ScrollUp"><span class="ctor">ScrollUp</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></li><li id="v:ScrollDown"><code><a href="Ansi.Codes.html#v:ScrollDown" title="Ansi.Codes.ScrollDown"><span class="ctor">ScrollDown</span></a> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></li><li id="v:Graphics"><code><a href="Ansi.Codes.html#v:Graphics" title="Ansi.Codes.Graphics"><span class="ctor">Graphics</span></a> <span class="syntax">(</span><a href="Data.List.Types.html#t:NonEmptyList" title="Data.List.Types.NonEmptyList"><span class="ctor">NonEmptyList</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a><span class="syntax">)</span></code></li><li id="v:SavePosition"><code><a href="Ansi.Codes.html#v:SavePosition" title="Ansi.Codes.SavePosition"><span class="ctor">SavePosition</span></a></code></li><li id="v:RestorePosition"><code><a href="Ansi.Codes.html#v:RestorePosition" title="Ansi.Codes.RestorePosition"><span class="ctor">RestorePosition</span></a></code></li><li id="v:QueryPosition"><code><a href="Ansi.Codes.html#v:QueryPosition" title="Ansi.Codes.QueryPosition"><span class="ctor">QueryPosition</span></a></code></li><li id="v:HideCursor"><code><a href="Ansi.Codes.html#v:HideCursor" title="Ansi.Codes.HideCursor"><span class="ctor">HideCursor</span></a></code></li><li id="v:ShowCursor"><code><a href="Ansi.Codes.html#v:ShowCursor" title="Ansi.Codes.ShowCursor"><span class="ctor">ShowCursor</span></a></code></li></ul><h4>Instances</h4><ul><li id="v:genericEscapeCode"><code><a href="Data.Generic.Rep.html#t:Generic" title="Data.Generic.Rep.Generic"><span class="ctor">Generic</span></a> <a href="Ansi.Codes.html#t:EscapeCode" title="Ansi.Codes.EscapeCode"><span class="ctor">EscapeCode</span></a> <span class="syntax">_</span></code></li><li id="v:eqEscapeCode"><code><a href="Data.Eq.html#t:Eq" title="Data.Eq.Eq"><span class="ctor">Eq</span></a> <a href="Ansi.Codes.html#t:EscapeCode" title="Ansi.Codes.EscapeCode"><span class="ctor">EscapeCode</span></a></code></li><li id="v:ordEscapeCode"><code><a href="Data.Ord.html#t:Ord" title="Data.Ord.Ord"><span class="ctor">Ord</span></a> <a href="Ansi.Codes.html#t:EscapeCode" title="Ansi.Codes.EscapeCode"><span class="ctor">EscapeCode</span></a></code></li><li id="v:showEscapeCode"><code><a href="Data.Show.html#t:Show" title="Data.Show.Show"><span class="ctor">Show</span></a> <a href="Ansi.Codes.html#t:EscapeCode" title="Ansi.Codes.EscapeCode"><span class="ctor">EscapeCode</span></a></code></li></ul></div></div><div class="decl" id="v:escapeCodeToString"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:escapeCodeToString">#</a><span>escapeCodeToString</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Codes.html#v:escapeCodeToString" title="Ansi.Codes.escapeCodeToString"><span class="ident">escapeCodeToString</span></a> <span class="syntax">::</span> <a href="Ansi.Codes.html#t:EscapeCode" title="Ansi.Codes.EscapeCode"><span class="ctor">EscapeCode</span></a> <span class="syntax">-></span> <a href="Prim.html#t:String" title="Prim.String"><span class="ctor">String</span></a></code></pre><p>Convert an escape code to the form recognised by terminals.</p>
1363−</div></div><div class="decl" id="t:EraseParam"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:EraseParam">#</a><span>EraseParam</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">data</span> <a href="Ansi.Codes.html#t:EraseParam" title="Ansi.Codes.EraseParam"><span class="ctor">EraseParam</span></a></code></pre><p>Specifies how much text to erase.</p>
1365−<li>ToEnd: erase from the cursor to the end of the line or screen.</li>
1366−<li>FromBeginning: erase to the cursor from the beginning of the line or
1368−<li>Entire: erase the entire line or screen.</li>
1370−<h4>Constructors</h4><ul><li id="v:ToEnd"><code><a href="Ansi.Codes.html#v:ToEnd" title="Ansi.Codes.ToEnd"><span class="ctor">ToEnd</span></a></code></li><li id="v:FromBeginning"><code><a href="Ansi.Codes.html#v:FromBeginning" title="Ansi.Codes.FromBeginning"><span class="ctor">FromBeginning</span></a></code></li><li id="v:Entire"><code><a href="Ansi.Codes.html#v:Entire" title="Ansi.Codes.Entire"><span class="ctor">Entire</span></a></code></li></ul><h4>Instances</h4><ul><li id="v:genericEraseParam"><code><a href="Data.Generic.Rep.html#t:Generic" title="Data.Generic.Rep.Generic"><span class="ctor">Generic</span></a> <a href="Ansi.Codes.html#t:EraseParam" title="Ansi.Codes.EraseParam"><span class="ctor">EraseParam</span></a> <span class="syntax">_</span></code></li><li id="v:eqEraseParam"><code><a href="Data.Eq.html#t:Eq" title="Data.Eq.Eq"><span class="ctor">Eq</span></a> <a href="Ansi.Codes.html#t:EraseParam" title="Ansi.Codes.EraseParam"><span class="ctor">EraseParam</span></a></code></li><li id="v:ordEraseParam"><code><a href="Data.Ord.html#t:Ord" title="Data.Ord.Ord"><span class="ctor">Ord</span></a> <a href="Ansi.Codes.html#t:EraseParam" title="Ansi.Codes.EraseParam"><span class="ctor">EraseParam</span></a></code></li><li id="v:showEraseParam"><code><a href="Data.Show.html#t:Show" title="Data.Show.Show"><span class="ctor">Show</span></a> <a href="Ansi.Codes.html#t:EraseParam" title="Ansi.Codes.EraseParam"><span class="ctor">EraseParam</span></a></code></li></ul></div></div><div class="decl" id="v:eraseParamToString"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:eraseParamToString">#</a><span>eraseParamToString</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Codes.html#v:eraseParamToString" title="Ansi.Codes.eraseParamToString"><span class="ident">eraseParamToString</span></a> <span class="syntax">::</span> <a href="Ansi.Codes.html#t:EraseParam" title="Ansi.Codes.EraseParam"><span class="ctor">EraseParam</span></a> <span class="syntax">-></span> <a href="Prim.html#t:String" title="Prim.String"><span class="ctor">String</span></a></code></pre></div></div><div class="decl" id="t:GraphicsParam"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:GraphicsParam">#</a><span>GraphicsParam</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">data</span> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></pre><p>A graphics parameter, controls how text appears; for example, bold,
1371−underlined, foreground color, background color.</p>
1372−<h4>Constructors</h4><ul><li id="v:Reset"><code><a href="Ansi.Codes.html#v:Reset" title="Ansi.Codes.Reset"><span class="ctor">Reset</span></a></code></li><li id="v:PMode"><code><a href="Ansi.Codes.html#v:PMode" title="Ansi.Codes.PMode"><span class="ctor">PMode</span></a> <a href="Ansi.Codes.html#t:RenderingMode" title="Ansi.Codes.RenderingMode"><span class="ctor">RenderingMode</span></a></code></li><li id="v:PForeground"><code><a href="Ansi.Codes.html#v:PForeground" title="Ansi.Codes.PForeground"><span class="ctor">PForeground</span></a> <a href="Ansi.Codes.html#t:Color" title="Ansi.Codes.Color"><span class="ctor">Color</span></a></code></li><li id="v:PBackground"><code><a href="Ansi.Codes.html#v:PBackground" title="Ansi.Codes.PBackground"><span class="ctor">PBackground</span></a> <a href="Ansi.Codes.html#t:Color" title="Ansi.Codes.Color"><span class="ctor">Color</span></a></code></li></ul><h4>Instances</h4><ul><li id="v:genericGraphicsParam"><code><a href="Data.Generic.Rep.html#t:Generic" title="Data.Generic.Rep.Generic"><span class="ctor">Generic</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a> <span class="syntax">_</span></code></li><li id="v:eqGraphicsParam"><code><a href="Data.Eq.html#t:Eq" title="Data.Eq.Eq"><span class="ctor">Eq</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></li><li id="v:ordGraphicsParam"><code><a href="Data.Ord.html#t:Ord" title="Data.Ord.Ord"><span class="ctor">Ord</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></li><li id="v:showGraphicsParam"><code><a href="Data.Show.html#t:Show" title="Data.Show.Show"><span class="ctor">Show</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></li></ul></div></div><div class="decl" id="v:graphicsParamToString"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:graphicsParamToString">#</a><span>graphicsParamToString</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Codes.html#v:graphicsParamToString" title="Ansi.Codes.graphicsParamToString"><span class="ident">graphicsParamToString</span></a> <span class="syntax">::</span> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a> <span class="syntax">-></span> <a href="Prim.html#t:String" title="Prim.String"><span class="ctor">String</span></a></code></pre></div></div><div class="decl" id="t:RenderingMode"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:RenderingMode">#</a><span>RenderingMode</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">data</span> <a href="Ansi.Codes.html#t:RenderingMode" title="Ansi.Codes.RenderingMode"><span class="ctor">RenderingMode</span></a></code></pre><h4>Constructors</h4><ul><li id="v:Bold"><code><a href="Ansi.Codes.html#v:Bold" title="Ansi.Codes.Bold"><span class="ctor">Bold</span></a></code></li><li id="v:Dim"><code><a href="Ansi.Codes.html#v:Dim" title="Ansi.Codes.Dim"><span class="ctor">Dim</span></a></code></li><li id="v:Italic"><code><a href="Ansi.Codes.html#v:Italic" title="Ansi.Codes.Italic"><span class="ctor">Italic</span></a></code></li><li id="v:Underline"><code><a href="Ansi.Codes.html#v:Underline" title="Ansi.Codes.Underline"><span class="ctor">Underline</span></a></code></li><li id="v:Inverse"><code><a href="Ansi.Codes.html#v:Inverse" title="Ansi.Codes.Inverse"><span class="ctor">Inverse</span></a></code></li><li id="v:Strikethrough"><code><a href="Ansi.Codes.html#v:Strikethrough" title="Ansi.Codes.Strikethrough"><span class="ctor">Strikethrough</span></a></code></li></ul><h4>Instances</h4><ul><li id="v:genericRenderingMode"><code><a href="Data.Generic.Rep.html#t:Generic" title="Data.Generic.Rep.Generic"><span class="ctor">Generic</span></a> <a href="Ansi.Codes.html#t:RenderingMode" title="Ansi.Codes.RenderingMode"><span class="ctor">RenderingMode</span></a> <span class="syntax">_</span></code></li><li id="v:eqRenderingMode"><code><a href="Data.Eq.html#t:Eq" title="Data.Eq.Eq"><span class="ctor">Eq</span></a> <a href="Ansi.Codes.html#t:RenderingMode" title="Ansi.Codes.RenderingMode"><span class="ctor">RenderingMode</span></a></code></li><li id="v:ordRenderingMode"><code><a href="Data.Ord.html#t:Ord" title="Data.Ord.Ord"><span class="ctor">Ord</span></a> <a href="Ansi.Codes.html#t:RenderingMode" title="Ansi.Codes.RenderingMode"><span class="ctor">RenderingMode</span></a></code></li><li id="v:showRenderingMode"><code><a href="Data.Show.html#t:Show" title="Data.Show.Show"><span class="ctor">Show</span></a> <a href="Ansi.Codes.html#t:RenderingMode" title="Ansi.Codes.RenderingMode"><span class="ctor">RenderingMode</span></a></code></li></ul></div></div><div class="decl" id="v:codeForRenderingMode"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:codeForRenderingMode">#</a><span>codeForRenderingMode</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Codes.html#v:codeForRenderingMode" title="Ansi.Codes.codeForRenderingMode"><span class="ident">codeForRenderingMode</span></a> <span class="syntax">::</span> <a href="Ansi.Codes.html#t:RenderingMode" title="Ansi.Codes.RenderingMode"><span class="ctor">RenderingMode</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></pre></div></div><div class="decl" id="t:Color"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Color">#</a><span>Color</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">data</span> <a href="Ansi.Codes.html#t:Color" title="Ansi.Codes.Color"><span class="ctor">Color</span></a></code></pre><p>The standard set of 16 ANSI colors.</p>
1373−<h4>Constructors</h4><ul><li id="v:Black"><code><a href="Ansi.Codes.html#v:Black" title="Ansi.Codes.Black"><span class="ctor">Black</span></a></code></li><li id="v:Red"><code><a href="Ansi.Codes.html#v:Red" title="Ansi.Codes.Red"><span class="ctor">Red</span></a></code></li><li id="v:Green"><code><a href="Ansi.Codes.html#v:Green" title="Ansi.Codes.Green"><span class="ctor">Green</span></a></code></li><li id="v:Yellow"><code><a href="Ansi.Codes.html#v:Yellow" title="Ansi.Codes.Yellow"><span class="ctor">Yellow</span></a></code></li><li id="v:Blue"><code><a href="Ansi.Codes.html#v:Blue" title="Ansi.Codes.Blue"><span class="ctor">Blue</span></a></code></li><li id="v:Magenta"><code><a href="Ansi.Codes.html#v:Magenta" title="Ansi.Codes.Magenta"><span class="ctor">Magenta</span></a></code></li><li id="v:Cyan"><code><a href="Ansi.Codes.html#v:Cyan" title="Ansi.Codes.Cyan"><span class="ctor">Cyan</span></a></code></li><li id="v:White"><code><a href="Ansi.Codes.html#v:White" title="Ansi.Codes.White"><span class="ctor">White</span></a></code></li><li id="v:BrightBlack"><code><a href="Ansi.Codes.html#v:BrightBlack" title="Ansi.Codes.BrightBlack"><span class="ctor">BrightBlack</span></a></code></li><li id="v:BrightRed"><code><a href="Ansi.Codes.html#v:BrightRed" title="Ansi.Codes.BrightRed"><span class="ctor">BrightRed</span></a></code></li><li id="v:BrightGreen"><code><a href="Ansi.Codes.html#v:BrightGreen" title="Ansi.Codes.BrightGreen"><span class="ctor">BrightGreen</span></a></code></li><li id="v:BrightYellow"><code><a href="Ansi.Codes.html#v:BrightYellow" title="Ansi.Codes.BrightYellow"><span class="ctor">BrightYellow</span></a></code></li><li id="v:BrightBlue"><code><a href="Ansi.Codes.html#v:BrightBlue" title="Ansi.Codes.BrightBlue"><span class="ctor">BrightBlue</span></a></code></li><li id="v:BrightMagenta"><code><a href="Ansi.Codes.html#v:BrightMagenta" title="Ansi.Codes.BrightMagenta"><span class="ctor">BrightMagenta</span></a></code></li><li id="v:BrightCyan"><code><a href="Ansi.Codes.html#v:BrightCyan" title="Ansi.Codes.BrightCyan"><span class="ctor">BrightCyan</span></a></code></li><li id="v:BrightWhite"><code><a href="Ansi.Codes.html#v:BrightWhite" title="Ansi.Codes.BrightWhite"><span class="ctor">BrightWhite</span></a></code></li></ul><h4>Instances</h4><ul><li id="v:genericColor"><code><a href="Data.Generic.Rep.html#t:Generic" title="Data.Generic.Rep.Generic"><span class="ctor">Generic</span></a> <a href="Ansi.Codes.html#t:Color" title="Ansi.Codes.Color"><span class="ctor">Color</span></a> <span class="syntax">_</span></code></li><li id="v:eqColor"><code><a href="Data.Eq.html#t:Eq" title="Data.Eq.Eq"><span class="ctor">Eq</span></a> <a href="Ansi.Codes.html#t:Color" title="Ansi.Codes.Color"><span class="ctor">Color</span></a></code></li><li id="v:ordColor"><code><a href="Data.Ord.html#t:Ord" title="Data.Ord.Ord"><span class="ctor">Ord</span></a> <a href="Ansi.Codes.html#t:Color" title="Ansi.Codes.Color"><span class="ctor">Color</span></a></code></li><li id="v:showColor"><code><a href="Data.Show.html#t:Show" title="Data.Show.Show"><span class="ctor">Show</span></a> <a href="Ansi.Codes.html#t:Color" title="Ansi.Codes.Color"><span class="ctor">Color</span></a></code></li></ul></div></div><div class="decl" id="v:colorCode"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:colorCode">#</a><span>colorCode</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Codes.html#v:colorCode" title="Ansi.Codes.colorCode"><span class="ident">colorCode</span></a> <span class="syntax">::</span> <a href="Ansi.Codes.html#t:Color" title="Ansi.Codes.Color"><span class="ctor">Color</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Int" title="Prim.Int"><span class="ctor">Int</span></a></code></pre></div></div></div><div class="col col--aside"><h3>Modules</h3><ul><li><a href="Ansi.Codes.html">Ansi.Codes</a></li><li><a href="Ansi.Output.html">Ansi.Output</a></li><li><a href="Bolson.Control.html">Bolson.Control</a></li><li><a href="Bolson.Core.html">Bolson.Core</a></li><li><a href="Control.Alt.html">Control.Alt</a></li><li><a href="Control.Alternative.html">Control.Alternative</a></li><li><a href="Control.Applicative.html">Control.Applicative</a></li><li><a href="Control.Apply.html">Control.Apply</a></li><li><a href="Control.Biapplicative.html">Control.Biapplicative</a></li><li><a href="Control.Biapply.html">Control.Biapply</a></li><li><a href="Control.Bind.html">Control.Bind</a></li><li><a href="Control.Category.html">Control.Category</a></li><li><a href="Control.Comonad.html">Control.Comonad</a></li><li><a href="Control.Comonad.Cofree.html">Control.Comonad.Cofree</a></li><li><a href="Control.Comonad.Cofree.Class.html">Control.Comonad.Cofree.Class</a></li><li><a href="Control.Comonad.Env.html">Control.Comonad.Env</a></li><li><a href="Control.Comonad.Env.Class.html">Control.Comonad.Env.Class</a></li><li><a href="Control.Comonad.Env.Trans.html">Control.Comonad.Env.Trans</a></li><li><a href="Control.Comonad.Store.html">Control.Comonad.Store</a></li><li><a href="Control.Comonad.Store.Class.html">Control.Comonad.Store.Class</a></li><li><a href="Control.Comonad.Store.Trans.html">Control.Comonad.Store.Trans</a></li><li><a href="Control.Comonad.Traced.html">Control.Comonad.Traced</a></li><li><a href="Control.Comonad.Traced.Class.html">Control.Comonad.Traced.Class</a></li><li><a href="Control.Comonad.Traced.Trans.html">Control.Comonad.Traced.Trans</a></li><li><a href="Control.Comonad.Trans.Class.html">Control.Comonad.Trans.Class</a></li><li><a href="Control.Extend.html">Control.Extend</a></li><li><a href="Control.Lazy.html">Control.Lazy</a></li><li><a href="Control.Monad.html">Control.Monad</a></li><li><a href="Control.Monad.Cont.html">Control.Monad.Cont</a></li><li><a href="Control.Monad.Cont.Class.html">Control.Monad.Cont.Class</a></li><li><a href="Control.Monad.Cont.Trans.html">Control.Monad.Cont.Trans</a></li><li><a href="Control.Monad.Error.Class.html">Control.Monad.Error.Class</a></li><li><a href="Control.Monad.Except.html">Control.Monad.Except</a></li><li><a href="Control.Monad.Except.Trans.html">Control.Monad.Except.Trans</a></li><li><a href="Control.Monad.Fork.Class.html">Control.Monad.Fork.Class</a></li><li><a href="Control.Monad.Free.html">Control.Monad.Free</a></li><li><a href="Control.Monad.Free.Class.html">Control.Monad.Free.Class</a></li><li><a href="Control.Monad.Gen.html">Control.Monad.Gen</a></li><li><a href="Control.Monad.Gen.Class.html">Control.Monad.Gen.Class</a></li><li><a href="Control.Monad.Gen.Common.html">Control.Monad.Gen.Common</a></li><li><a href="Control.Monad.Identity.Trans.html">Control.Monad.Identity.Trans</a></li><li><a href="Control.Monad.List.Trans.html">Control.Monad.List.Trans</a></li><li><a href="Control.Monad.Maybe.Trans.html">Control.Monad.Maybe.Trans</a></li><li><a href="Control.Monad.Morph.html">Control.Monad.Morph</a></li><li><a href="Control.Monad.RWS.html">Control.Monad.RWS</a></li><li><a href="Control.Monad.RWS.Trans.html">Control.Monad.RWS.Trans</a></li><li><a href="Control.Monad.Reader.html">Control.Monad.Reader</a></li><li><a href="Control.Monad.Reader.Class.html">Control.Monad.Reader.Class</a></li><li><a href="Control.Monad.Reader.Trans.html">Control.Monad.Reader.Trans</a></li><li><a href="Control.Monad.Rec.Class.html">Control.Monad.Rec.Class</a></li><li><a href="Control.Monad.ST.html">Control.Monad.ST</a></li><li><a href="Control.Monad.ST.Class.html">Control.Monad.ST.Class</a></li><li><a href="Control.Monad.ST.Global.html">Control.Monad.ST.Global</a></li><li><a href="Control.Monad.ST.Internal.html">Control.Monad.ST.Internal</a></li><li><a href="Control.Monad.ST.Ref.html">Control.Monad.ST.Ref</a></li><li><a href="Control.Monad.ST.Uncurried.html">Control.Monad.ST.Uncurried</a></li><li><a href="Control.Monad.State.html">Control.Monad.State</a></li><li><a href="Control.Monad.State.Class.html">Control.Monad.State.Class</a></li><li><a href="Control.Monad.State.Trans.html">Control.Monad.State.Trans</a></li><li><a href="Control.Monad.Trampoline.html">Control.Monad.Trampoline</a></li><li><a href="Control.Monad.Trans.Class.html">Control.Monad.Trans.Class</a></li><li><a href="Control.Monad.Writer.html">Control.Monad.Writer</a></li><li><a href="Control.Monad.Writer.Class.html">Control.Monad.Writer.Class</a></li><li><a href="Control.Monad.Writer.Trans.html">Control.Monad.Writer.Trans</a></li><li><a href="Control.MonadPlus.html">Control.MonadPlus</a></li><li><a href="Control.Parallel.html">Control.Parallel</a></li><li><a href="Control.Parallel.Class.html">Control.Parallel.Class</a></li><li><a href="Control.Plus.html">Control.Plus</a></li><li><a href="Control.Semigroupoid.html">Control.Semigroupoid</a></li><li><a href="Data.Array.html">Data.Array</a></li><li><a href="Data.Array.NonEmpty.html">Data.Array.NonEmpty</a></li><li><a href="Data.Array.NonEmpty.Internal.html">Data.Array.NonEmpty.Internal</a></li><li><a href="Data.Array.Partial.html">Data.Array.Partial</a></li><li><a href="Data.Array.ST.html">Data.Array.ST</a></li><li><a href="Data.Array.ST.Iterator.html">Data.Array.ST.Iterator</a></li><li><a href="Data.Array.ST.Partial.html">Data.Array.ST.Partial</a></li><li><a href="Data.ArrayBuffer.Types.html">Data.ArrayBuffer.Types</a></li><li><a href="Data.Bifoldable.html">Data.Bifoldable</a></li><li><a href="Data.Bifunctor.html">Data.Bifunctor</a></li><li><a href="Data.Bifunctor.Join.html">Data.Bifunctor.Join</a></li><li><a href="Data.Bitraversable.html">Data.Bitraversable</a></li><li><a href="Data.Boolean.html">Data.Boolean</a></li><li><a href="Data.BooleanAlgebra.html">Data.BooleanAlgebra</a></li><li><a href="Data.Bounded.html">Data.Bounded</a></li><li><a href="Data.Bounded.Generic.html">Data.Bounded.Generic</a></li><li><a href="Data.CatList.html">Data.CatList</a></li><li><a href="Data.CatQueue.html">Data.CatQueue</a></li><li><a href="Data.Char.html">Data.Char</a></li><li><a href="Data.Char.Gen.html">Data.Char.Gen</a></li><li><a href="Data.CommutativeRing.html">Data.CommutativeRing</a></li><li><a href="Data.Compactable.html">Data.Compactable</a></li><li><a href="Data.Comparison.html">Data.Comparison</a></li><li><a href="Data.Const.html">Data.Const</a></li><li><a href="Data.Coyoneda.html">Data.Coyoneda</a></li><li><a href="Data.Date.html">Data.Date</a></li><li><a href="Data.Date.Component.html">Data.Date.Component</a></li><li><a href="Data.Date.Component.Gen.html">Data.Date.Component.Gen</a></li><li><a href="Data.Date.Gen.html">Data.Date.Gen</a></li><li><a href="Data.DateTime.html">Data.DateTime</a></li><li><a href="Data.DateTime.Gen.html">Data.DateTime.Gen</a></li><li><a href="Data.DateTime.Instant.html">Data.DateTime.Instant</a></li><li><a href="Data.Decidable.html">Data.Decidable</a></li><li><a href="Data.Decide.html">Data.Decide</a></li><li><a href="Data.Distributive.html">Data.Distributive</a></li><li><a href="Data.Divide.html">Data.Divide</a></li><li><a href="Data.Divisible.html">Data.Divisible</a></li><li><a href="Data.DivisionRing.html">Data.DivisionRing</a></li><li><a href="Data.Either.html">Data.Either</a></li><li><a href="Data.Either.Inject.html">Data.Either.Inject</a></li><li><a href="Data.Either.Nested.html">Data.Either.Nested</a></li><li><a href="Data.Enum.html">Data.Enum</a></li><li><a href="Data.Enum.Gen.html">Data.Enum.Gen</a></li><li><a href="Data.Enum.Generic.html">Data.Enum.Generic</a></li><li><a href="Data.Eq.html">Data.Eq</a></li><li><a href="Data.Eq.Generic.html">Data.Eq.Generic</a></li><li><a href="Data.Equivalence.html">Data.Equivalence</a></li><li><a href="Data.EuclideanRing.html">Data.EuclideanRing</a></li><li><a href="Data.Exists.html">Data.Exists</a></li><li><a href="Data.FastVect.Common.html">Data.FastVect.Common</a></li><li><a href="Data.FastVect.Common.Matrix.html">Data.FastVect.Common.Matrix</a></li><li><a href="Data.FastVect.FastVect.html">Data.FastVect.FastVect</a></li><li><a href="Data.FastVect.FastVect.Matrix.html">Data.FastVect.FastVect.Matrix</a></li><li><a href="Data.FastVect.MinLenVect.html">Data.FastVect.MinLenVect</a></li><li><a href="Data.FastVect.Sparse.Read.html">Data.FastVect.Sparse.Read</a></li><li><a href="Data.FastVect.Sparse.Write.html">Data.FastVect.Sparse.Write</a></li><li><a href="Data.Field.html">Data.Field</a></li><li><a href="Data.Filterable.html">Data.Filterable</a></li><li><a href="Data.Foldable.html">Data.Foldable</a></li><li><a href="Data.FoldableWithIndex.html">Data.FoldableWithIndex</a></li><li><a href="Data.Function.html">Data.Function</a></li><li><a href="Data.Function.Uncurried.html">Data.Function.Uncurried</a></li><li><a href="Data.Functor.html">Data.Functor</a></li><li><a href="Data.Functor.App.html">Data.Functor.App</a></li><li><a href="Data.Functor.Clown.html">Data.Functor.Clown</a></li><li><a href="Data.Functor.Compose.html">Data.Functor.Compose</a></li><li><a href="Data.Functor.Contravariant.html">Data.Functor.Contravariant</a></li><li><a href="Data.Functor.Coproduct.html">Data.Functor.Coproduct</a></li><li><a href="Data.Functor.Coproduct.Inject.html">Data.Functor.Coproduct.Inject</a></li><li><a href="Data.Functor.Coproduct.Nested.html">Data.Functor.Coproduct.Nested</a></li><li><a href="Data.Functor.Costar.html">Data.Functor.Costar</a></li><li><a href="Data.Functor.Flip.html">Data.Functor.Flip</a></li><li><a href="Data.Functor.Invariant.html">Data.Functor.Invariant</a></li><li><a href="Data.Functor.Joker.html">Data.Functor.Joker</a></li><li><a href="Data.Functor.Product.html">Data.Functor.Product</a></li><li><a href="Data.Functor.Product.Nested.html">Data.Functor.Product.Nested</a></li><li><a href="Data.Functor.Product2.html">Data.Functor.Product2</a></li><li><a href="Data.Functor.Variant.html">Data.Functor.Variant</a></li><li><a href="Data.FunctorWithIndex.html">Data.FunctorWithIndex</a></li><li><a href="Data.Generic.Rep.html">Data.Generic.Rep</a></li><li><a href="Data.HeytingAlgebra.html">Data.HeytingAlgebra</a></li><li><a href="Data.HeytingAlgebra.Generic.html">Data.HeytingAlgebra.Generic</a></li><li><a href="Data.Identity.html">Data.Identity</a></li><li><a href="Data.Int.html">Data.Int</a></li><li><a href="Data.Int.Bits.html">Data.Int.Bits</a></li><li><a href="Data.Interval.html">Data.Interval</a></li><li><a href="Data.Interval.Duration.html">Data.Interval.Duration</a></li><li><a href="Data.Interval.Duration.Iso.html">Data.Interval.Duration.Iso</a></li><li><a href="Data.JSDate.html">Data.JSDate</a></li><li><a href="Data.Lazy.html">Data.Lazy</a></li><li><a href="Data.List.html">Data.List</a></li><li><a href="Data.List.Internal.html">Data.List.Internal</a></li><li><a href="Data.List.Lazy.html">Data.List.Lazy</a></li><li><a href="Data.List.Lazy.NonEmpty.html">Data.List.Lazy.NonEmpty</a></li><li><a href="Data.List.Lazy.Types.html">Data.List.Lazy.Types</a></li><li><a href="Data.List.NonEmpty.html">Data.List.NonEmpty</a></li><li><a href="Data.List.Partial.html">Data.List.Partial</a></li><li><a href="Data.List.Types.html">Data.List.Types</a></li><li><a href="Data.List.ZipList.html">Data.List.ZipList</a></li><li><a href="Data.Map.html">Data.Map</a></li><li><a href="Data.Map.Gen.html">Data.Map.Gen</a></li><li><a href="Data.Map.Internal.html">Data.Map.Internal</a></li><li><a href="Data.Maybe.html">Data.Maybe</a></li><li><a href="Data.Maybe.First.html">Data.Maybe.First</a></li><li><a href="Data.Maybe.Last.html">Data.Maybe.Last</a></li><li><a href="Data.MediaType.html">Data.MediaType</a></li><li><a href="Data.MediaType.Common.html">Data.MediaType.Common</a></li><li><a href="Data.Monoid.html">Data.Monoid</a></li><li><a href="Data.Monoid.Additive.html">Data.Monoid.Additive</a></li><li><a href="Data.Monoid.Alternate.html">Data.Monoid.Alternate</a></li><li><a href="Data.Monoid.Conj.html">Data.Monoid.Conj</a></li><li><a href="Data.Monoid.Disj.html">Data.Monoid.Disj</a></li><li><a href="Data.Monoid.Dual.html">Data.Monoid.Dual</a></li><li><a href="Data.Monoid.Endo.html">Data.Monoid.Endo</a></li><li><a href="Data.Monoid.Generic.html">Data.Monoid.Generic</a></li><li><a href="Data.Monoid.Multiplicative.html">Data.Monoid.Multiplicative</a></li><li><a href="Data.NaturalTransformation.html">Data.NaturalTransformation</a></li><li><a href="Data.Newtype.html">Data.Newtype</a></li><li><a href="Data.NonEmpty.html">Data.NonEmpty</a></li><li><a href="Data.Nullable.html">Data.Nullable</a></li><li><a href="Data.Number.html">Data.Number</a></li><li><a href="Data.Number.Approximate.html">Data.Number.Approximate</a></li><li><a href="Data.Number.Format.html">Data.Number.Format</a></li><li><a href="Data.Op.html">Data.Op</a></li><li><a href="Data.Ord.html">Data.Ord</a></li><li><a href="Data.Ord.Down.html">Data.Ord.Down</a></li><li><a href="Data.Ord.Generic.html">Data.Ord.Generic</a></li><li><a href="Data.Ord.Max.html">Data.Ord.Max</a></li><li><a href="Data.Ord.Min.html">Data.Ord.Min</a></li><li><a href="Data.Ordering.html">Data.Ordering</a></li><li><a href="Data.Posix.html">Data.Posix</a></li><li><a href="Data.Posix.Signal.html">Data.Posix.Signal</a></li><li><a href="Data.Predicate.html">Data.Predicate</a></li><li><a href="Data.Profunctor.html">Data.Profunctor</a></li><li><a href="Data.Profunctor.Choice.html">Data.Profunctor.Choice</a></li><li><a href="Data.Profunctor.Closed.html">Data.Profunctor.Closed</a></li><li><a href="Data.Profunctor.Cochoice.html">Data.Profunctor.Cochoice</a></li><li><a href="Data.Profunctor.Costrong.html">Data.Profunctor.Costrong</a></li><li><a href="Data.Profunctor.Join.html">Data.Profunctor.Join</a></li><li><a href="Data.Profunctor.Split.html">Data.Profunctor.Split</a></li><li><a href="Data.Profunctor.Star.html">Data.Profunctor.Star</a></li><li><a href="Data.Profunctor.Strong.html">Data.Profunctor.Strong</a></li><li><a href="Data.Reflectable.html">Data.Reflectable</a></li><li><a href="Data.Ring.html">Data.Ring</a></li><li><a href="Data.Ring.Generic.html">Data.Ring.Generic</a></li><li><a href="Data.Semigroup.html">Data.Semigroup</a></li><li><a href="Data.Semigroup.First.html">Data.Semigroup.First</a></li><li><a href="Data.Semigroup.Foldable.html">Data.Semigroup.Foldable</a></li><li><a href="Data.Semigroup.Generic.html">Data.Semigroup.Generic</a></li><li><a href="Data.Semigroup.Last.html">Data.Semigroup.Last</a></li><li><a href="Data.Semigroup.Traversable.html">Data.Semigroup.Traversable</a></li><li><a href="Data.Semiring.html">Data.Semiring</a></li><li><a href="Data.Semiring.Generic.html">Data.Semiring.Generic</a></li><li><a href="Data.Set.html">Data.Set</a></li><li><a href="Data.Set.NonEmpty.html">Data.Set.NonEmpty</a></li><li><a href="Data.Show.html">Data.Show</a></li><li><a href="Data.Show.Generic.html">Data.Show.Generic</a></li><li><a href="Data.String.html">Data.String</a></li><li><a href="Data.String.CaseInsensitive.html">Data.String.CaseInsensitive</a></li><li><a href="Data.String.CodePoints.html">Data.String.CodePoints</a></li><li><a href="Data.String.CodeUnits.html">Data.String.CodeUnits</a></li><li><a href="Data.String.Common.html">Data.String.Common</a></li><li><a href="Data.String.Gen.html">Data.String.Gen</a></li><li><a href="Data.String.NonEmpty.html">Data.String.NonEmpty</a></li><li><a href="Data.String.NonEmpty.CaseInsensitive.html">Data.String.NonEmpty.CaseInsensitive</a></li><li><a href="Data.String.NonEmpty.CodePoints.html">Data.String.NonEmpty.CodePoints</a></li><li><a href="Data.String.NonEmpty.CodeUnits.html">Data.String.NonEmpty.CodeUnits</a></li><li><a href="Data.String.NonEmpty.Internal.html">Data.String.NonEmpty.Internal</a></li><li><a href="Data.String.Pattern.html">Data.String.Pattern</a></li><li><a href="Data.String.Regex.html">Data.String.Regex</a></li><li><a href="Data.String.Regex.Flags.html">Data.String.Regex.Flags</a></li><li><a href="Data.String.Regex.Unsafe.html">Data.String.Regex.Unsafe</a></li><li><a href="Data.String.Unsafe.html">Data.String.Unsafe</a></li><li><a href="Data.Symbol.html">Data.Symbol</a></li><li><a href="Data.Time.html">Data.Time</a></li><li><a href="Data.Time.Component.html">Data.Time.Component</a></li><li><a href="Data.Time.Component.Gen.html">Data.Time.Component.Gen</a></li><li><a href="Data.Time.Duration.html">Data.Time.Duration</a></li><li><a href="Data.Time.Duration.Gen.html">Data.Time.Duration.Gen</a></li><li><a href="Data.Time.Gen.html">Data.Time.Gen</a></li><li><a href="Data.Traversable.html">Data.Traversable</a></li><li><a href="Data.Traversable.Accum.html">Data.Traversable.Accum</a></li><li><a href="Data.Traversable.Accum.Internal.html">Data.Traversable.Accum.Internal</a></li><li><a href="Data.TraversableWithIndex.html">Data.TraversableWithIndex</a></li><li><a href="Data.Tuple.html">Data.Tuple</a></li><li><a href="Data.Tuple.Nested.html">Data.Tuple.Nested</a></li><li><a href="Data.Unfoldable.html">Data.Unfoldable</a></li><li><a href="Data.Unfoldable1.html">Data.Unfoldable1</a></li><li><a href="Data.Unit.html">Data.Unit</a></li><li><a href="Data.Variant.html">Data.Variant</a></li><li><a href="Data.Variant.Internal.html">Data.Variant.Internal</a></li><li><a href="Data.Void.html">Data.Void</a></li><li><a href="Data.Witherable.html">Data.Witherable</a></li><li><a href="Data.Yoneda.html">Data.Yoneda</a></li><li><a href="Effect.html">Effect</a></li><li><a href="Effect.AVar.html">Effect.AVar</a></li><li><a href="Effect.Aff.html">Effect.Aff</a></li><li><a href="Effect.Aff.AVar.html">Effect.Aff.AVar</a></li><li><a href="Effect.Aff.Class.html">Effect.Aff.Class</a></li><li><a href="Effect.Aff.Compat.html">Effect.Aff.Compat</a></li><li><a href="Effect.Class.html">Effect.Class</a></li><li><a href="Effect.Class.Console.html">Effect.Class.Console</a></li><li><a href="Effect.Console.html">Effect.Console</a></li><li><a href="Effect.Exception.html">Effect.Exception</a></li><li><a href="Effect.Exception.Unsafe.html">Effect.Exception.Unsafe</a></li><li><a href="Effect.Now.html">Effect.Now</a></li><li><a href="Effect.Ref.html">Effect.Ref</a></li><li><a href="Effect.Timer.html">Effect.Timer</a></li><li><a href="Effect.Uncurried.html">Effect.Uncurried</a></li><li><a href="Effect.Unsafe.html">Effect.Unsafe</a></li><li><a href="FRP.Behavior.html">FRP.Behavior</a></li><li><a href="FRP.Behavior.Keyboard.html">FRP.Behavior.Keyboard</a></li><li><a href="FRP.Behavior.Mouse.html">FRP.Behavior.Mouse</a></li><li><a href="FRP.Behavior.Time.html">FRP.Behavior.Time</a></li><li><a href="FRP.Event.html">FRP.Event</a></li><li><a href="FRP.Event.AnimationFrame.html">FRP.Event.AnimationFrame</a></li><li><a href="FRP.Event.Class.html">FRP.Event.Class</a></li><li><a href="FRP.Event.Keyboard.html">FRP.Event.Keyboard</a></li><li><a href="FRP.Event.Mouse.html">FRP.Event.Mouse</a></li><li><a href="FRP.Event.Time.html">FRP.Event.Time</a></li><li><a href="FRP.Event.VBus.html">FRP.Event.VBus</a></li><li><a href="Foreign.html">Foreign</a></li><li><a href="Foreign.Index.html">Foreign.Index</a></li><li><a href="Foreign.Keys.html">Foreign.Keys</a></li><li><a href="Foreign.Object.html">Foreign.Object</a></li><li><a href="Foreign.Object.Gen.html">Foreign.Object.Gen</a></li><li><a href="Foreign.Object.ST.html">Foreign.Object.ST</a></li><li><a href="Foreign.Object.ST.Unsafe.html">Foreign.Object.ST.Unsafe</a></li><li><a href="Foreign.Object.Unsafe.html">Foreign.Object.Unsafe</a></li><li><a href="Heterogeneous.Folding.html">Heterogeneous.Folding</a></li><li><a href="Heterogeneous.Mapping.html">Heterogeneous.Mapping</a></li><li><a href="Node.Buffer.html">Node.Buffer</a></li><li><a href="Node.Buffer.Class.html">Node.Buffer.Class</a></li><li><a href="Node.Buffer.Constants.html">Node.Buffer.Constants</a></li><li><a href="Node.Buffer.Immutable.html">Node.Buffer.Immutable</a></li><li><a href="Node.Buffer.ST.html">Node.Buffer.ST</a></li><li><a href="Node.Buffer.Types.html">Node.Buffer.Types</a></li><li><a href="Node.Encoding.html">Node.Encoding</a></li><li><a href="Node.EventEmitter.html">Node.EventEmitter</a></li><li><a href="Node.EventEmitter.UtilTypes.html">Node.EventEmitter.UtilTypes</a></li><li><a href="Node.FS.html">Node.FS</a></li><li><a href="Node.FS.Aff.html">Node.FS.Aff</a></li><li><a href="Node.FS.Async.html">Node.FS.Async</a></li><li><a href="Node.FS.Constants.html">Node.FS.Constants</a></li><li><a href="Node.FS.Perms.html">Node.FS.Perms</a></li><li><a href="Node.FS.Stats.html">Node.FS.Stats</a></li><li><a href="Node.FS.Stream.html">Node.FS.Stream</a></li><li><a href="Node.FS.Sync.html">Node.FS.Sync</a></li><li><a href="Node.Path.html">Node.Path</a></li><li><a href="Node.Platform.html">Node.Platform</a></li><li><a href="Node.Process.html">Node.Process</a></li><li><a href="Node.Stream.html">Node.Stream</a></li><li><a href="Node.Stream.Aff.html">Node.Stream.Aff</a></li><li><a href="Node.Symbol.html">Node.Symbol</a></li><li><a href="Partial.html">Partial</a></li><li><a href="Partial.Unsafe.html">Partial.Unsafe</a></li><li><a href="Performance.Minibench.html">Performance.Minibench</a></li><li><a href="Pipes.html">Pipes</a></li><li><a href="Pipes.Core.html">Pipes.Core</a></li><li><a href="Pipes.Internal.html">Pipes.Internal</a></li><li><a href="Pipes.ListT.html">Pipes.ListT</a></li><li><a href="Pipes.Prelude.html">Pipes.Prelude</a></li><li><a href="Prelude.html">Prelude</a></li><li><a href="Prim.html">Prim</a></li><li><a href="Prim.Boolean.html">Prim.Boolean</a></li><li><a href="Prim.Coerce.html">Prim.Coerce</a></li><li><a href="Prim.Int.html">Prim.Int</a></li><li><a href="Prim.Ordering.html">Prim.Ordering</a></li><li><a href="Prim.Row.html">Prim.Row</a></li><li><a href="Prim.RowList.html">Prim.RowList</a></li><li><a href="Prim.Symbol.html">Prim.Symbol</a></li><li><a href="Prim.TypeError.html">Prim.TypeError</a></li><li><a href="Record.html">Record</a></li><li><a href="Record.Builder.html">Record.Builder</a></li><li><a href="Record.Studio.html">Record.Studio</a></li><li><a href="Record.Studio.Keys.html">Record.Studio.Keys</a></li><li><a href="Record.Studio.Map.html">Record.Studio.Map</a></li><li><a href="Record.Studio.MapKind.html">Record.Studio.MapKind</a></li><li><a href="Record.Studio.MapUniform.html">Record.Studio.MapUniform</a></li><li><a href="Record.Studio.Merge.html">Record.Studio.Merge</a></li><li><a href="Record.Studio.SameKeys.html">Record.Studio.SameKeys</a></li><li><a href="Record.Studio.Sequence.html">Record.Studio.Sequence</a></li><li><a href="Record.Studio.Shrink.html">Record.Studio.Shrink</a></li><li><a href="Record.Studio.SingletonRecord.html">Record.Studio.SingletonRecord</a></li><li><a href="Record.Unsafe.html">Record.Unsafe</a></li><li><a href="Record.Unsafe.Union.html">Record.Unsafe.Union</a></li><li><a href="Safe.Coerce.html">Safe.Coerce</a></li><li><a href="Spago.Generated.BuildInfo.html">Spago.Generated.BuildInfo</a></li><li><a href="Test.Spec.html">Test.Spec</a></li><li><a href="Test.Spec.Assertions.html">Test.Spec.Assertions</a></li><li><a href="Test.Spec.Assertions.String.html">Test.Spec.Assertions.String</a></li><li><a href="Test.Spec.Config.html">Test.Spec.Config</a></li><li><a href="Test.Spec.Console.html">Test.Spec.Console</a></li><li><a href="Test.Spec.Reporter.html">Test.Spec.Reporter</a></li><li><a href="Test.Spec.Reporter.Base.html">Test.Spec.Reporter.Base</a></li><li><a href="Test.Spec.Reporter.Console.html">Test.Spec.Reporter.Console</a></li><li><a href="Test.Spec.Reporter.Dot.html">Test.Spec.Reporter.Dot</a></li><li><a href="Test.Spec.Reporter.Spec.html">Test.Spec.Reporter.Spec</a></li><li><a href="Test.Spec.Reporter.Tap.html">Test.Spec.Reporter.Tap</a></li><li><a href="Test.Spec.Reporter.TeamCity.html">Test.Spec.Reporter.TeamCity</a></li><li><a href="Test.Spec.Result.html">Test.Spec.Result</a></li><li><a href="Test.Spec.Runner.html">Test.Spec.Runner</a></li><li><a href="Test.Spec.Runner.Event.html">Test.Spec.Runner.Event</a></li><li><a href="Test.Spec.Speed.html">Test.Spec.Speed</a></li><li><a href="Test.Spec.Style.html">Test.Spec.Style</a></li><li><a href="Test.Spec.Summary.html">Test.Spec.Summary</a></li><li><a href="Test.Spec.Tree.html">Test.Spec.Tree</a></li><li><a href="Type.Data.Boolean.html">Type.Data.Boolean</a></li><li><a href="Type.Data.Ordering.html">Type.Data.Ordering</a></li><li><a href="Type.Data.Symbol.html">Type.Data.Symbol</a></li><li><a href="Type.Equality.html">Type.Equality</a></li><li><a href="Type.Function.html">Type.Function</a></li><li><a href="Type.Prelude.html">Type.Prelude</a></li><li><a href="Type.Proxy.html">Type.Proxy</a></li><li><a href="Type.Row.html">Type.Row</a></li><li><a href="Type.Row.Homogeneous.html">Type.Row.Homogeneous</a></li><li><a href="Type.RowList.html">Type.RowList</a></li><li><a href="Uncurried.RWSE.html">Uncurried.RWSE</a></li><li><a href="Uncurried.RWSET.html">Uncurried.RWSET</a></li><li><a href="Uncurried.Reader.html">Uncurried.Reader</a></li><li><a href="Uncurried.ReaderT.html">Uncurried.ReaderT</a></li><li><a href="Uncurried.State.html">Uncurried.State</a></li><li><a href="Uncurried.StateT.html">Uncurried.StateT</a></li><li><a href="Uncurried.Writer.html">Uncurried.Writer</a></li><li><a href="Uncurried.WriterT.html">Uncurried.WriterT</a></li><li><a href="Unsafe.Coerce.html">Unsafe.Coerce</a></li><li><a href="Unsafe.Reference.html">Unsafe.Reference</a></li><li><a href="Web.DOM.html">Web.DOM</a></li><li><a href="Web.DOM.CharacterData.html">Web.DOM.CharacterData</a></li><li><a href="Web.DOM.ChildNode.html">Web.DOM.ChildNode</a></li><li><a href="Web.DOM.Comment.html">Web.DOM.Comment</a></li><li><a href="Web.DOM.DOMTokenList.html">Web.DOM.DOMTokenList</a></li><li><a href="Web.DOM.Document.html">Web.DOM.Document</a></li><li><a href="Web.DOM.DocumentFragment.html">Web.DOM.DocumentFragment</a></li><li><a href="Web.DOM.DocumentType.html">Web.DOM.DocumentType</a></li><li><a href="Web.DOM.Element.html">Web.DOM.Element</a></li><li><a href="Web.DOM.HTMLCollection.html">Web.DOM.HTMLCollection</a></li><li><a href="Web.DOM.Internal.Types.html">Web.DOM.Internal.Types</a></li><li><a href="Web.DOM.MutationObserver.html">Web.DOM.MutationObserver</a></li><li><a href="Web.DOM.MutationRecord.html">Web.DOM.MutationRecord</a></li><li><a href="Web.DOM.Node.html">Web.DOM.Node</a></li><li><a href="Web.DOM.NodeList.html">Web.DOM.NodeList</a></li><li><a href="Web.DOM.NodeType.html">Web.DOM.NodeType</a></li><li><a href="Web.DOM.NonDocumentTypeChildNode.html">Web.DOM.NonDocumentTypeChildNode</a></li><li><a href="Web.DOM.NonElementParentNode.html">Web.DOM.NonElementParentNode</a></li><li><a href="Web.DOM.ParentNode.html">Web.DOM.ParentNode</a></li><li><a href="Web.DOM.ProcessingInstruction.html">Web.DOM.ProcessingInstruction</a></li><li><a href="Web.DOM.ShadowRoot.html">Web.DOM.ShadowRoot</a></li><li><a href="Web.DOM.Text.html">Web.DOM.Text</a></li><li><a href="Web.Event.CustomEvent.html">Web.Event.CustomEvent</a></li><li><a href="Web.Event.Event.html">Web.Event.Event</a></li><li><a href="Web.Event.EventPhase.html">Web.Event.EventPhase</a></li><li><a href="Web.Event.EventTarget.html">Web.Event.EventTarget</a></li><li><a href="Web.Event.Internal.Types.html">Web.Event.Internal.Types</a></li><li><a href="Web.File.Blob.html">Web.File.Blob</a></li><li><a href="Web.File.File.html">Web.File.File</a></li><li><a href="Web.File.FileList.html">Web.File.FileList</a></li><li><a href="Web.File.FileReader.html">Web.File.FileReader</a></li><li><a href="Web.File.FileReader.ReadyState.html">Web.File.FileReader.ReadyState</a></li><li><a href="Web.File.Url.html">Web.File.Url</a></li><li><a href="Web.HTML.html">Web.HTML</a></li><li><a href="Web.HTML.Common.html">Web.HTML.Common</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.html">Web.HTML.Event.BeforeUnloadEvent</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.EventTypes.html">Web.HTML.Event.BeforeUnloadEvent.EventTypes</a></li><li><a href="Web.HTML.Event.DataTransfer.html">Web.HTML.Event.DataTransfer</a></li><li><a href="Web.HTML.Event.DataTransfer.DataTransferItem.html">Web.HTML.Event.DataTransfer.DataTransferItem</a></li><li><a href="Web.HTML.Event.DragEvent.html">Web.HTML.Event.DragEvent</a></li><li><a href="Web.HTML.Event.DragEvent.EventTypes.html">Web.HTML.Event.DragEvent.EventTypes</a></li><li><a href="Web.HTML.Event.ErrorEvent.html">Web.HTML.Event.ErrorEvent</a></li><li><a href="Web.HTML.Event.EventTypes.html">Web.HTML.Event.EventTypes</a></li><li><a href="Web.HTML.Event.HashChangeEvent.html">Web.HTML.Event.HashChangeEvent</a></li><li><a href="Web.HTML.Event.HashChangeEvent.EventTypes.html">Web.HTML.Event.HashChangeEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.html">Web.HTML.Event.PageTransitionEvent</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.EventTypes.html">Web.HTML.Event.PageTransitionEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PopStateEvent.html">Web.HTML.Event.PopStateEvent</a></li><li><a href="Web.HTML.Event.PopStateEvent.EventTypes.html">Web.HTML.Event.PopStateEvent.EventTypes</a></li><li><a href="Web.HTML.Event.TrackEvent.html">Web.HTML.Event.TrackEvent</a></li><li><a href="Web.HTML.Event.TrackEvent.EventTypes.html">Web.HTML.Event.TrackEvent.EventTypes</a></li><li><a href="Web.HTML.HTMLAnchorElement.html">Web.HTML.HTMLAnchorElement</a></li><li><a href="Web.HTML.HTMLAreaElement.html">Web.HTML.HTMLAreaElement</a></li><li><a href="Web.HTML.HTMLAudioElement.html">Web.HTML.HTMLAudioElement</a></li><li><a href="Web.HTML.HTMLBRElement.html">Web.HTML.HTMLBRElement</a></li><li><a href="Web.HTML.HTMLBaseElement.html">Web.HTML.HTMLBaseElement</a></li><li><a href="Web.HTML.HTMLBodyElement.html">Web.HTML.HTMLBodyElement</a></li><li><a href="Web.HTML.HTMLButtonElement.html">Web.HTML.HTMLButtonElement</a></li><li><a href="Web.HTML.HTMLCanvasElement.html">Web.HTML.HTMLCanvasElement</a></li><li><a href="Web.HTML.HTMLDListElement.html">Web.HTML.HTMLDListElement</a></li><li><a href="Web.HTML.HTMLDataElement.html">Web.HTML.HTMLDataElement</a></li><li><a href="Web.HTML.HTMLDataListElement.html">Web.HTML.HTMLDataListElement</a></li><li><a href="Web.HTML.HTMLDivElement.html">Web.HTML.HTMLDivElement</a></li><li><a href="Web.HTML.HTMLDocument.html">Web.HTML.HTMLDocument</a></li><li><a href="Web.HTML.HTMLDocument.ReadyState.html">Web.HTML.HTMLDocument.ReadyState</a></li><li><a href="Web.HTML.HTMLDocument.VisibilityState.html">Web.HTML.HTMLDocument.VisibilityState</a></li><li><a href="Web.HTML.HTMLElement.html">Web.HTML.HTMLElement</a></li><li><a href="Web.HTML.HTMLEmbedElement.html">Web.HTML.HTMLEmbedElement</a></li><li><a href="Web.HTML.HTMLFieldSetElement.html">Web.HTML.HTMLFieldSetElement</a></li><li><a href="Web.HTML.HTMLFormElement.html">Web.HTML.HTMLFormElement</a></li><li><a href="Web.HTML.HTMLHRElement.html">Web.HTML.HTMLHRElement</a></li><li><a href="Web.HTML.HTMLHeadElement.html">Web.HTML.HTMLHeadElement</a></li><li><a href="Web.HTML.HTMLHeadingElement.html">Web.HTML.HTMLHeadingElement</a></li><li><a href="Web.HTML.HTMLHtmlElement.html">Web.HTML.HTMLHtmlElement</a></li><li><a href="Web.HTML.HTMLHyperlinkElementUtils.html">Web.HTML.HTMLHyperlinkElementUtils</a></li><li><a href="Web.HTML.HTMLIFrameElement.html">Web.HTML.HTMLIFrameElement</a></li><li><a href="Web.HTML.HTMLImageElement.html">Web.HTML.HTMLImageElement</a></li><li><a href="Web.HTML.HTMLImageElement.CORSMode.html">Web.HTML.HTMLImageElement.CORSMode</a></li><li><a href="Web.HTML.HTMLImageElement.DecodingHint.html">Web.HTML.HTMLImageElement.DecodingHint</a></li><li><a href="Web.HTML.HTMLImageElement.Laziness.html">Web.HTML.HTMLImageElement.Laziness</a></li><li><a href="Web.HTML.HTMLInputElement.html">Web.HTML.HTMLInputElement</a></li><li><a href="Web.HTML.HTMLKeygenElement.html">Web.HTML.HTMLKeygenElement</a></li><li><a href="Web.HTML.HTMLLIElement.html">Web.HTML.HTMLLIElement</a></li><li><a href="Web.HTML.HTMLLabelElement.html">Web.HTML.HTMLLabelElement</a></li><li><a href="Web.HTML.HTMLLegendElement.html">Web.HTML.HTMLLegendElement</a></li><li><a href="Web.HTML.HTMLLinkElement.html">Web.HTML.HTMLLinkElement</a></li><li><a href="Web.HTML.HTMLMapElement.html">Web.HTML.HTMLMapElement</a></li><li><a href="Web.HTML.HTMLMediaElement.html">Web.HTML.HTMLMediaElement</a></li><li><a href="Web.HTML.HTMLMediaElement.CanPlayType.html">Web.HTML.HTMLMediaElement.CanPlayType</a></li><li><a href="Web.HTML.HTMLMediaElement.NetworkState.html">Web.HTML.HTMLMediaElement.NetworkState</a></li><li><a href="Web.HTML.HTMLMediaElement.ReadyState.html">Web.HTML.HTMLMediaElement.ReadyState</a></li><li><a href="Web.HTML.HTMLMetaElement.html">Web.HTML.HTMLMetaElement</a></li><li><a href="Web.HTML.HTMLMeterElement.html">Web.HTML.HTMLMeterElement</a></li><li><a href="Web.HTML.HTMLModElement.html">Web.HTML.HTMLModElement</a></li><li><a href="Web.HTML.HTMLOListElement.html">Web.HTML.HTMLOListElement</a></li><li><a href="Web.HTML.HTMLObjectElement.html">Web.HTML.HTMLObjectElement</a></li><li><a href="Web.HTML.HTMLOptGroupElement.html">Web.HTML.HTMLOptGroupElement</a></li><li><a href="Web.HTML.HTMLOptionElement.html">Web.HTML.HTMLOptionElement</a></li><li><a href="Web.HTML.HTMLOutputElement.html">Web.HTML.HTMLOutputElement</a></li><li><a href="Web.HTML.HTMLParagraphElement.html">Web.HTML.HTMLParagraphElement</a></li><li><a href="Web.HTML.HTMLParamElement.html">Web.HTML.HTMLParamElement</a></li><li><a href="Web.HTML.HTMLPreElement.html">Web.HTML.HTMLPreElement</a></li><li><a href="Web.HTML.HTMLProgressElement.html">Web.HTML.HTMLProgressElement</a></li><li><a href="Web.HTML.HTMLQuoteElement.html">Web.HTML.HTMLQuoteElement</a></li><li><a href="Web.HTML.HTMLScriptElement.html">Web.HTML.HTMLScriptElement</a></li><li><a href="Web.HTML.HTMLSelectElement.html">Web.HTML.HTMLSelectElement</a></li><li><a href="Web.HTML.HTMLSourceElement.html">Web.HTML.HTMLSourceElement</a></li><li><a href="Web.HTML.HTMLSpanElement.html">Web.HTML.HTMLSpanElement</a></li><li><a href="Web.HTML.HTMLStyleElement.html">Web.HTML.HTMLStyleElement</a></li><li><a href="Web.HTML.HTMLTableCaptionElement.html">Web.HTML.HTMLTableCaptionElement</a></li><li><a href="Web.HTML.HTMLTableCellElement.html">Web.HTML.HTMLTableCellElement</a></li><li><a href="Web.HTML.HTMLTableColElement.html">Web.HTML.HTMLTableColElement</a></li><li><a href="Web.HTML.HTMLTableDataCellElement.html">Web.HTML.HTMLTableDataCellElement</a></li><li><a href="Web.HTML.HTMLTableElement.html">Web.HTML.HTMLTableElement</a></li><li><a href="Web.HTML.HTMLTableHeaderCellElement.html">Web.HTML.HTMLTableHeaderCellElement</a></li><li><a href="Web.HTML.HTMLTableRowElement.html">Web.HTML.HTMLTableRowElement</a></li><li><a href="Web.HTML.HTMLTableSectionElement.html">Web.HTML.HTMLTableSectionElement</a></li><li><a href="Web.HTML.HTMLTemplateElement.html">Web.HTML.HTMLTemplateElement</a></li><li><a href="Web.HTML.HTMLTextAreaElement.html">Web.HTML.HTMLTextAreaElement</a></li><li><a href="Web.HTML.HTMLTimeElement.html">Web.HTML.HTMLTimeElement</a></li><li><a href="Web.HTML.HTMLTitleElement.html">Web.HTML.HTMLTitleElement</a></li><li><a href="Web.HTML.HTMLTrackElement.html">Web.HTML.HTMLTrackElement</a></li><li><a href="Web.HTML.HTMLTrackElement.ReadyState.html">Web.HTML.HTMLTrackElement.ReadyState</a></li><li><a href="Web.HTML.HTMLUListElement.html">Web.HTML.HTMLUListElement</a></li><li><a href="Web.HTML.HTMLVideoElement.html">Web.HTML.HTMLVideoElement</a></li><li><a href="Web.HTML.History.html">Web.HTML.History</a></li><li><a href="Web.HTML.Location.html">Web.HTML.Location</a></li><li><a href="Web.HTML.Navigator.html">Web.HTML.Navigator</a></li><li><a href="Web.HTML.SelectionMode.html">Web.HTML.SelectionMode</a></li><li><a href="Web.HTML.ValidityState.html">Web.HTML.ValidityState</a></li><li><a href="Web.HTML.Window.html">Web.HTML.Window</a></li><li><a href="Web.Internal.FFI.html">Web.Internal.FFI</a></li><li><a href="Web.Storage.Event.StorageEvent.html">Web.Storage.Event.StorageEvent</a></li><li><a href="Web.Storage.Storage.html">Web.Storage.Storage</a></li><li><a href="Web.UIEvent.CompositionEvent.html">Web.UIEvent.CompositionEvent</a></li><li><a href="Web.UIEvent.CompositionEvent.EventTypes.html">Web.UIEvent.CompositionEvent.EventTypes</a></li><li><a href="Web.UIEvent.EventTypes.html">Web.UIEvent.EventTypes</a></li><li><a href="Web.UIEvent.FocusEvent.html">Web.UIEvent.FocusEvent</a></li><li><a href="Web.UIEvent.FocusEvent.EventTypes.html">Web.UIEvent.FocusEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.html">Web.UIEvent.InputEvent</a></li><li><a href="Web.UIEvent.InputEvent.EventTypes.html">Web.UIEvent.InputEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.InputType.html">Web.UIEvent.InputEvent.InputType</a></li><li><a href="Web.UIEvent.KeyboardEvent.html">Web.UIEvent.KeyboardEvent</a></li><li><a href="Web.UIEvent.KeyboardEvent.EventTypes.html">Web.UIEvent.KeyboardEvent.EventTypes</a></li><li><a href="Web.UIEvent.MouseEvent.html">Web.UIEvent.MouseEvent</a></li><li><a href="Web.UIEvent.MouseEvent.EventTypes.html">Web.UIEvent.MouseEvent.EventTypes</a></li><li><a href="Web.UIEvent.UIEvent.html">Web.UIEvent.UIEvent</a></li><li><a href="Web.UIEvent.WheelEvent.html">Web.UIEvent.WheelEvent</a></li><li><a href="Web.UIEvent.WheelEvent.EventTypes.html">Web.UIEvent.WheelEvent.EventTypes</a></li></ul></div></main></div><div class="footer clearfix"><p>Generated by purs 0.15.15 [development build; commit: UNKNOWN]</p></div><!-- Docs search index. --><script type="text/javascript" src="./docs-search-app.js"></script><script type="text/javascript">window.DocsSearchTypeIndex = {};window.DocsSearchIndex = {};</script></body></html>
generated-docs/html/Ansi.Output.htmldeleted−1368
@@ -1,1368 +0,0 @@
2−<html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>PureScript: Ansi.Output</title><link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:300,400,400i,700,700i" type="text/css" rel="stylesheet"><style type="text/css">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
5− * 1. Set default font family to sans-serif.
6− * 2. Prevent iOS text size adjust after orientation change, without disabling
11− font-family: sans-serif; /* 1 */
12− -ms-text-size-adjust: 100%; /* 2 */
13− -webkit-text-size-adjust: 100%; /* 2 */
17− * Remove default margin.
24−/* HTML5 display definitions
25− ========================================================================== */
28− * Correct `block` display not defined for any HTML5 element in IE 8/9.
29− * Correct `block` display not defined for `details` or `summary` in IE 10/11
31− * Correct `block` display not defined for `main` in IE 11.
51− * 1. Correct `inline-block` display not defined in IE 8/9.
52− * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
59− display: inline-block; /* 1 */
60− vertical-align: baseline; /* 2 */
64− * Prevent modern browsers from displaying `audio` without controls.
65− * Remove excess height in iOS 5 devices.
68−audio:not([controls]) {
74− * Address `[hidden]` styling not present in IE 8/9/10.
75− * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
84− ========================================================================== */
87− * Remove the gray background color from active links in IE 10.
91− background-color: transparent;
95− * Improve readability when focused and also mouse hovered in all browsers.
103−/* Text-level semantics
104− ========================================================================== */
107− * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
111− border-bottom: 1px dotted;
115− * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
124− * Address styling not present in Safari and Chrome.
132− * Address variable `h1` font-size and margin within `section` and `article`
133− * contexts in Firefox 4+, Safari, and Chrome.
142− * Address styling not present in IE 8/9.
151− * Address inconsistent and variable font size in all browsers.
159− * Prevent `sub` and `sup` affecting `line-height` in all browsers.
167− vertical-align: baseline;
179− ========================================================================== */
182− * Remove border when inside `a` element in IE 8/9/10.
190− * Correct overflow not hidden in IE 9/10/11.
198− ========================================================================== */
201− * Address margin not present in IE 8/9 and Safari.
209− * Address differences between Firefox and other browsers.
213− -moz-box-sizing: content-box;
214− box-sizing: content-box;
219− * Contain overflow in all browsers.
227− * Address odd `em`-unit font size rendering in all browsers.
234− font-family: monospace, monospace;
239− ========================================================================== */
242− * Known limitation: by default, Chrome and Safari on OS X allow very limited
243− * styling of `select`, unless a `border` property is set.
247− * 1. Correct color not being inherited.
248− * Known issue: affects color of disabled elements.
249− * 2. Correct font properties not being inherited.
250− * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
258− color: inherit; /* 1 */
259− font: inherit; /* 2 */
264− * Address `overflow` set to `hidden` in IE 8/9/10/11.
272− * Address inconsistent `text-transform` inheritance for `button` and `select`.
273− * All other form control elements do not inherit `text-transform` values.
274− * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
275− * Correct `select` style inheritance in Firefox.
280− text-transform: none;
284− * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
285− * and `video` controls.
286− * 2. Correct inability to style clickable `input` types in iOS.
287− * 3. Improve usability and consistency of cursor style between image-type
288− * `input` and others.
292−html input[type="button"], /* 1 */
294−input[type="submit"] {
295− -webkit-appearance: button; /* 2 */
296− cursor: pointer; /* 3 */
300− * Re-set default cursor for disabled elements.
304−html input[disabled] {
309− * Remove inner padding and border in Firefox 4+.
312−button::-moz-focus-inner,
313−input::-moz-focus-inner {
319− * Address Firefox 4+ setting `line-height` on `input` using `!important` in
320− * the UA stylesheet.
324− line-height: normal;
328− * It's recommended that you don't attempt to style these elements.
329− * Firefox's implementation doesn't respect box-sizing, padding, or width.
331− * 1. Address box sizing set to `content-box` in IE 8/9/10.
332− * 2. Remove excess padding in IE 8/9/10.
335−input[type="checkbox"],
336−input[type="radio"] {
337− box-sizing: border-box; /* 1 */
342− * Fix the cursor style for Chrome's increment/decrement buttons. For certain
343− * `font-size` values of the `input`, it causes the cursor style of the
344− * decrement button to change from `default` to `text`.
347−input[type="number"]::-webkit-inner-spin-button,
348−input[type="number"]::-webkit-outer-spin-button {
353− * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
354− * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
355− * (include `-moz` to future-proof).
358−input[type="search"] {
359− -webkit-appearance: textfield; /* 1 */
360− -moz-box-sizing: content-box;
361− -webkit-box-sizing: content-box; /* 2 */
362− box-sizing: content-box;
366− * Remove inner padding and search cancel button in Safari and Chrome on OS X.
367− * Safari (but not Chrome) clips the cancel button when the search input has
368− * padding (and `textfield` appearance).
371−input[type="search"]::-webkit-search-cancel-button,
372−input[type="search"]::-webkit-search-decoration {
373− -webkit-appearance: none;
377− * Define consistent border, margin, and padding.
381− border: 1px solid #c0c0c0;
383− padding: 0.35em 0.625em 0.75em;
387− * 1. Correct `color` not being inherited in IE 8/9/10/11.
388− * 2. Remove padding so people aren't caught out if they zero out fieldsets.
397− * Remove default vertical scrollbar in IE 8/9/10/11.
405− * Don't inherit the `font-weight` (applied by a rule above).
406− * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
414− ========================================================================== */
417− * Remove most spacing between table cells.
421− border-collapse: collapse;
429−</style><style type="text/css">/** ************************************************************************* *
430− ** CSS for HTML docs (e.g. Pursuit)
434− ** This CSS file is structured into several sections, from general to
435− ** specific, and (mostly) alphabetically within the sections.
437− ** Several global element styles are used. This is not encouraged and should
438− ** be kept to a minimum. If you want to add new styles you'll most likely
439− ** want to add a new CSS component. See the Components section for examples.
441− ** CSS components use three simple naming ideas from the BEM system:
442− ** - Block: `.my-component`
443− ** - Element: `.my-component__item`
444− ** - Modifier: `.my-component.my-component--highlighted`
447− ** <div .my-component>
448− ** <div .my-component__item>
449− ** <div .my-component__item>
451− ** <div .my-component.my-component--highlighted>
452− ** <div .my-component__item>
453− ** <div .my-component__item>
455− ** Components can be nested.
460− ** Typographic choices for sizes, line-heights and margins are based on a
461− ** musical major third scale (4:5). This gives us a way to find numbers
462− ** and relationships between them that are perceived as harmonic.
464− ** To make use of this modular scale, use a ratio of the form
466− ** where n ∈ ℤ, -6 ≤ n ≤ 8.
470− ** This CSS is generated by less. To compile it:
472− ** npm install [-g] less
473− ** lessc app/static/pursuit.less > app/static/pursuit.css
475− ** ************************************************************************* */
476−/* Section: Variables
477− * ========================================================================== */
478−/* Section: Document Styles
479− * ========================================================================== */
481− color-scheme: light dark;
484− box-sizing: border-box;
485− /* This overflow rule prevents everything from shifting slightly to the side
486− when moving from a page which isn't large enough to generate a scrollbar
493− box-sizing: inherit;
496− background-color: #ffffff;
498− font-family: "Roboto", sans-serif;
502−@media (prefers-color-scheme: dark) {
504− background-color: #141417;
508−@media (min-width: 38em) {
513−/* Section: Utility Classes
514− * ========================================================================== */
526−/* Content hidden like this will still be read by a screen reader */
536− * ========================================================================== */
543− padding-right: 20px;
551− margin-bottom: 3.08em;
554− margin-bottom: 2.44em;
556−@media (min-width: 52em) {
559− padding-right: 30px;
572−@media (min-width: 66em) {
578− * Based on http://www.lwis.net/journal/2008/02/08/pure-css-sticky-footer/
579− * Except we don't support IE6
580− * -------------------------------------------------------------------------- */
585−.everything-except-footer {
587− padding-bottom: 3em;
595− background-color: #1d222d;
598−@media (prefers-color-scheme: dark) {
600− background-color: #1d222d;
607−/* Section: Element Styles
609− * Have as few of these as possible and keep them general, because they will
610− * influence every component hereafter.
611− * ========================================================================== */
613− background-color: #f1f5f9;
615−@media (prefers-color-scheme: dark) {
617− background-color: #232327;
623− text-decoration: none;
626−@media (prefers-color-scheme: dark) {
634− text-decoration: none;
636−@media (prefers-color-scheme: dark) {
643− background-color: #f1f5f9;
646− font-family: "Roboto Mono", monospace;
649−@media (prefers-color-scheme: dark) {
652− background-color: #232327;
658− background-color: #dfe8f1;
660−@media (prefers-color-scheme: dark) {
663− background-color: #2f2f34;
669− white-space: pre-wrap;
670− word-wrap: break-word;
674− letter-spacing: -0.2em;
678− font-weight: normal;
682− letter-spacing: 0.33em;
687−@media (prefers-color-scheme: dark) {
695− padding: 1em 1.25rem;
696− /* Using rem here to align with lists etc. */
702− background-color: transparent;
709− line-height: inherit;
721− letter-spacing: -0.5px;
723− margin-top: 1.563rem;
724− margin-bottom: 1.25rem;
726−@media (min-width: 52em) {
729− margin-top: 5.96rem;
734− font-weight: normal;
736− margin-top: 3.052rem;
737− margin-bottom: 1rem;
741− font-weight: normal;
743− margin-top: 2.441rem;
744− margin-bottom: 1rem;
748− font-weight: normal;
749− margin-top: 2.441rem;
750− margin-bottom: 1rem;
763− background-color: #cccccc;
765−@media (prefers-color-scheme: dark) {
767− background-color: #43434e;
777− margin-bottom: 1rem;
780− border-bottom: 1px solid #cccccc;
781− border-collapse: collapse;
784− margin-bottom: 1rem;
787−@media (prefers-color-scheme: dark) {
789− border-bottom-color: #43434e;
795− padding: 0.41em 0.51em;
798− border-top: 1px solid #cccccc;
800−@media (prefers-color-scheme: dark) {
802− border-top-color: #43434e;
814− list-style-type: none;
816− margin-bottom: 1rem;
821− padding-left: 1.25em;
827− display: inline-block;
828− margin-left: -1.25em;
831−@media (prefers-color-scheme: dark) {
836−/* Tying this tightly to ul at the moment because it's a slight variation thereof */
837−ul.ul--search li::before {
840− transform: rotate(-45deg);
844− margin-bottom: 1rem;
845− padding-left: 1.25em;
851−/* Section: Components
852− * ========================================================================== */
854− * -------------------------------------------------------------------------- */
858− display: inline-block;
859− background-color: #000000;
860− border-radius: 1.3em;
869−@media (prefers-color-scheme: dark) {
871− background-color: #dedede;
875−.badge.badge--package {
876− background-color: #c4953a;
877− letter-spacing: -0.1em;
879−@media (prefers-color-scheme: dark) {
880− .badge.badge--package {
881− background-color: #d8ac55;
884−.badge.badge--module {
885− background-color: #75B134;
887−/* Component: Declarations
888− * -------------------------------------------------------------------------- */
891− padding-bottom: 0.328em;
892− margin-bottom: 0.262em;
902−.decl__anchor:visited {
907−@media (prefers-color-scheme: dark) {
909− .decl__anchor:visited {
913−.decl__anchor:hover {
916−@media (prefers-color-scheme: dark) {
917− .decl__anchor:hover {
922− background-color: transparent;
924− border-top: 1px solid #cccccc;
925− border-bottom: 1px solid #cccccc;
928−@media (prefers-color-scheme: dark) {
930− border-top-color: #43434e;
931− border-bottom-color: #43434e;
934−.decl__signature code {
937− padding-left: 2.441em;
938− text-indent: -2.441em;
939− white-space: normal;
942− font-family: "Roboto", sans-serif;
944− font-weight: normal;
946−/* See https://stackoverflow.com/a/32162038
947− Content licensed under CC BY-SA 3.0
949−.decl__role_hover[title] {
950− /* Remove line that appears under abbr element */
951− border-bottom: none;
952− text-decoration: none;
953− /* Ensure cursor doesn't change to question mark */
956−.decl__role_nominal::after {
959−.decl__role_phantom::after {
963− border-bottom: 1px solid #cccccc;
965−@media (prefers-color-scheme: dark) {
967− border-bottom-color: #43434e;
970−:target .decl__signature,
971−:target .decl__signature code {
972− /* We want the background to be transparent, even when the parent is a target */
973− background-color: transparent;
975−.decl__body .keyword,
976−.decl__body .syntax {
979−@media (prefers-color-scheme: dark) {
980− .decl__body .keyword,
981− .decl__body .syntax {
985−.decl__child_comments {
987− margin-bottom: 1rem;
989−/* Component: Dependency Link
990− * -------------------------------------------------------------------------- */
992− /* Currently no root styles, but keep the class as a namespace */
995− display: inline-block;
996− margin-right: 0.41em;
1000− display: inline-block;
1004−@media (prefers-color-scheme: dark) {
1005− .deplink__version {
1009−/* Component: Grouped List
1010− * -------------------------------------------------------------------------- */
1012− border-top: 1px solid #cccccc;
1013− margin: 0 0 2.44em 0;
1015−@media (prefers-color-scheme: dark) {
1017− border-top-color: #43434e;
1020−.grouped-list__title {
1024− letter-spacing: 1px;
1025− margin: 0.8em 0 -0.1em 0;
1026− text-transform: uppercase;
1028−@media (prefers-color-scheme: dark) {
1029− .grouped-list__title {
1030− border-top-color: #a0a0a0;
1033−.grouped-list__item {
1036−/* Component: Message
1037− * -------------------------------------------------------------------------- */
1040− border-radius: 5px;
1041− padding: 1em !important;
1043−.message.message--error {
1044− background-color: #fff0f0;
1045− border-color: #c85050;
1047−@media (prefers-color-scheme: dark) {
1048− .message.message--error {
1049− background-color: #6b0e0e;
1050− border-color: #c85050;
1053−.message.message--not-available {
1054− background-color: #f0f096;
1055− border-color: #e3e33d;
1057−@media (prefers-color-scheme: dark) {
1058− .message.message--not-available {
1059− background-color: #56560b;
1060− border-color: #b0b017;
1063−/* Component: Multi Col
1064− * Multiple columns side by side
1065− * -------------------------------------------------------------------------- */
1067− margin-bottom: 2.44em;
1071− padding-right: 1em;
1072− position: relative;
1075−@media (min-width: 38em) and (max-width: 51.999999em) {
1080− .multi-col__col:nth-child(2n+3) {
1084−@media (min-width: 52em) {
1089− .multi-col__col:nth-child(3n+4) {
1093−/* Component: Page Title
1094− * -------------------------------------------------------------------------- */
1096− margin: 4.77em 0 1.56em;
1097− padding-bottom: 1.25em;
1098− position: relative;
1100−.page-title__title {
1101− margin: 0 0 0 -0.05em;
1102− /* Visually align on left edge */
1104−.page-title__label {
1105− position: relative;
1109− letter-spacing: 1px;
1110− margin-bottom: -0.8em;
1111− text-transform: uppercase;
1114−@media (prefers-color-scheme: dark) {
1115− .page-title__label {
1119−/* Component: Top Banner
1120− * -------------------------------------------------------------------------- */
1122− background-color: #1d222d;
1124− font-weight: normal;
1126−@media (prefers-color-scheme: dark) {
1128− background-color: #1d222d;
1133−.top-banner__logo:visited {
1141−@media (prefers-color-scheme: dark) {
1143− .top-banner__logo:visited {
1147−.top-banner__logo:hover {
1149− text-decoration: none;
1152− margin-bottom: 1.25em;
1154−.top-banner__form input {
1155− border: 1px solid #1d222d;
1156− border-radius: 3px;
1157− background-color: #ffffff;
1161− padding: 0.21em 0.512em;
1164−@media (prefers-color-scheme: dark) {
1165− .top-banner__form input {
1166− border-color: #1d222d;
1167− background-color: #141417;
1171−.top-banner__actions {
1175−.top-banner__actions__item {
1176− display: inline-block;
1179− padding-left: 1.25em;
1181−.top-banner__actions__item:first-child {
1184−.top-banner__actions__item a,
1185−.top-banner__actions__item a:visited {
1188−@media (prefers-color-scheme: dark) {
1189− .top-banner__actions__item a,
1190− .top-banner__actions__item a:visited {
1194−.top-banner__actions__item a:hover {
1197−@media (prefers-color-scheme: dark) {
1198− .top-banner__actions__item a:hover {
1202−@media (min-width: 38em) {
1203− .top-banner__logo {
1207− .top-banner__form {
1213− .top-banner__actions {
1218−/* Component: Search Results
1219− * -------------------------------------------------------------------------- */
1220−.result.result--empty {
1225− margin-bottom: 0.2rem;
1228− margin-left: -0.1em;
1230−.result__body > *:first-child {
1231− margin-top: 0!important;
1233−.result__body > *:last-child {
1234− margin-bottom: 0!important;
1236−.result__signature {
1237− background-color: transparent;
1239− border-top: 1px solid #cccccc;
1240− border-bottom: 1px solid #cccccc;
1241− padding: 0.328em 0;
1243−@media (prefers-color-scheme: dark) {
1244− .result__signature {
1245− border-top-color: #43434e;
1246− border-bottom-color: #43434e;
1249−.result__signature code {
1251− padding-left: 2.441em;
1252− text-indent: -2.441em;
1253− white-space: normal;
1256− margin-top: 0.2rem;
1258−.result__actions__item {
1261−.result__actions__item + .result__actions__item {
1262− margin-left: 0.65em;
1264−/* Component: Version Selector
1265− * -------------------------------------------------------------------------- */
1267− margin-bottom: 0.8em;
1269−@media (min-width: 38em) {
1270− .version-selector {
1271− position: absolute;
1278− * These styles should be cleaned up
1279− * ========================================================================== */
1280−/* Help paragraphs */
1285− /* FIXME: target with class */
1288−/* Section: Markdown
1289− * Github rendered README
1290− * ========================================================================== */
1293− Useful for narrow screens, such as mobiles. Documentation often contains URLs
1294− which would otherwise force the page to become wider, and force creation of
1295− horizontal scrollbars. Yuck.
1297− word-wrap: break-word;
1299−.markdown-body > *:first-child {
1300− margin-top: 0 !important;
1302−.markdown-body > *:last-child {
1303− margin-bottom: 0 !important;
1305−.markdown-body a:not([href]) {
1307− text-decoration: none;
1309−.markdown-body blockquote {
1313− border-left: 0.25em solid #ddd;
1315−@media (prefers-color-scheme: dark) {
1316− .markdown-body blockquote {
1317− border-left-color: #444;
1320−.markdown-body blockquote > :first-child {
1323−.markdown-body blockquote > :last-child {
1326−.markdown-body .anchor {
1327− /* We hide the anchor because the link doesn't point to a valid location */
1330−.markdown-body .pl-k {
1334−@media (prefers-color-scheme: dark) {
1335− .markdown-body .pl-k {
1339−.markdown-body .pl-c1,
1340−.markdown-body .pl-en {
1341− /* Not really sure what this is */
1344−.markdown-body .pl-s {
1345− /* String literals */
1348−.markdown-body .pl-cce {
1349− /* String literal escape sequences */
1352−.markdown-body .pl-smi {
1353− /* type variables? */
1356−</style></head><body><div class="everything-except-footer"><div class="top-banner clearfix"><div class="container clearfix"><div style="float: left; font-size: 2.44em; font-weight: 300; line-height: 90px; margin: 0">PureScript API documentation</div><div class="top-banner__actions"><div class="top-banner__actions__item"><a href="index.html">Index</a></div></div></div></div><main class="container clearfix" role="main"><div class="page-title clearfix"><div class="page-title__label">Module</div><h1 class="page-title__title">Ansi.Output</h1></div><div class="col col--main"><p>Convenience functions to simplify outputting ANSI escape codes to
1358−<div class="decl" id="v:withGraphics"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:withGraphics">#</a><span>withGraphics</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Output.html#v:withGraphics" title="Ansi.Output.withGraphics"><span class="ident">withGraphics</span></a> <span class="syntax">::</span> <a href="Data.List.Types.html#t:NonEmptyList" title="Data.List.Types.NonEmptyList"><span class="ctor">NonEmptyList</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a> <span class="syntax">-></span> <a href="Prim.html#t:String" title="Prim.String"><span class="ctor">String</span></a> <span class="syntax">-></span> <a href="Prim.html#t:String" title="Prim.String"><span class="ctor">String</span></a></code></pre><p>Wrap the given text in escape codes corresponding to the given parameters.
1360−<pre class="purescript"><code>Console.log $ withGraphics (bold <> underline <> foreground BrightRed) "hello world"
1362−<p>would print "hello world" to the terminal, bold, underlined, and in bright
1363−red, and then reset (so that further logging to the console uses the
1364−normal color and style).</p>
1365−<p>This function simply wraps the given text in an escape code and a reset
1366−code, so that it is a little more comfortable to use than the functions
1367−in <code>Ansi.Codes</code>.</p>
1368−</div></div><div class="decl" id="v:bold"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:bold">#</a><span>bold</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Output.html#v:bold" title="Ansi.Output.bold"><span class="ident">bold</span></a> <span class="syntax">::</span> <a href="Data.List.Types.html#t:NonEmptyList" title="Data.List.Types.NonEmptyList"><span class="ctor">NonEmptyList</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></pre></div></div><div class="decl" id="v:dim"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:dim">#</a><span>dim</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Output.html#v:dim" title="Ansi.Output.dim"><span class="ident">dim</span></a> <span class="syntax">::</span> <a href="Data.List.Types.html#t:NonEmptyList" title="Data.List.Types.NonEmptyList"><span class="ctor">NonEmptyList</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></pre></div></div><div class="decl" id="v:italic"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:italic">#</a><span>italic</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Output.html#v:italic" title="Ansi.Output.italic"><span class="ident">italic</span></a> <span class="syntax">::</span> <a href="Data.List.Types.html#t:NonEmptyList" title="Data.List.Types.NonEmptyList"><span class="ctor">NonEmptyList</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></pre></div></div><div class="decl" id="v:underline"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:underline">#</a><span>underline</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Output.html#v:underline" title="Ansi.Output.underline"><span class="ident">underline</span></a> <span class="syntax">::</span> <a href="Data.List.Types.html#t:NonEmptyList" title="Data.List.Types.NonEmptyList"><span class="ctor">NonEmptyList</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></pre></div></div><div class="decl" id="v:inverse"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:inverse">#</a><span>inverse</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Output.html#v:inverse" title="Ansi.Output.inverse"><span class="ident">inverse</span></a> <span class="syntax">::</span> <a href="Data.List.Types.html#t:NonEmptyList" title="Data.List.Types.NonEmptyList"><span class="ctor">NonEmptyList</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></pre></div></div><div class="decl" id="v:strikethrough"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:strikethrough">#</a><span>strikethrough</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Output.html#v:strikethrough" title="Ansi.Output.strikethrough"><span class="ident">strikethrough</span></a> <span class="syntax">::</span> <a href="Data.List.Types.html#t:NonEmptyList" title="Data.List.Types.NonEmptyList"><span class="ctor">NonEmptyList</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></pre></div></div><div class="decl" id="v:foreground"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:foreground">#</a><span>foreground</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Output.html#v:foreground" title="Ansi.Output.foreground"><span class="ident">foreground</span></a> <span class="syntax">::</span> <a href="Ansi.Codes.html#t:Color" title="Ansi.Codes.Color"><span class="ctor">Color</span></a> <span class="syntax">-></span> <a href="Data.List.Types.html#t:NonEmptyList" title="Data.List.Types.NonEmptyList"><span class="ctor">NonEmptyList</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></pre></div></div><div class="decl" id="v:background"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:background">#</a><span>background</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Ansi.Output.html#v:background" title="Ansi.Output.background"><span class="ident">background</span></a> <span class="syntax">::</span> <a href="Ansi.Codes.html#t:Color" title="Ansi.Codes.Color"><span class="ctor">Color</span></a> <span class="syntax">-></span> <a href="Data.List.Types.html#t:NonEmptyList" title="Data.List.Types.NonEmptyList"><span class="ctor">NonEmptyList</span></a> <a href="Ansi.Codes.html#t:GraphicsParam" title="Ansi.Codes.GraphicsParam"><span class="ctor">GraphicsParam</span></a></code></pre></div></div></div><div class="col col--aside"><h3>Modules</h3><ul><li><a href="Ansi.Codes.html">Ansi.Codes</a></li><li><a href="Ansi.Output.html">Ansi.Output</a></li><li><a href="Bolson.Control.html">Bolson.Control</a></li><li><a href="Bolson.Core.html">Bolson.Core</a></li><li><a href="Control.Alt.html">Control.Alt</a></li><li><a href="Control.Alternative.html">Control.Alternative</a></li><li><a href="Control.Applicative.html">Control.Applicative</a></li><li><a href="Control.Apply.html">Control.Apply</a></li><li><a href="Control.Biapplicative.html">Control.Biapplicative</a></li><li><a href="Control.Biapply.html">Control.Biapply</a></li><li><a href="Control.Bind.html">Control.Bind</a></li><li><a href="Control.Category.html">Control.Category</a></li><li><a href="Control.Comonad.html">Control.Comonad</a></li><li><a href="Control.Comonad.Cofree.html">Control.Comonad.Cofree</a></li><li><a href="Control.Comonad.Cofree.Class.html">Control.Comonad.Cofree.Class</a></li><li><a href="Control.Comonad.Env.html">Control.Comonad.Env</a></li><li><a href="Control.Comonad.Env.Class.html">Control.Comonad.Env.Class</a></li><li><a href="Control.Comonad.Env.Trans.html">Control.Comonad.Env.Trans</a></li><li><a href="Control.Comonad.Store.html">Control.Comonad.Store</a></li><li><a href="Control.Comonad.Store.Class.html">Control.Comonad.Store.Class</a></li><li><a href="Control.Comonad.Store.Trans.html">Control.Comonad.Store.Trans</a></li><li><a href="Control.Comonad.Traced.html">Control.Comonad.Traced</a></li><li><a href="Control.Comonad.Traced.Class.html">Control.Comonad.Traced.Class</a></li><li><a href="Control.Comonad.Traced.Trans.html">Control.Comonad.Traced.Trans</a></li><li><a href="Control.Comonad.Trans.Class.html">Control.Comonad.Trans.Class</a></li><li><a href="Control.Extend.html">Control.Extend</a></li><li><a href="Control.Lazy.html">Control.Lazy</a></li><li><a href="Control.Monad.html">Control.Monad</a></li><li><a href="Control.Monad.Cont.html">Control.Monad.Cont</a></li><li><a href="Control.Monad.Cont.Class.html">Control.Monad.Cont.Class</a></li><li><a href="Control.Monad.Cont.Trans.html">Control.Monad.Cont.Trans</a></li><li><a href="Control.Monad.Error.Class.html">Control.Monad.Error.Class</a></li><li><a href="Control.Monad.Except.html">Control.Monad.Except</a></li><li><a href="Control.Monad.Except.Trans.html">Control.Monad.Except.Trans</a></li><li><a href="Control.Monad.Fork.Class.html">Control.Monad.Fork.Class</a></li><li><a href="Control.Monad.Free.html">Control.Monad.Free</a></li><li><a href="Control.Monad.Free.Class.html">Control.Monad.Free.Class</a></li><li><a href="Control.Monad.Gen.html">Control.Monad.Gen</a></li><li><a href="Control.Monad.Gen.Class.html">Control.Monad.Gen.Class</a></li><li><a href="Control.Monad.Gen.Common.html">Control.Monad.Gen.Common</a></li><li><a href="Control.Monad.Identity.Trans.html">Control.Monad.Identity.Trans</a></li><li><a href="Control.Monad.List.Trans.html">Control.Monad.List.Trans</a></li><li><a href="Control.Monad.Maybe.Trans.html">Control.Monad.Maybe.Trans</a></li><li><a href="Control.Monad.Morph.html">Control.Monad.Morph</a></li><li><a href="Control.Monad.RWS.html">Control.Monad.RWS</a></li><li><a href="Control.Monad.RWS.Trans.html">Control.Monad.RWS.Trans</a></li><li><a href="Control.Monad.Reader.html">Control.Monad.Reader</a></li><li><a href="Control.Monad.Reader.Class.html">Control.Monad.Reader.Class</a></li><li><a href="Control.Monad.Reader.Trans.html">Control.Monad.Reader.Trans</a></li><li><a href="Control.Monad.Rec.Class.html">Control.Monad.Rec.Class</a></li><li><a href="Control.Monad.ST.html">Control.Monad.ST</a></li><li><a href="Control.Monad.ST.Class.html">Control.Monad.ST.Class</a></li><li><a href="Control.Monad.ST.Global.html">Control.Monad.ST.Global</a></li><li><a href="Control.Monad.ST.Internal.html">Control.Monad.ST.Internal</a></li><li><a href="Control.Monad.ST.Ref.html">Control.Monad.ST.Ref</a></li><li><a href="Control.Monad.ST.Uncurried.html">Control.Monad.ST.Uncurried</a></li><li><a href="Control.Monad.State.html">Control.Monad.State</a></li><li><a href="Control.Monad.State.Class.html">Control.Monad.State.Class</a></li><li><a href="Control.Monad.State.Trans.html">Control.Monad.State.Trans</a></li><li><a href="Control.Monad.Trampoline.html">Control.Monad.Trampoline</a></li><li><a href="Control.Monad.Trans.Class.html">Control.Monad.Trans.Class</a></li><li><a href="Control.Monad.Writer.html">Control.Monad.Writer</a></li><li><a href="Control.Monad.Writer.Class.html">Control.Monad.Writer.Class</a></li><li><a href="Control.Monad.Writer.Trans.html">Control.Monad.Writer.Trans</a></li><li><a href="Control.MonadPlus.html">Control.MonadPlus</a></li><li><a href="Control.Parallel.html">Control.Parallel</a></li><li><a href="Control.Parallel.Class.html">Control.Parallel.Class</a></li><li><a href="Control.Plus.html">Control.Plus</a></li><li><a href="Control.Semigroupoid.html">Control.Semigroupoid</a></li><li><a href="Data.Array.html">Data.Array</a></li><li><a href="Data.Array.NonEmpty.html">Data.Array.NonEmpty</a></li><li><a href="Data.Array.NonEmpty.Internal.html">Data.Array.NonEmpty.Internal</a></li><li><a href="Data.Array.Partial.html">Data.Array.Partial</a></li><li><a href="Data.Array.ST.html">Data.Array.ST</a></li><li><a href="Data.Array.ST.Iterator.html">Data.Array.ST.Iterator</a></li><li><a href="Data.Array.ST.Partial.html">Data.Array.ST.Partial</a></li><li><a href="Data.ArrayBuffer.Types.html">Data.ArrayBuffer.Types</a></li><li><a href="Data.Bifoldable.html">Data.Bifoldable</a></li><li><a href="Data.Bifunctor.html">Data.Bifunctor</a></li><li><a href="Data.Bifunctor.Join.html">Data.Bifunctor.Join</a></li><li><a href="Data.Bitraversable.html">Data.Bitraversable</a></li><li><a href="Data.Boolean.html">Data.Boolean</a></li><li><a href="Data.BooleanAlgebra.html">Data.BooleanAlgebra</a></li><li><a href="Data.Bounded.html">Data.Bounded</a></li><li><a href="Data.Bounded.Generic.html">Data.Bounded.Generic</a></li><li><a href="Data.CatList.html">Data.CatList</a></li><li><a href="Data.CatQueue.html">Data.CatQueue</a></li><li><a href="Data.Char.html">Data.Char</a></li><li><a href="Data.Char.Gen.html">Data.Char.Gen</a></li><li><a href="Data.CommutativeRing.html">Data.CommutativeRing</a></li><li><a href="Data.Compactable.html">Data.Compactable</a></li><li><a href="Data.Comparison.html">Data.Comparison</a></li><li><a href="Data.Const.html">Data.Const</a></li><li><a href="Data.Coyoneda.html">Data.Coyoneda</a></li><li><a href="Data.Date.html">Data.Date</a></li><li><a href="Data.Date.Component.html">Data.Date.Component</a></li><li><a href="Data.Date.Component.Gen.html">Data.Date.Component.Gen</a></li><li><a href="Data.Date.Gen.html">Data.Date.Gen</a></li><li><a href="Data.DateTime.html">Data.DateTime</a></li><li><a href="Data.DateTime.Gen.html">Data.DateTime.Gen</a></li><li><a href="Data.DateTime.Instant.html">Data.DateTime.Instant</a></li><li><a href="Data.Decidable.html">Data.Decidable</a></li><li><a href="Data.Decide.html">Data.Decide</a></li><li><a href="Data.Distributive.html">Data.Distributive</a></li><li><a href="Data.Divide.html">Data.Divide</a></li><li><a href="Data.Divisible.html">Data.Divisible</a></li><li><a href="Data.DivisionRing.html">Data.DivisionRing</a></li><li><a href="Data.Either.html">Data.Either</a></li><li><a href="Data.Either.Inject.html">Data.Either.Inject</a></li><li><a href="Data.Either.Nested.html">Data.Either.Nested</a></li><li><a href="Data.Enum.html">Data.Enum</a></li><li><a href="Data.Enum.Gen.html">Data.Enum.Gen</a></li><li><a href="Data.Enum.Generic.html">Data.Enum.Generic</a></li><li><a href="Data.Eq.html">Data.Eq</a></li><li><a href="Data.Eq.Generic.html">Data.Eq.Generic</a></li><li><a href="Data.Equivalence.html">Data.Equivalence</a></li><li><a href="Data.EuclideanRing.html">Data.EuclideanRing</a></li><li><a href="Data.Exists.html">Data.Exists</a></li><li><a href="Data.FastVect.Common.html">Data.FastVect.Common</a></li><li><a href="Data.FastVect.Common.Matrix.html">Data.FastVect.Common.Matrix</a></li><li><a href="Data.FastVect.FastVect.html">Data.FastVect.FastVect</a></li><li><a href="Data.FastVect.FastVect.Matrix.html">Data.FastVect.FastVect.Matrix</a></li><li><a href="Data.FastVect.MinLenVect.html">Data.FastVect.MinLenVect</a></li><li><a href="Data.FastVect.Sparse.Read.html">Data.FastVect.Sparse.Read</a></li><li><a href="Data.FastVect.Sparse.Write.html">Data.FastVect.Sparse.Write</a></li><li><a href="Data.Field.html">Data.Field</a></li><li><a href="Data.Filterable.html">Data.Filterable</a></li><li><a href="Data.Foldable.html">Data.Foldable</a></li><li><a href="Data.FoldableWithIndex.html">Data.FoldableWithIndex</a></li><li><a href="Data.Function.html">Data.Function</a></li><li><a href="Data.Function.Uncurried.html">Data.Function.Uncurried</a></li><li><a href="Data.Functor.html">Data.Functor</a></li><li><a href="Data.Functor.App.html">Data.Functor.App</a></li><li><a href="Data.Functor.Clown.html">Data.Functor.Clown</a></li><li><a href="Data.Functor.Compose.html">Data.Functor.Compose</a></li><li><a href="Data.Functor.Contravariant.html">Data.Functor.Contravariant</a></li><li><a href="Data.Functor.Coproduct.html">Data.Functor.Coproduct</a></li><li><a href="Data.Functor.Coproduct.Inject.html">Data.Functor.Coproduct.Inject</a></li><li><a href="Data.Functor.Coproduct.Nested.html">Data.Functor.Coproduct.Nested</a></li><li><a href="Data.Functor.Costar.html">Data.Functor.Costar</a></li><li><a href="Data.Functor.Flip.html">Data.Functor.Flip</a></li><li><a href="Data.Functor.Invariant.html">Data.Functor.Invariant</a></li><li><a href="Data.Functor.Joker.html">Data.Functor.Joker</a></li><li><a href="Data.Functor.Product.html">Data.Functor.Product</a></li><li><a href="Data.Functor.Product.Nested.html">Data.Functor.Product.Nested</a></li><li><a href="Data.Functor.Product2.html">Data.Functor.Product2</a></li><li><a href="Data.Functor.Variant.html">Data.Functor.Variant</a></li><li><a href="Data.FunctorWithIndex.html">Data.FunctorWithIndex</a></li><li><a href="Data.Generic.Rep.html">Data.Generic.Rep</a></li><li><a href="Data.HeytingAlgebra.html">Data.HeytingAlgebra</a></li><li><a href="Data.HeytingAlgebra.Generic.html">Data.HeytingAlgebra.Generic</a></li><li><a href="Data.Identity.html">Data.Identity</a></li><li><a href="Data.Int.html">Data.Int</a></li><li><a href="Data.Int.Bits.html">Data.Int.Bits</a></li><li><a href="Data.Interval.html">Data.Interval</a></li><li><a href="Data.Interval.Duration.html">Data.Interval.Duration</a></li><li><a href="Data.Interval.Duration.Iso.html">Data.Interval.Duration.Iso</a></li><li><a href="Data.JSDate.html">Data.JSDate</a></li><li><a href="Data.Lazy.html">Data.Lazy</a></li><li><a href="Data.List.html">Data.List</a></li><li><a href="Data.List.Internal.html">Data.List.Internal</a></li><li><a href="Data.List.Lazy.html">Data.List.Lazy</a></li><li><a href="Data.List.Lazy.NonEmpty.html">Data.List.Lazy.NonEmpty</a></li><li><a href="Data.List.Lazy.Types.html">Data.List.Lazy.Types</a></li><li><a href="Data.List.NonEmpty.html">Data.List.NonEmpty</a></li><li><a href="Data.List.Partial.html">Data.List.Partial</a></li><li><a href="Data.List.Types.html">Data.List.Types</a></li><li><a href="Data.List.ZipList.html">Data.List.ZipList</a></li><li><a href="Data.Map.html">Data.Map</a></li><li><a href="Data.Map.Gen.html">Data.Map.Gen</a></li><li><a href="Data.Map.Internal.html">Data.Map.Internal</a></li><li><a href="Data.Maybe.html">Data.Maybe</a></li><li><a href="Data.Maybe.First.html">Data.Maybe.First</a></li><li><a href="Data.Maybe.Last.html">Data.Maybe.Last</a></li><li><a href="Data.MediaType.html">Data.MediaType</a></li><li><a href="Data.MediaType.Common.html">Data.MediaType.Common</a></li><li><a href="Data.Monoid.html">Data.Monoid</a></li><li><a href="Data.Monoid.Additive.html">Data.Monoid.Additive</a></li><li><a href="Data.Monoid.Alternate.html">Data.Monoid.Alternate</a></li><li><a href="Data.Monoid.Conj.html">Data.Monoid.Conj</a></li><li><a href="Data.Monoid.Disj.html">Data.Monoid.Disj</a></li><li><a href="Data.Monoid.Dual.html">Data.Monoid.Dual</a></li><li><a href="Data.Monoid.Endo.html">Data.Monoid.Endo</a></li><li><a href="Data.Monoid.Generic.html">Data.Monoid.Generic</a></li><li><a href="Data.Monoid.Multiplicative.html">Data.Monoid.Multiplicative</a></li><li><a href="Data.NaturalTransformation.html">Data.NaturalTransformation</a></li><li><a href="Data.Newtype.html">Data.Newtype</a></li><li><a href="Data.NonEmpty.html">Data.NonEmpty</a></li><li><a href="Data.Nullable.html">Data.Nullable</a></li><li><a href="Data.Number.html">Data.Number</a></li><li><a href="Data.Number.Approximate.html">Data.Number.Approximate</a></li><li><a href="Data.Number.Format.html">Data.Number.Format</a></li><li><a href="Data.Op.html">Data.Op</a></li><li><a href="Data.Ord.html">Data.Ord</a></li><li><a href="Data.Ord.Down.html">Data.Ord.Down</a></li><li><a href="Data.Ord.Generic.html">Data.Ord.Generic</a></li><li><a href="Data.Ord.Max.html">Data.Ord.Max</a></li><li><a href="Data.Ord.Min.html">Data.Ord.Min</a></li><li><a href="Data.Ordering.html">Data.Ordering</a></li><li><a href="Data.Posix.html">Data.Posix</a></li><li><a href="Data.Posix.Signal.html">Data.Posix.Signal</a></li><li><a href="Data.Predicate.html">Data.Predicate</a></li><li><a href="Data.Profunctor.html">Data.Profunctor</a></li><li><a href="Data.Profunctor.Choice.html">Data.Profunctor.Choice</a></li><li><a href="Data.Profunctor.Closed.html">Data.Profunctor.Closed</a></li><li><a href="Data.Profunctor.Cochoice.html">Data.Profunctor.Cochoice</a></li><li><a href="Data.Profunctor.Costrong.html">Data.Profunctor.Costrong</a></li><li><a href="Data.Profunctor.Join.html">Data.Profunctor.Join</a></li><li><a href="Data.Profunctor.Split.html">Data.Profunctor.Split</a></li><li><a href="Data.Profunctor.Star.html">Data.Profunctor.Star</a></li><li><a href="Data.Profunctor.Strong.html">Data.Profunctor.Strong</a></li><li><a href="Data.Reflectable.html">Data.Reflectable</a></li><li><a href="Data.Ring.html">Data.Ring</a></li><li><a href="Data.Ring.Generic.html">Data.Ring.Generic</a></li><li><a href="Data.Semigroup.html">Data.Semigroup</a></li><li><a href="Data.Semigroup.First.html">Data.Semigroup.First</a></li><li><a href="Data.Semigroup.Foldable.html">Data.Semigroup.Foldable</a></li><li><a href="Data.Semigroup.Generic.html">Data.Semigroup.Generic</a></li><li><a href="Data.Semigroup.Last.html">Data.Semigroup.Last</a></li><li><a href="Data.Semigroup.Traversable.html">Data.Semigroup.Traversable</a></li><li><a href="Data.Semiring.html">Data.Semiring</a></li><li><a href="Data.Semiring.Generic.html">Data.Semiring.Generic</a></li><li><a href="Data.Set.html">Data.Set</a></li><li><a href="Data.Set.NonEmpty.html">Data.Set.NonEmpty</a></li><li><a href="Data.Show.html">Data.Show</a></li><li><a href="Data.Show.Generic.html">Data.Show.Generic</a></li><li><a href="Data.String.html">Data.String</a></li><li><a href="Data.String.CaseInsensitive.html">Data.String.CaseInsensitive</a></li><li><a href="Data.String.CodePoints.html">Data.String.CodePoints</a></li><li><a href="Data.String.CodeUnits.html">Data.String.CodeUnits</a></li><li><a href="Data.String.Common.html">Data.String.Common</a></li><li><a href="Data.String.Gen.html">Data.String.Gen</a></li><li><a href="Data.String.NonEmpty.html">Data.String.NonEmpty</a></li><li><a href="Data.String.NonEmpty.CaseInsensitive.html">Data.String.NonEmpty.CaseInsensitive</a></li><li><a href="Data.String.NonEmpty.CodePoints.html">Data.String.NonEmpty.CodePoints</a></li><li><a href="Data.String.NonEmpty.CodeUnits.html">Data.String.NonEmpty.CodeUnits</a></li><li><a href="Data.String.NonEmpty.Internal.html">Data.String.NonEmpty.Internal</a></li><li><a href="Data.String.Pattern.html">Data.String.Pattern</a></li><li><a href="Data.String.Regex.html">Data.String.Regex</a></li><li><a href="Data.String.Regex.Flags.html">Data.String.Regex.Flags</a></li><li><a href="Data.String.Regex.Unsafe.html">Data.String.Regex.Unsafe</a></li><li><a href="Data.String.Unsafe.html">Data.String.Unsafe</a></li><li><a href="Data.Symbol.html">Data.Symbol</a></li><li><a href="Data.Time.html">Data.Time</a></li><li><a href="Data.Time.Component.html">Data.Time.Component</a></li><li><a href="Data.Time.Component.Gen.html">Data.Time.Component.Gen</a></li><li><a href="Data.Time.Duration.html">Data.Time.Duration</a></li><li><a href="Data.Time.Duration.Gen.html">Data.Time.Duration.Gen</a></li><li><a href="Data.Time.Gen.html">Data.Time.Gen</a></li><li><a href="Data.Traversable.html">Data.Traversable</a></li><li><a href="Data.Traversable.Accum.html">Data.Traversable.Accum</a></li><li><a href="Data.Traversable.Accum.Internal.html">Data.Traversable.Accum.Internal</a></li><li><a href="Data.TraversableWithIndex.html">Data.TraversableWithIndex</a></li><li><a href="Data.Tuple.html">Data.Tuple</a></li><li><a href="Data.Tuple.Nested.html">Data.Tuple.Nested</a></li><li><a href="Data.Unfoldable.html">Data.Unfoldable</a></li><li><a href="Data.Unfoldable1.html">Data.Unfoldable1</a></li><li><a href="Data.Unit.html">Data.Unit</a></li><li><a href="Data.Variant.html">Data.Variant</a></li><li><a href="Data.Variant.Internal.html">Data.Variant.Internal</a></li><li><a href="Data.Void.html">Data.Void</a></li><li><a href="Data.Witherable.html">Data.Witherable</a></li><li><a href="Data.Yoneda.html">Data.Yoneda</a></li><li><a href="Effect.html">Effect</a></li><li><a href="Effect.AVar.html">Effect.AVar</a></li><li><a href="Effect.Aff.html">Effect.Aff</a></li><li><a href="Effect.Aff.AVar.html">Effect.Aff.AVar</a></li><li><a href="Effect.Aff.Class.html">Effect.Aff.Class</a></li><li><a href="Effect.Aff.Compat.html">Effect.Aff.Compat</a></li><li><a href="Effect.Class.html">Effect.Class</a></li><li><a href="Effect.Class.Console.html">Effect.Class.Console</a></li><li><a href="Effect.Console.html">Effect.Console</a></li><li><a href="Effect.Exception.html">Effect.Exception</a></li><li><a href="Effect.Exception.Unsafe.html">Effect.Exception.Unsafe</a></li><li><a href="Effect.Now.html">Effect.Now</a></li><li><a href="Effect.Ref.html">Effect.Ref</a></li><li><a href="Effect.Timer.html">Effect.Timer</a></li><li><a href="Effect.Uncurried.html">Effect.Uncurried</a></li><li><a href="Effect.Unsafe.html">Effect.Unsafe</a></li><li><a href="FRP.Behavior.html">FRP.Behavior</a></li><li><a href="FRP.Behavior.Keyboard.html">FRP.Behavior.Keyboard</a></li><li><a href="FRP.Behavior.Mouse.html">FRP.Behavior.Mouse</a></li><li><a href="FRP.Behavior.Time.html">FRP.Behavior.Time</a></li><li><a href="FRP.Event.html">FRP.Event</a></li><li><a href="FRP.Event.AnimationFrame.html">FRP.Event.AnimationFrame</a></li><li><a href="FRP.Event.Class.html">FRP.Event.Class</a></li><li><a href="FRP.Event.Keyboard.html">FRP.Event.Keyboard</a></li><li><a href="FRP.Event.Mouse.html">FRP.Event.Mouse</a></li><li><a href="FRP.Event.Time.html">FRP.Event.Time</a></li><li><a href="FRP.Event.VBus.html">FRP.Event.VBus</a></li><li><a href="Foreign.html">Foreign</a></li><li><a href="Foreign.Index.html">Foreign.Index</a></li><li><a href="Foreign.Keys.html">Foreign.Keys</a></li><li><a href="Foreign.Object.html">Foreign.Object</a></li><li><a href="Foreign.Object.Gen.html">Foreign.Object.Gen</a></li><li><a href="Foreign.Object.ST.html">Foreign.Object.ST</a></li><li><a href="Foreign.Object.ST.Unsafe.html">Foreign.Object.ST.Unsafe</a></li><li><a href="Foreign.Object.Unsafe.html">Foreign.Object.Unsafe</a></li><li><a href="Heterogeneous.Folding.html">Heterogeneous.Folding</a></li><li><a href="Heterogeneous.Mapping.html">Heterogeneous.Mapping</a></li><li><a href="Node.Buffer.html">Node.Buffer</a></li><li><a href="Node.Buffer.Class.html">Node.Buffer.Class</a></li><li><a href="Node.Buffer.Constants.html">Node.Buffer.Constants</a></li><li><a href="Node.Buffer.Immutable.html">Node.Buffer.Immutable</a></li><li><a href="Node.Buffer.ST.html">Node.Buffer.ST</a></li><li><a href="Node.Buffer.Types.html">Node.Buffer.Types</a></li><li><a href="Node.Encoding.html">Node.Encoding</a></li><li><a href="Node.EventEmitter.html">Node.EventEmitter</a></li><li><a href="Node.EventEmitter.UtilTypes.html">Node.EventEmitter.UtilTypes</a></li><li><a href="Node.FS.html">Node.FS</a></li><li><a href="Node.FS.Aff.html">Node.FS.Aff</a></li><li><a href="Node.FS.Async.html">Node.FS.Async</a></li><li><a href="Node.FS.Constants.html">Node.FS.Constants</a></li><li><a href="Node.FS.Perms.html">Node.FS.Perms</a></li><li><a href="Node.FS.Stats.html">Node.FS.Stats</a></li><li><a href="Node.FS.Stream.html">Node.FS.Stream</a></li><li><a href="Node.FS.Sync.html">Node.FS.Sync</a></li><li><a href="Node.Path.html">Node.Path</a></li><li><a href="Node.Platform.html">Node.Platform</a></li><li><a href="Node.Process.html">Node.Process</a></li><li><a href="Node.Stream.html">Node.Stream</a></li><li><a href="Node.Stream.Aff.html">Node.Stream.Aff</a></li><li><a href="Node.Symbol.html">Node.Symbol</a></li><li><a href="Partial.html">Partial</a></li><li><a href="Partial.Unsafe.html">Partial.Unsafe</a></li><li><a href="Performance.Minibench.html">Performance.Minibench</a></li><li><a href="Pipes.html">Pipes</a></li><li><a href="Pipes.Core.html">Pipes.Core</a></li><li><a href="Pipes.Internal.html">Pipes.Internal</a></li><li><a href="Pipes.ListT.html">Pipes.ListT</a></li><li><a href="Pipes.Prelude.html">Pipes.Prelude</a></li><li><a href="Prelude.html">Prelude</a></li><li><a href="Prim.html">Prim</a></li><li><a href="Prim.Boolean.html">Prim.Boolean</a></li><li><a href="Prim.Coerce.html">Prim.Coerce</a></li><li><a href="Prim.Int.html">Prim.Int</a></li><li><a href="Prim.Ordering.html">Prim.Ordering</a></li><li><a href="Prim.Row.html">Prim.Row</a></li><li><a href="Prim.RowList.html">Prim.RowList</a></li><li><a href="Prim.Symbol.html">Prim.Symbol</a></li><li><a href="Prim.TypeError.html">Prim.TypeError</a></li><li><a href="Record.html">Record</a></li><li><a href="Record.Builder.html">Record.Builder</a></li><li><a href="Record.Studio.html">Record.Studio</a></li><li><a href="Record.Studio.Keys.html">Record.Studio.Keys</a></li><li><a href="Record.Studio.Map.html">Record.Studio.Map</a></li><li><a href="Record.Studio.MapKind.html">Record.Studio.MapKind</a></li><li><a href="Record.Studio.MapUniform.html">Record.Studio.MapUniform</a></li><li><a href="Record.Studio.Merge.html">Record.Studio.Merge</a></li><li><a href="Record.Studio.SameKeys.html">Record.Studio.SameKeys</a></li><li><a href="Record.Studio.Sequence.html">Record.Studio.Sequence</a></li><li><a href="Record.Studio.Shrink.html">Record.Studio.Shrink</a></li><li><a href="Record.Studio.SingletonRecord.html">Record.Studio.SingletonRecord</a></li><li><a href="Record.Unsafe.html">Record.Unsafe</a></li><li><a href="Record.Unsafe.Union.html">Record.Unsafe.Union</a></li><li><a href="Safe.Coerce.html">Safe.Coerce</a></li><li><a href="Spago.Generated.BuildInfo.html">Spago.Generated.BuildInfo</a></li><li><a href="Test.Spec.html">Test.Spec</a></li><li><a href="Test.Spec.Assertions.html">Test.Spec.Assertions</a></li><li><a href="Test.Spec.Assertions.String.html">Test.Spec.Assertions.String</a></li><li><a href="Test.Spec.Config.html">Test.Spec.Config</a></li><li><a href="Test.Spec.Console.html">Test.Spec.Console</a></li><li><a href="Test.Spec.Reporter.html">Test.Spec.Reporter</a></li><li><a href="Test.Spec.Reporter.Base.html">Test.Spec.Reporter.Base</a></li><li><a href="Test.Spec.Reporter.Console.html">Test.Spec.Reporter.Console</a></li><li><a href="Test.Spec.Reporter.Dot.html">Test.Spec.Reporter.Dot</a></li><li><a href="Test.Spec.Reporter.Spec.html">Test.Spec.Reporter.Spec</a></li><li><a href="Test.Spec.Reporter.Tap.html">Test.Spec.Reporter.Tap</a></li><li><a href="Test.Spec.Reporter.TeamCity.html">Test.Spec.Reporter.TeamCity</a></li><li><a href="Test.Spec.Result.html">Test.Spec.Result</a></li><li><a href="Test.Spec.Runner.html">Test.Spec.Runner</a></li><li><a href="Test.Spec.Runner.Event.html">Test.Spec.Runner.Event</a></li><li><a href="Test.Spec.Speed.html">Test.Spec.Speed</a></li><li><a href="Test.Spec.Style.html">Test.Spec.Style</a></li><li><a href="Test.Spec.Summary.html">Test.Spec.Summary</a></li><li><a href="Test.Spec.Tree.html">Test.Spec.Tree</a></li><li><a href="Type.Data.Boolean.html">Type.Data.Boolean</a></li><li><a href="Type.Data.Ordering.html">Type.Data.Ordering</a></li><li><a href="Type.Data.Symbol.html">Type.Data.Symbol</a></li><li><a href="Type.Equality.html">Type.Equality</a></li><li><a href="Type.Function.html">Type.Function</a></li><li><a href="Type.Prelude.html">Type.Prelude</a></li><li><a href="Type.Proxy.html">Type.Proxy</a></li><li><a href="Type.Row.html">Type.Row</a></li><li><a href="Type.Row.Homogeneous.html">Type.Row.Homogeneous</a></li><li><a href="Type.RowList.html">Type.RowList</a></li><li><a href="Uncurried.RWSE.html">Uncurried.RWSE</a></li><li><a href="Uncurried.RWSET.html">Uncurried.RWSET</a></li><li><a href="Uncurried.Reader.html">Uncurried.Reader</a></li><li><a href="Uncurried.ReaderT.html">Uncurried.ReaderT</a></li><li><a href="Uncurried.State.html">Uncurried.State</a></li><li><a href="Uncurried.StateT.html">Uncurried.StateT</a></li><li><a href="Uncurried.Writer.html">Uncurried.Writer</a></li><li><a href="Uncurried.WriterT.html">Uncurried.WriterT</a></li><li><a href="Unsafe.Coerce.html">Unsafe.Coerce</a></li><li><a href="Unsafe.Reference.html">Unsafe.Reference</a></li><li><a href="Web.DOM.html">Web.DOM</a></li><li><a href="Web.DOM.CharacterData.html">Web.DOM.CharacterData</a></li><li><a href="Web.DOM.ChildNode.html">Web.DOM.ChildNode</a></li><li><a href="Web.DOM.Comment.html">Web.DOM.Comment</a></li><li><a href="Web.DOM.DOMTokenList.html">Web.DOM.DOMTokenList</a></li><li><a href="Web.DOM.Document.html">Web.DOM.Document</a></li><li><a href="Web.DOM.DocumentFragment.html">Web.DOM.DocumentFragment</a></li><li><a href="Web.DOM.DocumentType.html">Web.DOM.DocumentType</a></li><li><a href="Web.DOM.Element.html">Web.DOM.Element</a></li><li><a href="Web.DOM.HTMLCollection.html">Web.DOM.HTMLCollection</a></li><li><a href="Web.DOM.Internal.Types.html">Web.DOM.Internal.Types</a></li><li><a href="Web.DOM.MutationObserver.html">Web.DOM.MutationObserver</a></li><li><a href="Web.DOM.MutationRecord.html">Web.DOM.MutationRecord</a></li><li><a href="Web.DOM.Node.html">Web.DOM.Node</a></li><li><a href="Web.DOM.NodeList.html">Web.DOM.NodeList</a></li><li><a href="Web.DOM.NodeType.html">Web.DOM.NodeType</a></li><li><a href="Web.DOM.NonDocumentTypeChildNode.html">Web.DOM.NonDocumentTypeChildNode</a></li><li><a href="Web.DOM.NonElementParentNode.html">Web.DOM.NonElementParentNode</a></li><li><a href="Web.DOM.ParentNode.html">Web.DOM.ParentNode</a></li><li><a href="Web.DOM.ProcessingInstruction.html">Web.DOM.ProcessingInstruction</a></li><li><a href="Web.DOM.ShadowRoot.html">Web.DOM.ShadowRoot</a></li><li><a href="Web.DOM.Text.html">Web.DOM.Text</a></li><li><a href="Web.Event.CustomEvent.html">Web.Event.CustomEvent</a></li><li><a href="Web.Event.Event.html">Web.Event.Event</a></li><li><a href="Web.Event.EventPhase.html">Web.Event.EventPhase</a></li><li><a href="Web.Event.EventTarget.html">Web.Event.EventTarget</a></li><li><a href="Web.Event.Internal.Types.html">Web.Event.Internal.Types</a></li><li><a href="Web.File.Blob.html">Web.File.Blob</a></li><li><a href="Web.File.File.html">Web.File.File</a></li><li><a href="Web.File.FileList.html">Web.File.FileList</a></li><li><a href="Web.File.FileReader.html">Web.File.FileReader</a></li><li><a href="Web.File.FileReader.ReadyState.html">Web.File.FileReader.ReadyState</a></li><li><a href="Web.File.Url.html">Web.File.Url</a></li><li><a href="Web.HTML.html">Web.HTML</a></li><li><a href="Web.HTML.Common.html">Web.HTML.Common</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.html">Web.HTML.Event.BeforeUnloadEvent</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.EventTypes.html">Web.HTML.Event.BeforeUnloadEvent.EventTypes</a></li><li><a href="Web.HTML.Event.DataTransfer.html">Web.HTML.Event.DataTransfer</a></li><li><a href="Web.HTML.Event.DataTransfer.DataTransferItem.html">Web.HTML.Event.DataTransfer.DataTransferItem</a></li><li><a href="Web.HTML.Event.DragEvent.html">Web.HTML.Event.DragEvent</a></li><li><a href="Web.HTML.Event.DragEvent.EventTypes.html">Web.HTML.Event.DragEvent.EventTypes</a></li><li><a href="Web.HTML.Event.ErrorEvent.html">Web.HTML.Event.ErrorEvent</a></li><li><a href="Web.HTML.Event.EventTypes.html">Web.HTML.Event.EventTypes</a></li><li><a href="Web.HTML.Event.HashChangeEvent.html">Web.HTML.Event.HashChangeEvent</a></li><li><a href="Web.HTML.Event.HashChangeEvent.EventTypes.html">Web.HTML.Event.HashChangeEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.html">Web.HTML.Event.PageTransitionEvent</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.EventTypes.html">Web.HTML.Event.PageTransitionEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PopStateEvent.html">Web.HTML.Event.PopStateEvent</a></li><li><a href="Web.HTML.Event.PopStateEvent.EventTypes.html">Web.HTML.Event.PopStateEvent.EventTypes</a></li><li><a href="Web.HTML.Event.TrackEvent.html">Web.HTML.Event.TrackEvent</a></li><li><a href="Web.HTML.Event.TrackEvent.EventTypes.html">Web.HTML.Event.TrackEvent.EventTypes</a></li><li><a href="Web.HTML.HTMLAnchorElement.html">Web.HTML.HTMLAnchorElement</a></li><li><a href="Web.HTML.HTMLAreaElement.html">Web.HTML.HTMLAreaElement</a></li><li><a href="Web.HTML.HTMLAudioElement.html">Web.HTML.HTMLAudioElement</a></li><li><a href="Web.HTML.HTMLBRElement.html">Web.HTML.HTMLBRElement</a></li><li><a href="Web.HTML.HTMLBaseElement.html">Web.HTML.HTMLBaseElement</a></li><li><a href="Web.HTML.HTMLBodyElement.html">Web.HTML.HTMLBodyElement</a></li><li><a href="Web.HTML.HTMLButtonElement.html">Web.HTML.HTMLButtonElement</a></li><li><a href="Web.HTML.HTMLCanvasElement.html">Web.HTML.HTMLCanvasElement</a></li><li><a href="Web.HTML.HTMLDListElement.html">Web.HTML.HTMLDListElement</a></li><li><a href="Web.HTML.HTMLDataElement.html">Web.HTML.HTMLDataElement</a></li><li><a href="Web.HTML.HTMLDataListElement.html">Web.HTML.HTMLDataListElement</a></li><li><a href="Web.HTML.HTMLDivElement.html">Web.HTML.HTMLDivElement</a></li><li><a href="Web.HTML.HTMLDocument.html">Web.HTML.HTMLDocument</a></li><li><a href="Web.HTML.HTMLDocument.ReadyState.html">Web.HTML.HTMLDocument.ReadyState</a></li><li><a href="Web.HTML.HTMLDocument.VisibilityState.html">Web.HTML.HTMLDocument.VisibilityState</a></li><li><a href="Web.HTML.HTMLElement.html">Web.HTML.HTMLElement</a></li><li><a href="Web.HTML.HTMLEmbedElement.html">Web.HTML.HTMLEmbedElement</a></li><li><a href="Web.HTML.HTMLFieldSetElement.html">Web.HTML.HTMLFieldSetElement</a></li><li><a href="Web.HTML.HTMLFormElement.html">Web.HTML.HTMLFormElement</a></li><li><a href="Web.HTML.HTMLHRElement.html">Web.HTML.HTMLHRElement</a></li><li><a href="Web.HTML.HTMLHeadElement.html">Web.HTML.HTMLHeadElement</a></li><li><a href="Web.HTML.HTMLHeadingElement.html">Web.HTML.HTMLHeadingElement</a></li><li><a href="Web.HTML.HTMLHtmlElement.html">Web.HTML.HTMLHtmlElement</a></li><li><a href="Web.HTML.HTMLHyperlinkElementUtils.html">Web.HTML.HTMLHyperlinkElementUtils</a></li><li><a href="Web.HTML.HTMLIFrameElement.html">Web.HTML.HTMLIFrameElement</a></li><li><a href="Web.HTML.HTMLImageElement.html">Web.HTML.HTMLImageElement</a></li><li><a href="Web.HTML.HTMLImageElement.CORSMode.html">Web.HTML.HTMLImageElement.CORSMode</a></li><li><a href="Web.HTML.HTMLImageElement.DecodingHint.html">Web.HTML.HTMLImageElement.DecodingHint</a></li><li><a href="Web.HTML.HTMLImageElement.Laziness.html">Web.HTML.HTMLImageElement.Laziness</a></li><li><a href="Web.HTML.HTMLInputElement.html">Web.HTML.HTMLInputElement</a></li><li><a href="Web.HTML.HTMLKeygenElement.html">Web.HTML.HTMLKeygenElement</a></li><li><a href="Web.HTML.HTMLLIElement.html">Web.HTML.HTMLLIElement</a></li><li><a href="Web.HTML.HTMLLabelElement.html">Web.HTML.HTMLLabelElement</a></li><li><a href="Web.HTML.HTMLLegendElement.html">Web.HTML.HTMLLegendElement</a></li><li><a href="Web.HTML.HTMLLinkElement.html">Web.HTML.HTMLLinkElement</a></li><li><a href="Web.HTML.HTMLMapElement.html">Web.HTML.HTMLMapElement</a></li><li><a href="Web.HTML.HTMLMediaElement.html">Web.HTML.HTMLMediaElement</a></li><li><a href="Web.HTML.HTMLMediaElement.CanPlayType.html">Web.HTML.HTMLMediaElement.CanPlayType</a></li><li><a href="Web.HTML.HTMLMediaElement.NetworkState.html">Web.HTML.HTMLMediaElement.NetworkState</a></li><li><a href="Web.HTML.HTMLMediaElement.ReadyState.html">Web.HTML.HTMLMediaElement.ReadyState</a></li><li><a href="Web.HTML.HTMLMetaElement.html">Web.HTML.HTMLMetaElement</a></li><li><a href="Web.HTML.HTMLMeterElement.html">Web.HTML.HTMLMeterElement</a></li><li><a href="Web.HTML.HTMLModElement.html">Web.HTML.HTMLModElement</a></li><li><a href="Web.HTML.HTMLOListElement.html">Web.HTML.HTMLOListElement</a></li><li><a href="Web.HTML.HTMLObjectElement.html">Web.HTML.HTMLObjectElement</a></li><li><a href="Web.HTML.HTMLOptGroupElement.html">Web.HTML.HTMLOptGroupElement</a></li><li><a href="Web.HTML.HTMLOptionElement.html">Web.HTML.HTMLOptionElement</a></li><li><a href="Web.HTML.HTMLOutputElement.html">Web.HTML.HTMLOutputElement</a></li><li><a href="Web.HTML.HTMLParagraphElement.html">Web.HTML.HTMLParagraphElement</a></li><li><a href="Web.HTML.HTMLParamElement.html">Web.HTML.HTMLParamElement</a></li><li><a href="Web.HTML.HTMLPreElement.html">Web.HTML.HTMLPreElement</a></li><li><a href="Web.HTML.HTMLProgressElement.html">Web.HTML.HTMLProgressElement</a></li><li><a href="Web.HTML.HTMLQuoteElement.html">Web.HTML.HTMLQuoteElement</a></li><li><a href="Web.HTML.HTMLScriptElement.html">Web.HTML.HTMLScriptElement</a></li><li><a href="Web.HTML.HTMLSelectElement.html">Web.HTML.HTMLSelectElement</a></li><li><a href="Web.HTML.HTMLSourceElement.html">Web.HTML.HTMLSourceElement</a></li><li><a href="Web.HTML.HTMLSpanElement.html">Web.HTML.HTMLSpanElement</a></li><li><a href="Web.HTML.HTMLStyleElement.html">Web.HTML.HTMLStyleElement</a></li><li><a href="Web.HTML.HTMLTableCaptionElement.html">Web.HTML.HTMLTableCaptionElement</a></li><li><a href="Web.HTML.HTMLTableCellElement.html">Web.HTML.HTMLTableCellElement</a></li><li><a href="Web.HTML.HTMLTableColElement.html">Web.HTML.HTMLTableColElement</a></li><li><a href="Web.HTML.HTMLTableDataCellElement.html">Web.HTML.HTMLTableDataCellElement</a></li><li><a href="Web.HTML.HTMLTableElement.html">Web.HTML.HTMLTableElement</a></li><li><a href="Web.HTML.HTMLTableHeaderCellElement.html">Web.HTML.HTMLTableHeaderCellElement</a></li><li><a href="Web.HTML.HTMLTableRowElement.html">Web.HTML.HTMLTableRowElement</a></li><li><a href="Web.HTML.HTMLTableSectionElement.html">Web.HTML.HTMLTableSectionElement</a></li><li><a href="Web.HTML.HTMLTemplateElement.html">Web.HTML.HTMLTemplateElement</a></li><li><a href="Web.HTML.HTMLTextAreaElement.html">Web.HTML.HTMLTextAreaElement</a></li><li><a href="Web.HTML.HTMLTimeElement.html">Web.HTML.HTMLTimeElement</a></li><li><a href="Web.HTML.HTMLTitleElement.html">Web.HTML.HTMLTitleElement</a></li><li><a href="Web.HTML.HTMLTrackElement.html">Web.HTML.HTMLTrackElement</a></li><li><a href="Web.HTML.HTMLTrackElement.ReadyState.html">Web.HTML.HTMLTrackElement.ReadyState</a></li><li><a href="Web.HTML.HTMLUListElement.html">Web.HTML.HTMLUListElement</a></li><li><a href="Web.HTML.HTMLVideoElement.html">Web.HTML.HTMLVideoElement</a></li><li><a href="Web.HTML.History.html">Web.HTML.History</a></li><li><a href="Web.HTML.Location.html">Web.HTML.Location</a></li><li><a href="Web.HTML.Navigator.html">Web.HTML.Navigator</a></li><li><a href="Web.HTML.SelectionMode.html">Web.HTML.SelectionMode</a></li><li><a href="Web.HTML.ValidityState.html">Web.HTML.ValidityState</a></li><li><a href="Web.HTML.Window.html">Web.HTML.Window</a></li><li><a href="Web.Internal.FFI.html">Web.Internal.FFI</a></li><li><a href="Web.Storage.Event.StorageEvent.html">Web.Storage.Event.StorageEvent</a></li><li><a href="Web.Storage.Storage.html">Web.Storage.Storage</a></li><li><a href="Web.UIEvent.CompositionEvent.html">Web.UIEvent.CompositionEvent</a></li><li><a href="Web.UIEvent.CompositionEvent.EventTypes.html">Web.UIEvent.CompositionEvent.EventTypes</a></li><li><a href="Web.UIEvent.EventTypes.html">Web.UIEvent.EventTypes</a></li><li><a href="Web.UIEvent.FocusEvent.html">Web.UIEvent.FocusEvent</a></li><li><a href="Web.UIEvent.FocusEvent.EventTypes.html">Web.UIEvent.FocusEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.html">Web.UIEvent.InputEvent</a></li><li><a href="Web.UIEvent.InputEvent.EventTypes.html">Web.UIEvent.InputEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.InputType.html">Web.UIEvent.InputEvent.InputType</a></li><li><a href="Web.UIEvent.KeyboardEvent.html">Web.UIEvent.KeyboardEvent</a></li><li><a href="Web.UIEvent.KeyboardEvent.EventTypes.html">Web.UIEvent.KeyboardEvent.EventTypes</a></li><li><a href="Web.UIEvent.MouseEvent.html">Web.UIEvent.MouseEvent</a></li><li><a href="Web.UIEvent.MouseEvent.EventTypes.html">Web.UIEvent.MouseEvent.EventTypes</a></li><li><a href="Web.UIEvent.UIEvent.html">Web.UIEvent.UIEvent</a></li><li><a href="Web.UIEvent.WheelEvent.html">Web.UIEvent.WheelEvent</a></li><li><a href="Web.UIEvent.WheelEvent.EventTypes.html">Web.UIEvent.WheelEvent.EventTypes</a></li></ul></div></main></div><div class="footer clearfix"><p>Generated by purs 0.15.15 [development build; commit: UNKNOWN]</p></div><!-- Docs search index. --><script type="text/javascript" src="./docs-search-app.js"></script><script type="text/javascript">window.DocsSearchTypeIndex = {};window.DocsSearchIndex = {};</script></body></html>
generated-docs/html/Bolson.Control.htmldeleted−1356
@@ -1,1356 +0,0 @@
2−<html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>PureScript: Bolson.Control</title><link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:300,400,400i,700,700i" type="text/css" rel="stylesheet"><style type="text/css">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
5− * 1. Set default font family to sans-serif.
6− * 2. Prevent iOS text size adjust after orientation change, without disabling
11− font-family: sans-serif; /* 1 */
12− -ms-text-size-adjust: 100%; /* 2 */
13− -webkit-text-size-adjust: 100%; /* 2 */
17− * Remove default margin.
24−/* HTML5 display definitions
25− ========================================================================== */
28− * Correct `block` display not defined for any HTML5 element in IE 8/9.
29− * Correct `block` display not defined for `details` or `summary` in IE 10/11
31− * Correct `block` display not defined for `main` in IE 11.
51− * 1. Correct `inline-block` display not defined in IE 8/9.
52− * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
59− display: inline-block; /* 1 */
60− vertical-align: baseline; /* 2 */
64− * Prevent modern browsers from displaying `audio` without controls.
65− * Remove excess height in iOS 5 devices.
68−audio:not([controls]) {
74− * Address `[hidden]` styling not present in IE 8/9/10.
75− * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
84− ========================================================================== */
87− * Remove the gray background color from active links in IE 10.
91− background-color: transparent;
95− * Improve readability when focused and also mouse hovered in all browsers.
103−/* Text-level semantics
104− ========================================================================== */
107− * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
111− border-bottom: 1px dotted;
115− * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
124− * Address styling not present in Safari and Chrome.
132− * Address variable `h1` font-size and margin within `section` and `article`
133− * contexts in Firefox 4+, Safari, and Chrome.
142− * Address styling not present in IE 8/9.
151− * Address inconsistent and variable font size in all browsers.
159− * Prevent `sub` and `sup` affecting `line-height` in all browsers.
167− vertical-align: baseline;
179− ========================================================================== */
182− * Remove border when inside `a` element in IE 8/9/10.
190− * Correct overflow not hidden in IE 9/10/11.
198− ========================================================================== */
201− * Address margin not present in IE 8/9 and Safari.
209− * Address differences between Firefox and other browsers.
213− -moz-box-sizing: content-box;
214− box-sizing: content-box;
219− * Contain overflow in all browsers.
227− * Address odd `em`-unit font size rendering in all browsers.
234− font-family: monospace, monospace;
239− ========================================================================== */
242− * Known limitation: by default, Chrome and Safari on OS X allow very limited
243− * styling of `select`, unless a `border` property is set.
247− * 1. Correct color not being inherited.
248− * Known issue: affects color of disabled elements.
249− * 2. Correct font properties not being inherited.
250− * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
258− color: inherit; /* 1 */
259− font: inherit; /* 2 */
264− * Address `overflow` set to `hidden` in IE 8/9/10/11.
272− * Address inconsistent `text-transform` inheritance for `button` and `select`.
273− * All other form control elements do not inherit `text-transform` values.
274− * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
275− * Correct `select` style inheritance in Firefox.
280− text-transform: none;
284− * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
285− * and `video` controls.
286− * 2. Correct inability to style clickable `input` types in iOS.
287− * 3. Improve usability and consistency of cursor style between image-type
288− * `input` and others.
292−html input[type="button"], /* 1 */
294−input[type="submit"] {
295− -webkit-appearance: button; /* 2 */
296− cursor: pointer; /* 3 */
300− * Re-set default cursor for disabled elements.
304−html input[disabled] {
309− * Remove inner padding and border in Firefox 4+.
312−button::-moz-focus-inner,
313−input::-moz-focus-inner {
319− * Address Firefox 4+ setting `line-height` on `input` using `!important` in
320− * the UA stylesheet.
324− line-height: normal;
328− * It's recommended that you don't attempt to style these elements.
329− * Firefox's implementation doesn't respect box-sizing, padding, or width.
331− * 1. Address box sizing set to `content-box` in IE 8/9/10.
332− * 2. Remove excess padding in IE 8/9/10.
335−input[type="checkbox"],
336−input[type="radio"] {
337− box-sizing: border-box; /* 1 */
342− * Fix the cursor style for Chrome's increment/decrement buttons. For certain
343− * `font-size` values of the `input`, it causes the cursor style of the
344− * decrement button to change from `default` to `text`.
347−input[type="number"]::-webkit-inner-spin-button,
348−input[type="number"]::-webkit-outer-spin-button {
353− * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
354− * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
355− * (include `-moz` to future-proof).
358−input[type="search"] {
359− -webkit-appearance: textfield; /* 1 */
360− -moz-box-sizing: content-box;
361− -webkit-box-sizing: content-box; /* 2 */
362− box-sizing: content-box;
366− * Remove inner padding and search cancel button in Safari and Chrome on OS X.
367− * Safari (but not Chrome) clips the cancel button when the search input has
368− * padding (and `textfield` appearance).
371−input[type="search"]::-webkit-search-cancel-button,
372−input[type="search"]::-webkit-search-decoration {
373− -webkit-appearance: none;
377− * Define consistent border, margin, and padding.
381− border: 1px solid #c0c0c0;
383− padding: 0.35em 0.625em 0.75em;
387− * 1. Correct `color` not being inherited in IE 8/9/10/11.
388− * 2. Remove padding so people aren't caught out if they zero out fieldsets.
397− * Remove default vertical scrollbar in IE 8/9/10/11.
405− * Don't inherit the `font-weight` (applied by a rule above).
406− * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
414− ========================================================================== */
417− * Remove most spacing between table cells.
421− border-collapse: collapse;
429−</style><style type="text/css">/** ************************************************************************* *
430− ** CSS for HTML docs (e.g. Pursuit)
434− ** This CSS file is structured into several sections, from general to
435− ** specific, and (mostly) alphabetically within the sections.
437− ** Several global element styles are used. This is not encouraged and should
438− ** be kept to a minimum. If you want to add new styles you'll most likely
439− ** want to add a new CSS component. See the Components section for examples.
441− ** CSS components use three simple naming ideas from the BEM system:
442− ** - Block: `.my-component`
443− ** - Element: `.my-component__item`
444− ** - Modifier: `.my-component.my-component--highlighted`
447− ** <div .my-component>
448− ** <div .my-component__item>
449− ** <div .my-component__item>
451− ** <div .my-component.my-component--highlighted>
452− ** <div .my-component__item>
453− ** <div .my-component__item>
455− ** Components can be nested.
460− ** Typographic choices for sizes, line-heights and margins are based on a
461− ** musical major third scale (4:5). This gives us a way to find numbers
462− ** and relationships between them that are perceived as harmonic.
464− ** To make use of this modular scale, use a ratio of the form
466− ** where n ∈ ℤ, -6 ≤ n ≤ 8.
470− ** This CSS is generated by less. To compile it:
472− ** npm install [-g] less
473− ** lessc app/static/pursuit.less > app/static/pursuit.css
475− ** ************************************************************************* */
476−/* Section: Variables
477− * ========================================================================== */
478−/* Section: Document Styles
479− * ========================================================================== */
481− color-scheme: light dark;
484− box-sizing: border-box;
485− /* This overflow rule prevents everything from shifting slightly to the side
486− when moving from a page which isn't large enough to generate a scrollbar
493− box-sizing: inherit;
496− background-color: #ffffff;
498− font-family: "Roboto", sans-serif;
502−@media (prefers-color-scheme: dark) {
504− background-color: #141417;
508−@media (min-width: 38em) {
513−/* Section: Utility Classes
514− * ========================================================================== */
526−/* Content hidden like this will still be read by a screen reader */
536− * ========================================================================== */
543− padding-right: 20px;
551− margin-bottom: 3.08em;
554− margin-bottom: 2.44em;
556−@media (min-width: 52em) {
559− padding-right: 30px;
572−@media (min-width: 66em) {
578− * Based on http://www.lwis.net/journal/2008/02/08/pure-css-sticky-footer/
579− * Except we don't support IE6
580− * -------------------------------------------------------------------------- */
585−.everything-except-footer {
587− padding-bottom: 3em;
595− background-color: #1d222d;
598−@media (prefers-color-scheme: dark) {
600− background-color: #1d222d;
607−/* Section: Element Styles
609− * Have as few of these as possible and keep them general, because they will
610− * influence every component hereafter.
611− * ========================================================================== */
613− background-color: #f1f5f9;
615−@media (prefers-color-scheme: dark) {
617− background-color: #232327;
623− text-decoration: none;
626−@media (prefers-color-scheme: dark) {
634− text-decoration: none;
636−@media (prefers-color-scheme: dark) {
643− background-color: #f1f5f9;
646− font-family: "Roboto Mono", monospace;
649−@media (prefers-color-scheme: dark) {
652− background-color: #232327;
658− background-color: #dfe8f1;
660−@media (prefers-color-scheme: dark) {
663− background-color: #2f2f34;
669− white-space: pre-wrap;
670− word-wrap: break-word;
674− letter-spacing: -0.2em;
678− font-weight: normal;
682− letter-spacing: 0.33em;
687−@media (prefers-color-scheme: dark) {
695− padding: 1em 1.25rem;
696− /* Using rem here to align with lists etc. */
702− background-color: transparent;
709− line-height: inherit;
721− letter-spacing: -0.5px;
723− margin-top: 1.563rem;
724− margin-bottom: 1.25rem;
726−@media (min-width: 52em) {
729− margin-top: 5.96rem;
734− font-weight: normal;
736− margin-top: 3.052rem;
737− margin-bottom: 1rem;
741− font-weight: normal;
743− margin-top: 2.441rem;
744− margin-bottom: 1rem;
748− font-weight: normal;
749− margin-top: 2.441rem;
750− margin-bottom: 1rem;
763− background-color: #cccccc;
765−@media (prefers-color-scheme: dark) {
767− background-color: #43434e;
777− margin-bottom: 1rem;
780− border-bottom: 1px solid #cccccc;
781− border-collapse: collapse;
784− margin-bottom: 1rem;
787−@media (prefers-color-scheme: dark) {
789− border-bottom-color: #43434e;
795− padding: 0.41em 0.51em;
798− border-top: 1px solid #cccccc;
800−@media (prefers-color-scheme: dark) {
802− border-top-color: #43434e;
814− list-style-type: none;
816− margin-bottom: 1rem;
821− padding-left: 1.25em;
827− display: inline-block;
828− margin-left: -1.25em;
831−@media (prefers-color-scheme: dark) {
836−/* Tying this tightly to ul at the moment because it's a slight variation thereof */
837−ul.ul--search li::before {
840− transform: rotate(-45deg);
844− margin-bottom: 1rem;
845− padding-left: 1.25em;
851−/* Section: Components
852− * ========================================================================== */
854− * -------------------------------------------------------------------------- */
858− display: inline-block;
859− background-color: #000000;
860− border-radius: 1.3em;
869−@media (prefers-color-scheme: dark) {
871− background-color: #dedede;
875−.badge.badge--package {
876− background-color: #c4953a;
877− letter-spacing: -0.1em;
879−@media (prefers-color-scheme: dark) {
880− .badge.badge--package {
881− background-color: #d8ac55;
884−.badge.badge--module {
885− background-color: #75B134;
887−/* Component: Declarations
888− * -------------------------------------------------------------------------- */
891− padding-bottom: 0.328em;
892− margin-bottom: 0.262em;
902−.decl__anchor:visited {
907−@media (prefers-color-scheme: dark) {
909− .decl__anchor:visited {
913−.decl__anchor:hover {
916−@media (prefers-color-scheme: dark) {
917− .decl__anchor:hover {
922− background-color: transparent;
924− border-top: 1px solid #cccccc;
925− border-bottom: 1px solid #cccccc;
928−@media (prefers-color-scheme: dark) {
930− border-top-color: #43434e;
931− border-bottom-color: #43434e;
934−.decl__signature code {
937− padding-left: 2.441em;
938− text-indent: -2.441em;
939− white-space: normal;
942− font-family: "Roboto", sans-serif;
944− font-weight: normal;
946−/* See https://stackoverflow.com/a/32162038
947− Content licensed under CC BY-SA 3.0
949−.decl__role_hover[title] {
950− /* Remove line that appears under abbr element */
951− border-bottom: none;
952− text-decoration: none;
953− /* Ensure cursor doesn't change to question mark */
956−.decl__role_nominal::after {
959−.decl__role_phantom::after {
963− border-bottom: 1px solid #cccccc;
965−@media (prefers-color-scheme: dark) {
967− border-bottom-color: #43434e;
970−:target .decl__signature,
971−:target .decl__signature code {
972− /* We want the background to be transparent, even when the parent is a target */
973− background-color: transparent;
975−.decl__body .keyword,
976−.decl__body .syntax {
979−@media (prefers-color-scheme: dark) {
980− .decl__body .keyword,
981− .decl__body .syntax {
985−.decl__child_comments {
987− margin-bottom: 1rem;
989−/* Component: Dependency Link
990− * -------------------------------------------------------------------------- */
992− /* Currently no root styles, but keep the class as a namespace */
995− display: inline-block;
996− margin-right: 0.41em;
1000− display: inline-block;
1004−@media (prefers-color-scheme: dark) {
1005− .deplink__version {
1009−/* Component: Grouped List
1010− * -------------------------------------------------------------------------- */
1012− border-top: 1px solid #cccccc;
1013− margin: 0 0 2.44em 0;
1015−@media (prefers-color-scheme: dark) {
1017− border-top-color: #43434e;
1020−.grouped-list__title {
1024− letter-spacing: 1px;
1025− margin: 0.8em 0 -0.1em 0;
1026− text-transform: uppercase;
1028−@media (prefers-color-scheme: dark) {
1029− .grouped-list__title {
1030− border-top-color: #a0a0a0;
1033−.grouped-list__item {
1036−/* Component: Message
1037− * -------------------------------------------------------------------------- */
1040− border-radius: 5px;
1041− padding: 1em !important;
1043−.message.message--error {
1044− background-color: #fff0f0;
1045− border-color: #c85050;
1047−@media (prefers-color-scheme: dark) {
1048− .message.message--error {
1049− background-color: #6b0e0e;
1050− border-color: #c85050;
1053−.message.message--not-available {
1054− background-color: #f0f096;
1055− border-color: #e3e33d;
1057−@media (prefers-color-scheme: dark) {
1058− .message.message--not-available {
1059− background-color: #56560b;
1060− border-color: #b0b017;
1063−/* Component: Multi Col
1064− * Multiple columns side by side
1065− * -------------------------------------------------------------------------- */
1067− margin-bottom: 2.44em;
1071− padding-right: 1em;
1072− position: relative;
1075−@media (min-width: 38em) and (max-width: 51.999999em) {
1080− .multi-col__col:nth-child(2n+3) {
1084−@media (min-width: 52em) {
1089− .multi-col__col:nth-child(3n+4) {
1093−/* Component: Page Title
1094− * -------------------------------------------------------------------------- */
1096− margin: 4.77em 0 1.56em;
1097− padding-bottom: 1.25em;
1098− position: relative;
1100−.page-title__title {
1101− margin: 0 0 0 -0.05em;
1102− /* Visually align on left edge */
1104−.page-title__label {
1105− position: relative;
1109− letter-spacing: 1px;
1110− margin-bottom: -0.8em;
1111− text-transform: uppercase;
1114−@media (prefers-color-scheme: dark) {
1115− .page-title__label {
1119−/* Component: Top Banner
1120− * -------------------------------------------------------------------------- */
1122− background-color: #1d222d;
1124− font-weight: normal;
1126−@media (prefers-color-scheme: dark) {
1128− background-color: #1d222d;
1133−.top-banner__logo:visited {
1141−@media (prefers-color-scheme: dark) {
1143− .top-banner__logo:visited {
1147−.top-banner__logo:hover {
1149− text-decoration: none;
1152− margin-bottom: 1.25em;
1154−.top-banner__form input {
1155− border: 1px solid #1d222d;
1156− border-radius: 3px;
1157− background-color: #ffffff;
1161− padding: 0.21em 0.512em;
1164−@media (prefers-color-scheme: dark) {
1165− .top-banner__form input {
1166− border-color: #1d222d;
1167− background-color: #141417;
1171−.top-banner__actions {
1175−.top-banner__actions__item {
1176− display: inline-block;
1179− padding-left: 1.25em;
1181−.top-banner__actions__item:first-child {
1184−.top-banner__actions__item a,
1185−.top-banner__actions__item a:visited {
1188−@media (prefers-color-scheme: dark) {
1189− .top-banner__actions__item a,
1190− .top-banner__actions__item a:visited {
1194−.top-banner__actions__item a:hover {
1197−@media (prefers-color-scheme: dark) {
1198− .top-banner__actions__item a:hover {
1202−@media (min-width: 38em) {
1203− .top-banner__logo {
1207− .top-banner__form {
1213− .top-banner__actions {
1218−/* Component: Search Results
1219− * -------------------------------------------------------------------------- */
1220−.result.result--empty {
1225− margin-bottom: 0.2rem;
1228− margin-left: -0.1em;
1230−.result__body > *:first-child {
1231− margin-top: 0!important;
1233−.result__body > *:last-child {
1234− margin-bottom: 0!important;
1236−.result__signature {
1237− background-color: transparent;
1239− border-top: 1px solid #cccccc;
1240− border-bottom: 1px solid #cccccc;
1241− padding: 0.328em 0;
1243−@media (prefers-color-scheme: dark) {
1244− .result__signature {
1245− border-top-color: #43434e;
1246− border-bottom-color: #43434e;
1249−.result__signature code {
1251− padding-left: 2.441em;
1252− text-indent: -2.441em;
1253− white-space: normal;
1256− margin-top: 0.2rem;
1258−.result__actions__item {
1261−.result__actions__item + .result__actions__item {
1262− margin-left: 0.65em;
1264−/* Component: Version Selector
1265− * -------------------------------------------------------------------------- */
1267− margin-bottom: 0.8em;
1269−@media (min-width: 38em) {
1270− .version-selector {
1271− position: absolute;
1278− * These styles should be cleaned up
1279− * ========================================================================== */
1280−/* Help paragraphs */
1285− /* FIXME: target with class */
1288−/* Section: Markdown
1289− * Github rendered README
1290− * ========================================================================== */
1293− Useful for narrow screens, such as mobiles. Documentation often contains URLs
1294− which would otherwise force the page to become wider, and force creation of
1295− horizontal scrollbars. Yuck.
1297− word-wrap: break-word;
1299−.markdown-body > *:first-child {
1300− margin-top: 0 !important;
1302−.markdown-body > *:last-child {
1303− margin-bottom: 0 !important;
1305−.markdown-body a:not([href]) {
1307− text-decoration: none;
1309−.markdown-body blockquote {
1313− border-left: 0.25em solid #ddd;
1315−@media (prefers-color-scheme: dark) {
1316− .markdown-body blockquote {
1317− border-left-color: #444;
1320−.markdown-body blockquote > :first-child {
1323−.markdown-body blockquote > :last-child {
1326−.markdown-body .anchor {
1327− /* We hide the anchor because the link doesn't point to a valid location */
1330−.markdown-body .pl-k {
1334−@media (prefers-color-scheme: dark) {
1335− .markdown-body .pl-k {
1339−.markdown-body .pl-c1,
1340−.markdown-body .pl-en {
1341− /* Not really sure what this is */
1344−.markdown-body .pl-s {
1345− /* String literals */
1348−.markdown-body .pl-cce {
1349− /* String literal escape sequences */
1352−.markdown-body .pl-smi {
1353− /* type variables? */
1356−</style></head><body><div class="everything-except-footer"><div class="top-banner clearfix"><div class="container clearfix"><div style="float: left; font-size: 2.44em; font-weight: 300; line-height: 90px; margin: 0">PureScript API documentation</div><div class="top-banner__actions"><div class="top-banner__actions__item"><a href="index.html">Index</a></div></div></div></div><main class="container clearfix" role="main"><div class="page-title clearfix"><div class="page-title__label">Module</div><h1 class="page-title__title">Bolson.Control</h1></div><div class="col col--main"><div class="decl" id="v:flatten"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:flatten">#</a><span>flatten</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Control.html#v:flatten" title="Bolson.Control.flatten"><span class="ident">flatten</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>r <span class="syntax"></span>obj <span class="syntax"></span>logic <span class="syntax"></span>interpreter <span class="syntax"></span>payload<span class="syntax">.</span> <a href="Bolson.Control.html#t:Flatten" title="Bolson.Control.Flatten"><span class="ctor">Flatten</span></a> logic interpreter obj r payload <span class="syntax">-></span> <a href="Bolson.Core.html#t:PSR" title="Bolson.Core.PSR"><span class="ctor">PSR</span></a> r <span class="syntax">-></span> interpreter <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj payload<span class="syntax">)</span> <span class="syntax">-></span> <a href="FRP.Event.html#t:Event" title="FRP.Event.Event"><span class="ctor">Event</span></a> payload</code></pre></div></div><div class="decl" id="v:globalPortalComplexComplex"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:globalPortalComplexComplex">#</a><span>globalPortalComplexComplex</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Control.html#v:globalPortalComplexComplex" title="Bolson.Control.globalPortalComplexComplex"><span class="ident">globalPortalComplexComplex</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>n <span class="syntax"></span>r <span class="syntax"></span>logic <span class="syntax"></span>obj1 <span class="syntax"></span>obj2 <span class="syntax"></span>specialization <span class="syntax"></span>interpreter <span class="syntax"></span>payload<span class="syntax">.</span> <a href="Prim.Int.html#t:Compare" title="Prim.Int.Compare"><span class="ctor">Compare</span></a> n <a href="Bolson.Control.html#t:Neg1" title="Bolson.Control.Neg1"><span class="ctor">Neg1</span></a> <a href="Prim.Ordering.html#t:GT" title="Prim.Ordering.GT"><span class="ctor">GT</span></a> <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"id"</span> r <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"raiseId"</span> r <span class="syntax">=></span> <a href="Bolson.Control.html#t:Flatten" title="Bolson.Control.Flatten"><span class="ctor">Flatten</span></a> logic interpreter obj2 r payload <span class="syntax">-></span> <a href="Bolson.Control.html#t:Portal" title="Bolson.Control.Portal"><span class="ctor">Portal</span></a> logic specialization interpreter obj1 obj2 r payload <span class="syntax">-></span> <a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span><a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj1 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <span class="syntax">(</span><a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span>specialization <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj1 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj2 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj2 payload<span class="syntax">)</span></code></pre></div></div><div class="decl" id="v:globalPortalSimpleComplex"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:globalPortalSimpleComplex">#</a><span>globalPortalSimpleComplex</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Control.html#v:globalPortalSimpleComplex" title="Bolson.Control.globalPortalSimpleComplex"><span class="ident">globalPortalSimpleComplex</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>n <span class="syntax"></span>r <span class="syntax"></span>logic <span class="syntax"></span>obj1 <span class="syntax"></span>obj2 <span class="syntax"></span>specialization <span class="syntax"></span>interpreter <span class="syntax"></span>payload<span class="syntax">.</span> <a href="Prim.Int.html#t:Compare" title="Prim.Int.Compare"><span class="ctor">Compare</span></a> n <a href="Bolson.Control.html#t:Neg1" title="Bolson.Control.Neg1"><span class="ctor">Neg1</span></a> <a href="Prim.Ordering.html#t:GT" title="Prim.Ordering.GT"><span class="ctor">GT</span></a> <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"id"</span> r <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"raiseId"</span> r <span class="syntax">=></span> <a href="Bolson.Control.html#t:Flatten" title="Bolson.Control.Flatten"><span class="ctor">Flatten</span></a> logic interpreter obj2 r payload <span class="syntax">-></span> <a href="Bolson.Control.html#t:PortalSimple" title="Bolson.Control.PortalSimple"><span class="ctor">PortalSimple</span></a> logic specialization interpreter obj1 obj2 r payload <span class="syntax">-></span> <a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span>obj1 payload<span class="syntax">)</span> <span class="syntax">-></span> <span class="syntax">(</span><a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span>specialization <span class="syntax">-></span> obj1 payload<span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj2 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj2 payload<span class="syntax">)</span></code></pre></div></div><div class="decl" id="v:globalPortalComplexSimple"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:globalPortalComplexSimple">#</a><span>globalPortalComplexSimple</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Control.html#v:globalPortalComplexSimple" title="Bolson.Control.globalPortalComplexSimple"><span class="ident">globalPortalComplexSimple</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>n <span class="syntax"></span>r <span class="syntax"></span>logic <span class="syntax"></span>obj1 <span class="syntax"></span>obj2 <span class="syntax"></span>specialization <span class="syntax"></span>interpreter <span class="syntax"></span>payload<span class="syntax">.</span> <a href="Prim.Int.html#t:Compare" title="Prim.Int.Compare"><span class="ctor">Compare</span></a> n <a href="Bolson.Control.html#t:Neg1" title="Bolson.Control.Neg1"><span class="ctor">Neg1</span></a> <a href="Prim.Ordering.html#t:GT" title="Prim.Ordering.GT"><span class="ctor">GT</span></a> <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"id"</span> r <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"raiseId"</span> r <span class="syntax">=></span> <a href="Bolson.Control.html#t:PortalComplex" title="Bolson.Control.PortalComplex"><span class="ctor">PortalComplex</span></a> logic specialization interpreter obj1 obj2 r payload <span class="syntax">-></span> <a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span><a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj1 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <span class="syntax">(</span><a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span>specialization <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj1 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> obj2 payload<span class="syntax">)</span> <span class="syntax">-></span> obj2 payload</code></pre></div></div><div class="decl" id="v:portalComplexComplex"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:portalComplexComplex">#</a><span>portalComplexComplex</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Control.html#v:portalComplexComplex" title="Bolson.Control.portalComplexComplex"><span class="ident">portalComplexComplex</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>n <span class="syntax"></span>r <span class="syntax"></span>logic <span class="syntax"></span>obj1 <span class="syntax"></span>obj2 <span class="syntax"></span>specialization <span class="syntax"></span>interpreter <span class="syntax"></span>payload<span class="syntax">.</span> <a href="Prim.Int.html#t:Compare" title="Prim.Int.Compare"><span class="ctor">Compare</span></a> n <a href="Bolson.Control.html#t:Neg1" title="Bolson.Control.Neg1"><span class="ctor">Neg1</span></a> <a href="Prim.Ordering.html#t:GT" title="Prim.Ordering.GT"><span class="ctor">GT</span></a> <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"id"</span> r <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"raiseId"</span> r <span class="syntax">=></span> <a href="Bolson.Control.html#t:Flatten" title="Bolson.Control.Flatten"><span class="ctor">Flatten</span></a> logic interpreter obj2 r payload <span class="syntax">-></span> <a href="Bolson.Control.html#t:Portal" title="Bolson.Control.Portal"><span class="ctor">Portal</span></a> logic specialization interpreter obj1 obj2 r payload <span class="syntax">-></span> <a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span><a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj1 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <span class="syntax">(</span><a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span>specialization <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj1 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj2 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj2 payload<span class="syntax">)</span></code></pre></div></div><div class="decl" id="v:portalSimpleComplex"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:portalSimpleComplex">#</a><span>portalSimpleComplex</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Control.html#v:portalSimpleComplex" title="Bolson.Control.portalSimpleComplex"><span class="ident">portalSimpleComplex</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>n <span class="syntax"></span>r <span class="syntax"></span>logic <span class="syntax"></span>obj1 <span class="syntax"></span>obj2 <span class="syntax"></span>specialization <span class="syntax"></span>interpreter <span class="syntax"></span>payload<span class="syntax">.</span> <a href="Prim.Int.html#t:Compare" title="Prim.Int.Compare"><span class="ctor">Compare</span></a> n <a href="Bolson.Control.html#t:Neg1" title="Bolson.Control.Neg1"><span class="ctor">Neg1</span></a> <a href="Prim.Ordering.html#t:GT" title="Prim.Ordering.GT"><span class="ctor">GT</span></a> <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"id"</span> r <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"raiseId"</span> r <span class="syntax">=></span> <a href="Bolson.Control.html#t:Flatten" title="Bolson.Control.Flatten"><span class="ctor">Flatten</span></a> logic interpreter obj2 r payload <span class="syntax">-></span> <a href="Bolson.Control.html#t:PortalSimple" title="Bolson.Control.PortalSimple"><span class="ctor">PortalSimple</span></a> logic specialization interpreter obj1 obj2 r payload <span class="syntax">-></span> <a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span>obj1 payload<span class="syntax">)</span> <span class="syntax">-></span> <span class="syntax">(</span><a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span>specialization <span class="syntax">-></span> obj1 payload<span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj2 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj2 payload<span class="syntax">)</span></code></pre></div></div><div class="decl" id="v:portalComplexSimple"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:portalComplexSimple">#</a><span>portalComplexSimple</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Control.html#v:portalComplexSimple" title="Bolson.Control.portalComplexSimple"><span class="ident">portalComplexSimple</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>n <span class="syntax"></span>r <span class="syntax"></span>logic <span class="syntax"></span>obj1 <span class="syntax"></span>obj2 <span class="syntax"></span>specialization <span class="syntax"></span>interpreter <span class="syntax"></span>payload<span class="syntax">.</span> <a href="Prim.Int.html#t:Compare" title="Prim.Int.Compare"><span class="ctor">Compare</span></a> n <a href="Bolson.Control.html#t:Neg1" title="Bolson.Control.Neg1"><span class="ctor">Neg1</span></a> <a href="Prim.Ordering.html#t:GT" title="Prim.Ordering.GT"><span class="ctor">GT</span></a> <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"id"</span> r <span class="syntax">=></span> <a href="Prim.Row.html#t:Lacks" title="Prim.Row.Lacks"><span class="ctor">Lacks</span></a> <span class="syntax">"raiseId"</span> r <span class="syntax">=></span> <a href="Bolson.Control.html#t:PortalComplex" title="Bolson.Control.PortalComplex"><span class="ctor">PortalComplex</span></a> logic specialization interpreter obj1 obj2 r payload <span class="syntax">-></span> <a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span><a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj1 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <span class="syntax">(</span><a href="Data.FastVect.FastVect.html#t:Vect" title="Data.FastVect.FastVect.Vect"><span class="ctor">Vect</span></a> n <span class="syntax">(</span>specialization <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj1 payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> obj2 payload<span class="syntax">)</span> <span class="syntax">-></span> obj2 payload</code></pre></div></div><div class="decl" id="v:fixComplexComplex"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:fixComplexComplex">#</a><span>fixComplexComplex</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Control.html#v:fixComplexComplex" title="Bolson.Control.fixComplexComplex"><span class="ident">fixComplexComplex</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>r <span class="syntax"></span>obj <span class="syntax"></span>logic <span class="syntax"></span>interpreter <span class="syntax"></span>payload<span class="syntax">.</span> <a href="Bolson.Control.html#t:Flatten" title="Bolson.Control.Flatten"><span class="ctor">Flatten</span></a> logic interpreter obj r payload <span class="syntax">-></span> <a href="Bolson.Control.html#t:Fix" title="Bolson.Control.Fix"><span class="ctor">Fix</span></a> interpreter obj r payload <span class="syntax">-></span> <span class="syntax">(</span><a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj payload<span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj payload<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic <span class="syntax">(</span>obj payload<span class="syntax">)</span></code></pre></div></div><div class="decl" id="v:switcher"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:switcher">#</a><span>switcher</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Control.html#v:switcher" title="Bolson.Control.switcher"><span class="ident">switcher</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>i <span class="syntax"></span>logic <span class="syntax"></span>obj<span class="syntax">.</span> <span class="syntax">(</span>i <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj<span class="syntax">)</span> <span class="syntax">-></span> <a href="FRP.Event.html#t:Event" title="FRP.Event.Event"><span class="ctor">Event</span></a> i <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj</code></pre></div></div></div><div class="col col--aside"><h3>Modules</h3><ul><li><a href="Ansi.Codes.html">Ansi.Codes</a></li><li><a href="Ansi.Output.html">Ansi.Output</a></li><li><a href="Bolson.Control.html">Bolson.Control</a></li><li><a href="Bolson.Core.html">Bolson.Core</a></li><li><a href="Control.Alt.html">Control.Alt</a></li><li><a href="Control.Alternative.html">Control.Alternative</a></li><li><a href="Control.Applicative.html">Control.Applicative</a></li><li><a href="Control.Apply.html">Control.Apply</a></li><li><a href="Control.Biapplicative.html">Control.Biapplicative</a></li><li><a href="Control.Biapply.html">Control.Biapply</a></li><li><a href="Control.Bind.html">Control.Bind</a></li><li><a href="Control.Category.html">Control.Category</a></li><li><a href="Control.Comonad.html">Control.Comonad</a></li><li><a href="Control.Comonad.Cofree.html">Control.Comonad.Cofree</a></li><li><a href="Control.Comonad.Cofree.Class.html">Control.Comonad.Cofree.Class</a></li><li><a href="Control.Comonad.Env.html">Control.Comonad.Env</a></li><li><a href="Control.Comonad.Env.Class.html">Control.Comonad.Env.Class</a></li><li><a href="Control.Comonad.Env.Trans.html">Control.Comonad.Env.Trans</a></li><li><a href="Control.Comonad.Store.html">Control.Comonad.Store</a></li><li><a href="Control.Comonad.Store.Class.html">Control.Comonad.Store.Class</a></li><li><a href="Control.Comonad.Store.Trans.html">Control.Comonad.Store.Trans</a></li><li><a href="Control.Comonad.Traced.html">Control.Comonad.Traced</a></li><li><a href="Control.Comonad.Traced.Class.html">Control.Comonad.Traced.Class</a></li><li><a href="Control.Comonad.Traced.Trans.html">Control.Comonad.Traced.Trans</a></li><li><a href="Control.Comonad.Trans.Class.html">Control.Comonad.Trans.Class</a></li><li><a href="Control.Extend.html">Control.Extend</a></li><li><a href="Control.Lazy.html">Control.Lazy</a></li><li><a href="Control.Monad.html">Control.Monad</a></li><li><a href="Control.Monad.Cont.html">Control.Monad.Cont</a></li><li><a href="Control.Monad.Cont.Class.html">Control.Monad.Cont.Class</a></li><li><a href="Control.Monad.Cont.Trans.html">Control.Monad.Cont.Trans</a></li><li><a href="Control.Monad.Error.Class.html">Control.Monad.Error.Class</a></li><li><a href="Control.Monad.Except.html">Control.Monad.Except</a></li><li><a href="Control.Monad.Except.Trans.html">Control.Monad.Except.Trans</a></li><li><a href="Control.Monad.Fork.Class.html">Control.Monad.Fork.Class</a></li><li><a href="Control.Monad.Free.html">Control.Monad.Free</a></li><li><a href="Control.Monad.Free.Class.html">Control.Monad.Free.Class</a></li><li><a href="Control.Monad.Gen.html">Control.Monad.Gen</a></li><li><a href="Control.Monad.Gen.Class.html">Control.Monad.Gen.Class</a></li><li><a href="Control.Monad.Gen.Common.html">Control.Monad.Gen.Common</a></li><li><a href="Control.Monad.Identity.Trans.html">Control.Monad.Identity.Trans</a></li><li><a href="Control.Monad.List.Trans.html">Control.Monad.List.Trans</a></li><li><a href="Control.Monad.Maybe.Trans.html">Control.Monad.Maybe.Trans</a></li><li><a href="Control.Monad.Morph.html">Control.Monad.Morph</a></li><li><a href="Control.Monad.RWS.html">Control.Monad.RWS</a></li><li><a href="Control.Monad.RWS.Trans.html">Control.Monad.RWS.Trans</a></li><li><a href="Control.Monad.Reader.html">Control.Monad.Reader</a></li><li><a href="Control.Monad.Reader.Class.html">Control.Monad.Reader.Class</a></li><li><a href="Control.Monad.Reader.Trans.html">Control.Monad.Reader.Trans</a></li><li><a href="Control.Monad.Rec.Class.html">Control.Monad.Rec.Class</a></li><li><a href="Control.Monad.ST.html">Control.Monad.ST</a></li><li><a href="Control.Monad.ST.Class.html">Control.Monad.ST.Class</a></li><li><a href="Control.Monad.ST.Global.html">Control.Monad.ST.Global</a></li><li><a href="Control.Monad.ST.Internal.html">Control.Monad.ST.Internal</a></li><li><a href="Control.Monad.ST.Ref.html">Control.Monad.ST.Ref</a></li><li><a href="Control.Monad.ST.Uncurried.html">Control.Monad.ST.Uncurried</a></li><li><a href="Control.Monad.State.html">Control.Monad.State</a></li><li><a href="Control.Monad.State.Class.html">Control.Monad.State.Class</a></li><li><a href="Control.Monad.State.Trans.html">Control.Monad.State.Trans</a></li><li><a href="Control.Monad.Trampoline.html">Control.Monad.Trampoline</a></li><li><a href="Control.Monad.Trans.Class.html">Control.Monad.Trans.Class</a></li><li><a href="Control.Monad.Writer.html">Control.Monad.Writer</a></li><li><a href="Control.Monad.Writer.Class.html">Control.Monad.Writer.Class</a></li><li><a href="Control.Monad.Writer.Trans.html">Control.Monad.Writer.Trans</a></li><li><a href="Control.MonadPlus.html">Control.MonadPlus</a></li><li><a href="Control.Parallel.html">Control.Parallel</a></li><li><a href="Control.Parallel.Class.html">Control.Parallel.Class</a></li><li><a href="Control.Plus.html">Control.Plus</a></li><li><a href="Control.Semigroupoid.html">Control.Semigroupoid</a></li><li><a href="Data.Array.html">Data.Array</a></li><li><a href="Data.Array.NonEmpty.html">Data.Array.NonEmpty</a></li><li><a href="Data.Array.NonEmpty.Internal.html">Data.Array.NonEmpty.Internal</a></li><li><a href="Data.Array.Partial.html">Data.Array.Partial</a></li><li><a href="Data.Array.ST.html">Data.Array.ST</a></li><li><a href="Data.Array.ST.Iterator.html">Data.Array.ST.Iterator</a></li><li><a href="Data.Array.ST.Partial.html">Data.Array.ST.Partial</a></li><li><a href="Data.ArrayBuffer.Types.html">Data.ArrayBuffer.Types</a></li><li><a href="Data.Bifoldable.html">Data.Bifoldable</a></li><li><a href="Data.Bifunctor.html">Data.Bifunctor</a></li><li><a href="Data.Bifunctor.Join.html">Data.Bifunctor.Join</a></li><li><a href="Data.Bitraversable.html">Data.Bitraversable</a></li><li><a href="Data.Boolean.html">Data.Boolean</a></li><li><a href="Data.BooleanAlgebra.html">Data.BooleanAlgebra</a></li><li><a href="Data.Bounded.html">Data.Bounded</a></li><li><a href="Data.Bounded.Generic.html">Data.Bounded.Generic</a></li><li><a href="Data.CatList.html">Data.CatList</a></li><li><a href="Data.CatQueue.html">Data.CatQueue</a></li><li><a href="Data.Char.html">Data.Char</a></li><li><a href="Data.Char.Gen.html">Data.Char.Gen</a></li><li><a href="Data.CommutativeRing.html">Data.CommutativeRing</a></li><li><a href="Data.Compactable.html">Data.Compactable</a></li><li><a href="Data.Comparison.html">Data.Comparison</a></li><li><a href="Data.Const.html">Data.Const</a></li><li><a href="Data.Coyoneda.html">Data.Coyoneda</a></li><li><a href="Data.Date.html">Data.Date</a></li><li><a href="Data.Date.Component.html">Data.Date.Component</a></li><li><a href="Data.Date.Component.Gen.html">Data.Date.Component.Gen</a></li><li><a href="Data.Date.Gen.html">Data.Date.Gen</a></li><li><a href="Data.DateTime.html">Data.DateTime</a></li><li><a href="Data.DateTime.Gen.html">Data.DateTime.Gen</a></li><li><a href="Data.DateTime.Instant.html">Data.DateTime.Instant</a></li><li><a href="Data.Decidable.html">Data.Decidable</a></li><li><a href="Data.Decide.html">Data.Decide</a></li><li><a href="Data.Distributive.html">Data.Distributive</a></li><li><a href="Data.Divide.html">Data.Divide</a></li><li><a href="Data.Divisible.html">Data.Divisible</a></li><li><a href="Data.DivisionRing.html">Data.DivisionRing</a></li><li><a href="Data.Either.html">Data.Either</a></li><li><a href="Data.Either.Inject.html">Data.Either.Inject</a></li><li><a href="Data.Either.Nested.html">Data.Either.Nested</a></li><li><a href="Data.Enum.html">Data.Enum</a></li><li><a href="Data.Enum.Gen.html">Data.Enum.Gen</a></li><li><a href="Data.Enum.Generic.html">Data.Enum.Generic</a></li><li><a href="Data.Eq.html">Data.Eq</a></li><li><a href="Data.Eq.Generic.html">Data.Eq.Generic</a></li><li><a href="Data.Equivalence.html">Data.Equivalence</a></li><li><a href="Data.EuclideanRing.html">Data.EuclideanRing</a></li><li><a href="Data.Exists.html">Data.Exists</a></li><li><a href="Data.FastVect.Common.html">Data.FastVect.Common</a></li><li><a href="Data.FastVect.Common.Matrix.html">Data.FastVect.Common.Matrix</a></li><li><a href="Data.FastVect.FastVect.html">Data.FastVect.FastVect</a></li><li><a href="Data.FastVect.FastVect.Matrix.html">Data.FastVect.FastVect.Matrix</a></li><li><a href="Data.FastVect.MinLenVect.html">Data.FastVect.MinLenVect</a></li><li><a href="Data.FastVect.Sparse.Read.html">Data.FastVect.Sparse.Read</a></li><li><a href="Data.FastVect.Sparse.Write.html">Data.FastVect.Sparse.Write</a></li><li><a href="Data.Field.html">Data.Field</a></li><li><a href="Data.Filterable.html">Data.Filterable</a></li><li><a href="Data.Foldable.html">Data.Foldable</a></li><li><a href="Data.FoldableWithIndex.html">Data.FoldableWithIndex</a></li><li><a href="Data.Function.html">Data.Function</a></li><li><a href="Data.Function.Uncurried.html">Data.Function.Uncurried</a></li><li><a href="Data.Functor.html">Data.Functor</a></li><li><a href="Data.Functor.App.html">Data.Functor.App</a></li><li><a href="Data.Functor.Clown.html">Data.Functor.Clown</a></li><li><a href="Data.Functor.Compose.html">Data.Functor.Compose</a></li><li><a href="Data.Functor.Contravariant.html">Data.Functor.Contravariant</a></li><li><a href="Data.Functor.Coproduct.html">Data.Functor.Coproduct</a></li><li><a href="Data.Functor.Coproduct.Inject.html">Data.Functor.Coproduct.Inject</a></li><li><a href="Data.Functor.Coproduct.Nested.html">Data.Functor.Coproduct.Nested</a></li><li><a href="Data.Functor.Costar.html">Data.Functor.Costar</a></li><li><a href="Data.Functor.Flip.html">Data.Functor.Flip</a></li><li><a href="Data.Functor.Invariant.html">Data.Functor.Invariant</a></li><li><a href="Data.Functor.Joker.html">Data.Functor.Joker</a></li><li><a href="Data.Functor.Product.html">Data.Functor.Product</a></li><li><a href="Data.Functor.Product.Nested.html">Data.Functor.Product.Nested</a></li><li><a href="Data.Functor.Product2.html">Data.Functor.Product2</a></li><li><a href="Data.Functor.Variant.html">Data.Functor.Variant</a></li><li><a href="Data.FunctorWithIndex.html">Data.FunctorWithIndex</a></li><li><a href="Data.Generic.Rep.html">Data.Generic.Rep</a></li><li><a href="Data.HeytingAlgebra.html">Data.HeytingAlgebra</a></li><li><a href="Data.HeytingAlgebra.Generic.html">Data.HeytingAlgebra.Generic</a></li><li><a href="Data.Identity.html">Data.Identity</a></li><li><a href="Data.Int.html">Data.Int</a></li><li><a href="Data.Int.Bits.html">Data.Int.Bits</a></li><li><a href="Data.Interval.html">Data.Interval</a></li><li><a href="Data.Interval.Duration.html">Data.Interval.Duration</a></li><li><a href="Data.Interval.Duration.Iso.html">Data.Interval.Duration.Iso</a></li><li><a href="Data.JSDate.html">Data.JSDate</a></li><li><a href="Data.Lazy.html">Data.Lazy</a></li><li><a href="Data.List.html">Data.List</a></li><li><a href="Data.List.Internal.html">Data.List.Internal</a></li><li><a href="Data.List.Lazy.html">Data.List.Lazy</a></li><li><a href="Data.List.Lazy.NonEmpty.html">Data.List.Lazy.NonEmpty</a></li><li><a href="Data.List.Lazy.Types.html">Data.List.Lazy.Types</a></li><li><a href="Data.List.NonEmpty.html">Data.List.NonEmpty</a></li><li><a href="Data.List.Partial.html">Data.List.Partial</a></li><li><a href="Data.List.Types.html">Data.List.Types</a></li><li><a href="Data.List.ZipList.html">Data.List.ZipList</a></li><li><a href="Data.Map.html">Data.Map</a></li><li><a href="Data.Map.Gen.html">Data.Map.Gen</a></li><li><a href="Data.Map.Internal.html">Data.Map.Internal</a></li><li><a href="Data.Maybe.html">Data.Maybe</a></li><li><a href="Data.Maybe.First.html">Data.Maybe.First</a></li><li><a href="Data.Maybe.Last.html">Data.Maybe.Last</a></li><li><a href="Data.MediaType.html">Data.MediaType</a></li><li><a href="Data.MediaType.Common.html">Data.MediaType.Common</a></li><li><a href="Data.Monoid.html">Data.Monoid</a></li><li><a href="Data.Monoid.Additive.html">Data.Monoid.Additive</a></li><li><a href="Data.Monoid.Alternate.html">Data.Monoid.Alternate</a></li><li><a href="Data.Monoid.Conj.html">Data.Monoid.Conj</a></li><li><a href="Data.Monoid.Disj.html">Data.Monoid.Disj</a></li><li><a href="Data.Monoid.Dual.html">Data.Monoid.Dual</a></li><li><a href="Data.Monoid.Endo.html">Data.Monoid.Endo</a></li><li><a href="Data.Monoid.Generic.html">Data.Monoid.Generic</a></li><li><a href="Data.Monoid.Multiplicative.html">Data.Monoid.Multiplicative</a></li><li><a href="Data.NaturalTransformation.html">Data.NaturalTransformation</a></li><li><a href="Data.Newtype.html">Data.Newtype</a></li><li><a href="Data.NonEmpty.html">Data.NonEmpty</a></li><li><a href="Data.Nullable.html">Data.Nullable</a></li><li><a href="Data.Number.html">Data.Number</a></li><li><a href="Data.Number.Approximate.html">Data.Number.Approximate</a></li><li><a href="Data.Number.Format.html">Data.Number.Format</a></li><li><a href="Data.Op.html">Data.Op</a></li><li><a href="Data.Ord.html">Data.Ord</a></li><li><a href="Data.Ord.Down.html">Data.Ord.Down</a></li><li><a href="Data.Ord.Generic.html">Data.Ord.Generic</a></li><li><a href="Data.Ord.Max.html">Data.Ord.Max</a></li><li><a href="Data.Ord.Min.html">Data.Ord.Min</a></li><li><a href="Data.Ordering.html">Data.Ordering</a></li><li><a href="Data.Posix.html">Data.Posix</a></li><li><a href="Data.Posix.Signal.html">Data.Posix.Signal</a></li><li><a href="Data.Predicate.html">Data.Predicate</a></li><li><a href="Data.Profunctor.html">Data.Profunctor</a></li><li><a href="Data.Profunctor.Choice.html">Data.Profunctor.Choice</a></li><li><a href="Data.Profunctor.Closed.html">Data.Profunctor.Closed</a></li><li><a href="Data.Profunctor.Cochoice.html">Data.Profunctor.Cochoice</a></li><li><a href="Data.Profunctor.Costrong.html">Data.Profunctor.Costrong</a></li><li><a href="Data.Profunctor.Join.html">Data.Profunctor.Join</a></li><li><a href="Data.Profunctor.Split.html">Data.Profunctor.Split</a></li><li><a href="Data.Profunctor.Star.html">Data.Profunctor.Star</a></li><li><a href="Data.Profunctor.Strong.html">Data.Profunctor.Strong</a></li><li><a href="Data.Reflectable.html">Data.Reflectable</a></li><li><a href="Data.Ring.html">Data.Ring</a></li><li><a href="Data.Ring.Generic.html">Data.Ring.Generic</a></li><li><a href="Data.Semigroup.html">Data.Semigroup</a></li><li><a href="Data.Semigroup.First.html">Data.Semigroup.First</a></li><li><a href="Data.Semigroup.Foldable.html">Data.Semigroup.Foldable</a></li><li><a href="Data.Semigroup.Generic.html">Data.Semigroup.Generic</a></li><li><a href="Data.Semigroup.Last.html">Data.Semigroup.Last</a></li><li><a href="Data.Semigroup.Traversable.html">Data.Semigroup.Traversable</a></li><li><a href="Data.Semiring.html">Data.Semiring</a></li><li><a href="Data.Semiring.Generic.html">Data.Semiring.Generic</a></li><li><a href="Data.Set.html">Data.Set</a></li><li><a href="Data.Set.NonEmpty.html">Data.Set.NonEmpty</a></li><li><a href="Data.Show.html">Data.Show</a></li><li><a href="Data.Show.Generic.html">Data.Show.Generic</a></li><li><a href="Data.String.html">Data.String</a></li><li><a href="Data.String.CaseInsensitive.html">Data.String.CaseInsensitive</a></li><li><a href="Data.String.CodePoints.html">Data.String.CodePoints</a></li><li><a href="Data.String.CodeUnits.html">Data.String.CodeUnits</a></li><li><a href="Data.String.Common.html">Data.String.Common</a></li><li><a href="Data.String.Gen.html">Data.String.Gen</a></li><li><a href="Data.String.NonEmpty.html">Data.String.NonEmpty</a></li><li><a href="Data.String.NonEmpty.CaseInsensitive.html">Data.String.NonEmpty.CaseInsensitive</a></li><li><a href="Data.String.NonEmpty.CodePoints.html">Data.String.NonEmpty.CodePoints</a></li><li><a href="Data.String.NonEmpty.CodeUnits.html">Data.String.NonEmpty.CodeUnits</a></li><li><a href="Data.String.NonEmpty.Internal.html">Data.String.NonEmpty.Internal</a></li><li><a href="Data.String.Pattern.html">Data.String.Pattern</a></li><li><a href="Data.String.Regex.html">Data.String.Regex</a></li><li><a href="Data.String.Regex.Flags.html">Data.String.Regex.Flags</a></li><li><a href="Data.String.Regex.Unsafe.html">Data.String.Regex.Unsafe</a></li><li><a href="Data.String.Unsafe.html">Data.String.Unsafe</a></li><li><a href="Data.Symbol.html">Data.Symbol</a></li><li><a href="Data.Time.html">Data.Time</a></li><li><a href="Data.Time.Component.html">Data.Time.Component</a></li><li><a href="Data.Time.Component.Gen.html">Data.Time.Component.Gen</a></li><li><a href="Data.Time.Duration.html">Data.Time.Duration</a></li><li><a href="Data.Time.Duration.Gen.html">Data.Time.Duration.Gen</a></li><li><a href="Data.Time.Gen.html">Data.Time.Gen</a></li><li><a href="Data.Traversable.html">Data.Traversable</a></li><li><a href="Data.Traversable.Accum.html">Data.Traversable.Accum</a></li><li><a href="Data.Traversable.Accum.Internal.html">Data.Traversable.Accum.Internal</a></li><li><a href="Data.TraversableWithIndex.html">Data.TraversableWithIndex</a></li><li><a href="Data.Tuple.html">Data.Tuple</a></li><li><a href="Data.Tuple.Nested.html">Data.Tuple.Nested</a></li><li><a href="Data.Unfoldable.html">Data.Unfoldable</a></li><li><a href="Data.Unfoldable1.html">Data.Unfoldable1</a></li><li><a href="Data.Unit.html">Data.Unit</a></li><li><a href="Data.Variant.html">Data.Variant</a></li><li><a href="Data.Variant.Internal.html">Data.Variant.Internal</a></li><li><a href="Data.Void.html">Data.Void</a></li><li><a href="Data.Witherable.html">Data.Witherable</a></li><li><a href="Data.Yoneda.html">Data.Yoneda</a></li><li><a href="Effect.html">Effect</a></li><li><a href="Effect.AVar.html">Effect.AVar</a></li><li><a href="Effect.Aff.html">Effect.Aff</a></li><li><a href="Effect.Aff.AVar.html">Effect.Aff.AVar</a></li><li><a href="Effect.Aff.Class.html">Effect.Aff.Class</a></li><li><a href="Effect.Aff.Compat.html">Effect.Aff.Compat</a></li><li><a href="Effect.Class.html">Effect.Class</a></li><li><a href="Effect.Class.Console.html">Effect.Class.Console</a></li><li><a href="Effect.Console.html">Effect.Console</a></li><li><a href="Effect.Exception.html">Effect.Exception</a></li><li><a href="Effect.Exception.Unsafe.html">Effect.Exception.Unsafe</a></li><li><a href="Effect.Now.html">Effect.Now</a></li><li><a href="Effect.Ref.html">Effect.Ref</a></li><li><a href="Effect.Timer.html">Effect.Timer</a></li><li><a href="Effect.Uncurried.html">Effect.Uncurried</a></li><li><a href="Effect.Unsafe.html">Effect.Unsafe</a></li><li><a href="FRP.Behavior.html">FRP.Behavior</a></li><li><a href="FRP.Behavior.Keyboard.html">FRP.Behavior.Keyboard</a></li><li><a href="FRP.Behavior.Mouse.html">FRP.Behavior.Mouse</a></li><li><a href="FRP.Behavior.Time.html">FRP.Behavior.Time</a></li><li><a href="FRP.Event.html">FRP.Event</a></li><li><a href="FRP.Event.AnimationFrame.html">FRP.Event.AnimationFrame</a></li><li><a href="FRP.Event.Class.html">FRP.Event.Class</a></li><li><a href="FRP.Event.Keyboard.html">FRP.Event.Keyboard</a></li><li><a href="FRP.Event.Mouse.html">FRP.Event.Mouse</a></li><li><a href="FRP.Event.Time.html">FRP.Event.Time</a></li><li><a href="FRP.Event.VBus.html">FRP.Event.VBus</a></li><li><a href="Foreign.html">Foreign</a></li><li><a href="Foreign.Index.html">Foreign.Index</a></li><li><a href="Foreign.Keys.html">Foreign.Keys</a></li><li><a href="Foreign.Object.html">Foreign.Object</a></li><li><a href="Foreign.Object.Gen.html">Foreign.Object.Gen</a></li><li><a href="Foreign.Object.ST.html">Foreign.Object.ST</a></li><li><a href="Foreign.Object.ST.Unsafe.html">Foreign.Object.ST.Unsafe</a></li><li><a href="Foreign.Object.Unsafe.html">Foreign.Object.Unsafe</a></li><li><a href="Heterogeneous.Folding.html">Heterogeneous.Folding</a></li><li><a href="Heterogeneous.Mapping.html">Heterogeneous.Mapping</a></li><li><a href="Node.Buffer.html">Node.Buffer</a></li><li><a href="Node.Buffer.Class.html">Node.Buffer.Class</a></li><li><a href="Node.Buffer.Constants.html">Node.Buffer.Constants</a></li><li><a href="Node.Buffer.Immutable.html">Node.Buffer.Immutable</a></li><li><a href="Node.Buffer.ST.html">Node.Buffer.ST</a></li><li><a href="Node.Buffer.Types.html">Node.Buffer.Types</a></li><li><a href="Node.Encoding.html">Node.Encoding</a></li><li><a href="Node.EventEmitter.html">Node.EventEmitter</a></li><li><a href="Node.EventEmitter.UtilTypes.html">Node.EventEmitter.UtilTypes</a></li><li><a href="Node.FS.html">Node.FS</a></li><li><a href="Node.FS.Aff.html">Node.FS.Aff</a></li><li><a href="Node.FS.Async.html">Node.FS.Async</a></li><li><a href="Node.FS.Constants.html">Node.FS.Constants</a></li><li><a href="Node.FS.Perms.html">Node.FS.Perms</a></li><li><a href="Node.FS.Stats.html">Node.FS.Stats</a></li><li><a href="Node.FS.Stream.html">Node.FS.Stream</a></li><li><a href="Node.FS.Sync.html">Node.FS.Sync</a></li><li><a href="Node.Path.html">Node.Path</a></li><li><a href="Node.Platform.html">Node.Platform</a></li><li><a href="Node.Process.html">Node.Process</a></li><li><a href="Node.Stream.html">Node.Stream</a></li><li><a href="Node.Stream.Aff.html">Node.Stream.Aff</a></li><li><a href="Node.Symbol.html">Node.Symbol</a></li><li><a href="Partial.html">Partial</a></li><li><a href="Partial.Unsafe.html">Partial.Unsafe</a></li><li><a href="Performance.Minibench.html">Performance.Minibench</a></li><li><a href="Pipes.html">Pipes</a></li><li><a href="Pipes.Core.html">Pipes.Core</a></li><li><a href="Pipes.Internal.html">Pipes.Internal</a></li><li><a href="Pipes.ListT.html">Pipes.ListT</a></li><li><a href="Pipes.Prelude.html">Pipes.Prelude</a></li><li><a href="Prelude.html">Prelude</a></li><li><a href="Prim.html">Prim</a></li><li><a href="Prim.Boolean.html">Prim.Boolean</a></li><li><a href="Prim.Coerce.html">Prim.Coerce</a></li><li><a href="Prim.Int.html">Prim.Int</a></li><li><a href="Prim.Ordering.html">Prim.Ordering</a></li><li><a href="Prim.Row.html">Prim.Row</a></li><li><a href="Prim.RowList.html">Prim.RowList</a></li><li><a href="Prim.Symbol.html">Prim.Symbol</a></li><li><a href="Prim.TypeError.html">Prim.TypeError</a></li><li><a href="Record.html">Record</a></li><li><a href="Record.Builder.html">Record.Builder</a></li><li><a href="Record.Studio.html">Record.Studio</a></li><li><a href="Record.Studio.Keys.html">Record.Studio.Keys</a></li><li><a href="Record.Studio.Map.html">Record.Studio.Map</a></li><li><a href="Record.Studio.MapKind.html">Record.Studio.MapKind</a></li><li><a href="Record.Studio.MapUniform.html">Record.Studio.MapUniform</a></li><li><a href="Record.Studio.Merge.html">Record.Studio.Merge</a></li><li><a href="Record.Studio.SameKeys.html">Record.Studio.SameKeys</a></li><li><a href="Record.Studio.Sequence.html">Record.Studio.Sequence</a></li><li><a href="Record.Studio.Shrink.html">Record.Studio.Shrink</a></li><li><a href="Record.Studio.SingletonRecord.html">Record.Studio.SingletonRecord</a></li><li><a href="Record.Unsafe.html">Record.Unsafe</a></li><li><a href="Record.Unsafe.Union.html">Record.Unsafe.Union</a></li><li><a href="Safe.Coerce.html">Safe.Coerce</a></li><li><a href="Spago.Generated.BuildInfo.html">Spago.Generated.BuildInfo</a></li><li><a href="Test.Spec.html">Test.Spec</a></li><li><a href="Test.Spec.Assertions.html">Test.Spec.Assertions</a></li><li><a href="Test.Spec.Assertions.String.html">Test.Spec.Assertions.String</a></li><li><a href="Test.Spec.Config.html">Test.Spec.Config</a></li><li><a href="Test.Spec.Console.html">Test.Spec.Console</a></li><li><a href="Test.Spec.Reporter.html">Test.Spec.Reporter</a></li><li><a href="Test.Spec.Reporter.Base.html">Test.Spec.Reporter.Base</a></li><li><a href="Test.Spec.Reporter.Console.html">Test.Spec.Reporter.Console</a></li><li><a href="Test.Spec.Reporter.Dot.html">Test.Spec.Reporter.Dot</a></li><li><a href="Test.Spec.Reporter.Spec.html">Test.Spec.Reporter.Spec</a></li><li><a href="Test.Spec.Reporter.Tap.html">Test.Spec.Reporter.Tap</a></li><li><a href="Test.Spec.Reporter.TeamCity.html">Test.Spec.Reporter.TeamCity</a></li><li><a href="Test.Spec.Result.html">Test.Spec.Result</a></li><li><a href="Test.Spec.Runner.html">Test.Spec.Runner</a></li><li><a href="Test.Spec.Runner.Event.html">Test.Spec.Runner.Event</a></li><li><a href="Test.Spec.Speed.html">Test.Spec.Speed</a></li><li><a href="Test.Spec.Style.html">Test.Spec.Style</a></li><li><a href="Test.Spec.Summary.html">Test.Spec.Summary</a></li><li><a href="Test.Spec.Tree.html">Test.Spec.Tree</a></li><li><a href="Type.Data.Boolean.html">Type.Data.Boolean</a></li><li><a href="Type.Data.Ordering.html">Type.Data.Ordering</a></li><li><a href="Type.Data.Symbol.html">Type.Data.Symbol</a></li><li><a href="Type.Equality.html">Type.Equality</a></li><li><a href="Type.Function.html">Type.Function</a></li><li><a href="Type.Prelude.html">Type.Prelude</a></li><li><a href="Type.Proxy.html">Type.Proxy</a></li><li><a href="Type.Row.html">Type.Row</a></li><li><a href="Type.Row.Homogeneous.html">Type.Row.Homogeneous</a></li><li><a href="Type.RowList.html">Type.RowList</a></li><li><a href="Uncurried.RWSE.html">Uncurried.RWSE</a></li><li><a href="Uncurried.RWSET.html">Uncurried.RWSET</a></li><li><a href="Uncurried.Reader.html">Uncurried.Reader</a></li><li><a href="Uncurried.ReaderT.html">Uncurried.ReaderT</a></li><li><a href="Uncurried.State.html">Uncurried.State</a></li><li><a href="Uncurried.StateT.html">Uncurried.StateT</a></li><li><a href="Uncurried.Writer.html">Uncurried.Writer</a></li><li><a href="Uncurried.WriterT.html">Uncurried.WriterT</a></li><li><a href="Unsafe.Coerce.html">Unsafe.Coerce</a></li><li><a href="Unsafe.Reference.html">Unsafe.Reference</a></li><li><a href="Web.DOM.html">Web.DOM</a></li><li><a href="Web.DOM.CharacterData.html">Web.DOM.CharacterData</a></li><li><a href="Web.DOM.ChildNode.html">Web.DOM.ChildNode</a></li><li><a href="Web.DOM.Comment.html">Web.DOM.Comment</a></li><li><a href="Web.DOM.DOMTokenList.html">Web.DOM.DOMTokenList</a></li><li><a href="Web.DOM.Document.html">Web.DOM.Document</a></li><li><a href="Web.DOM.DocumentFragment.html">Web.DOM.DocumentFragment</a></li><li><a href="Web.DOM.DocumentType.html">Web.DOM.DocumentType</a></li><li><a href="Web.DOM.Element.html">Web.DOM.Element</a></li><li><a href="Web.DOM.HTMLCollection.html">Web.DOM.HTMLCollection</a></li><li><a href="Web.DOM.Internal.Types.html">Web.DOM.Internal.Types</a></li><li><a href="Web.DOM.MutationObserver.html">Web.DOM.MutationObserver</a></li><li><a href="Web.DOM.MutationRecord.html">Web.DOM.MutationRecord</a></li><li><a href="Web.DOM.Node.html">Web.DOM.Node</a></li><li><a href="Web.DOM.NodeList.html">Web.DOM.NodeList</a></li><li><a href="Web.DOM.NodeType.html">Web.DOM.NodeType</a></li><li><a href="Web.DOM.NonDocumentTypeChildNode.html">Web.DOM.NonDocumentTypeChildNode</a></li><li><a href="Web.DOM.NonElementParentNode.html">Web.DOM.NonElementParentNode</a></li><li><a href="Web.DOM.ParentNode.html">Web.DOM.ParentNode</a></li><li><a href="Web.DOM.ProcessingInstruction.html">Web.DOM.ProcessingInstruction</a></li><li><a href="Web.DOM.ShadowRoot.html">Web.DOM.ShadowRoot</a></li><li><a href="Web.DOM.Text.html">Web.DOM.Text</a></li><li><a href="Web.Event.CustomEvent.html">Web.Event.CustomEvent</a></li><li><a href="Web.Event.Event.html">Web.Event.Event</a></li><li><a href="Web.Event.EventPhase.html">Web.Event.EventPhase</a></li><li><a href="Web.Event.EventTarget.html">Web.Event.EventTarget</a></li><li><a href="Web.Event.Internal.Types.html">Web.Event.Internal.Types</a></li><li><a href="Web.File.Blob.html">Web.File.Blob</a></li><li><a href="Web.File.File.html">Web.File.File</a></li><li><a href="Web.File.FileList.html">Web.File.FileList</a></li><li><a href="Web.File.FileReader.html">Web.File.FileReader</a></li><li><a href="Web.File.FileReader.ReadyState.html">Web.File.FileReader.ReadyState</a></li><li><a href="Web.File.Url.html">Web.File.Url</a></li><li><a href="Web.HTML.html">Web.HTML</a></li><li><a href="Web.HTML.Common.html">Web.HTML.Common</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.html">Web.HTML.Event.BeforeUnloadEvent</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.EventTypes.html">Web.HTML.Event.BeforeUnloadEvent.EventTypes</a></li><li><a href="Web.HTML.Event.DataTransfer.html">Web.HTML.Event.DataTransfer</a></li><li><a href="Web.HTML.Event.DataTransfer.DataTransferItem.html">Web.HTML.Event.DataTransfer.DataTransferItem</a></li><li><a href="Web.HTML.Event.DragEvent.html">Web.HTML.Event.DragEvent</a></li><li><a href="Web.HTML.Event.DragEvent.EventTypes.html">Web.HTML.Event.DragEvent.EventTypes</a></li><li><a href="Web.HTML.Event.ErrorEvent.html">Web.HTML.Event.ErrorEvent</a></li><li><a href="Web.HTML.Event.EventTypes.html">Web.HTML.Event.EventTypes</a></li><li><a href="Web.HTML.Event.HashChangeEvent.html">Web.HTML.Event.HashChangeEvent</a></li><li><a href="Web.HTML.Event.HashChangeEvent.EventTypes.html">Web.HTML.Event.HashChangeEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.html">Web.HTML.Event.PageTransitionEvent</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.EventTypes.html">Web.HTML.Event.PageTransitionEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PopStateEvent.html">Web.HTML.Event.PopStateEvent</a></li><li><a href="Web.HTML.Event.PopStateEvent.EventTypes.html">Web.HTML.Event.PopStateEvent.EventTypes</a></li><li><a href="Web.HTML.Event.TrackEvent.html">Web.HTML.Event.TrackEvent</a></li><li><a href="Web.HTML.Event.TrackEvent.EventTypes.html">Web.HTML.Event.TrackEvent.EventTypes</a></li><li><a href="Web.HTML.HTMLAnchorElement.html">Web.HTML.HTMLAnchorElement</a></li><li><a href="Web.HTML.HTMLAreaElement.html">Web.HTML.HTMLAreaElement</a></li><li><a href="Web.HTML.HTMLAudioElement.html">Web.HTML.HTMLAudioElement</a></li><li><a href="Web.HTML.HTMLBRElement.html">Web.HTML.HTMLBRElement</a></li><li><a href="Web.HTML.HTMLBaseElement.html">Web.HTML.HTMLBaseElement</a></li><li><a href="Web.HTML.HTMLBodyElement.html">Web.HTML.HTMLBodyElement</a></li><li><a href="Web.HTML.HTMLButtonElement.html">Web.HTML.HTMLButtonElement</a></li><li><a href="Web.HTML.HTMLCanvasElement.html">Web.HTML.HTMLCanvasElement</a></li><li><a href="Web.HTML.HTMLDListElement.html">Web.HTML.HTMLDListElement</a></li><li><a href="Web.HTML.HTMLDataElement.html">Web.HTML.HTMLDataElement</a></li><li><a href="Web.HTML.HTMLDataListElement.html">Web.HTML.HTMLDataListElement</a></li><li><a href="Web.HTML.HTMLDivElement.html">Web.HTML.HTMLDivElement</a></li><li><a href="Web.HTML.HTMLDocument.html">Web.HTML.HTMLDocument</a></li><li><a href="Web.HTML.HTMLDocument.ReadyState.html">Web.HTML.HTMLDocument.ReadyState</a></li><li><a href="Web.HTML.HTMLDocument.VisibilityState.html">Web.HTML.HTMLDocument.VisibilityState</a></li><li><a href="Web.HTML.HTMLElement.html">Web.HTML.HTMLElement</a></li><li><a href="Web.HTML.HTMLEmbedElement.html">Web.HTML.HTMLEmbedElement</a></li><li><a href="Web.HTML.HTMLFieldSetElement.html">Web.HTML.HTMLFieldSetElement</a></li><li><a href="Web.HTML.HTMLFormElement.html">Web.HTML.HTMLFormElement</a></li><li><a href="Web.HTML.HTMLHRElement.html">Web.HTML.HTMLHRElement</a></li><li><a href="Web.HTML.HTMLHeadElement.html">Web.HTML.HTMLHeadElement</a></li><li><a href="Web.HTML.HTMLHeadingElement.html">Web.HTML.HTMLHeadingElement</a></li><li><a href="Web.HTML.HTMLHtmlElement.html">Web.HTML.HTMLHtmlElement</a></li><li><a href="Web.HTML.HTMLHyperlinkElementUtils.html">Web.HTML.HTMLHyperlinkElementUtils</a></li><li><a href="Web.HTML.HTMLIFrameElement.html">Web.HTML.HTMLIFrameElement</a></li><li><a href="Web.HTML.HTMLImageElement.html">Web.HTML.HTMLImageElement</a></li><li><a href="Web.HTML.HTMLImageElement.CORSMode.html">Web.HTML.HTMLImageElement.CORSMode</a></li><li><a href="Web.HTML.HTMLImageElement.DecodingHint.html">Web.HTML.HTMLImageElement.DecodingHint</a></li><li><a href="Web.HTML.HTMLImageElement.Laziness.html">Web.HTML.HTMLImageElement.Laziness</a></li><li><a href="Web.HTML.HTMLInputElement.html">Web.HTML.HTMLInputElement</a></li><li><a href="Web.HTML.HTMLKeygenElement.html">Web.HTML.HTMLKeygenElement</a></li><li><a href="Web.HTML.HTMLLIElement.html">Web.HTML.HTMLLIElement</a></li><li><a href="Web.HTML.HTMLLabelElement.html">Web.HTML.HTMLLabelElement</a></li><li><a href="Web.HTML.HTMLLegendElement.html">Web.HTML.HTMLLegendElement</a></li><li><a href="Web.HTML.HTMLLinkElement.html">Web.HTML.HTMLLinkElement</a></li><li><a href="Web.HTML.HTMLMapElement.html">Web.HTML.HTMLMapElement</a></li><li><a href="Web.HTML.HTMLMediaElement.html">Web.HTML.HTMLMediaElement</a></li><li><a href="Web.HTML.HTMLMediaElement.CanPlayType.html">Web.HTML.HTMLMediaElement.CanPlayType</a></li><li><a href="Web.HTML.HTMLMediaElement.NetworkState.html">Web.HTML.HTMLMediaElement.NetworkState</a></li><li><a href="Web.HTML.HTMLMediaElement.ReadyState.html">Web.HTML.HTMLMediaElement.ReadyState</a></li><li><a href="Web.HTML.HTMLMetaElement.html">Web.HTML.HTMLMetaElement</a></li><li><a href="Web.HTML.HTMLMeterElement.html">Web.HTML.HTMLMeterElement</a></li><li><a href="Web.HTML.HTMLModElement.html">Web.HTML.HTMLModElement</a></li><li><a href="Web.HTML.HTMLOListElement.html">Web.HTML.HTMLOListElement</a></li><li><a href="Web.HTML.HTMLObjectElement.html">Web.HTML.HTMLObjectElement</a></li><li><a href="Web.HTML.HTMLOptGroupElement.html">Web.HTML.HTMLOptGroupElement</a></li><li><a href="Web.HTML.HTMLOptionElement.html">Web.HTML.HTMLOptionElement</a></li><li><a href="Web.HTML.HTMLOutputElement.html">Web.HTML.HTMLOutputElement</a></li><li><a href="Web.HTML.HTMLParagraphElement.html">Web.HTML.HTMLParagraphElement</a></li><li><a href="Web.HTML.HTMLParamElement.html">Web.HTML.HTMLParamElement</a></li><li><a href="Web.HTML.HTMLPreElement.html">Web.HTML.HTMLPreElement</a></li><li><a href="Web.HTML.HTMLProgressElement.html">Web.HTML.HTMLProgressElement</a></li><li><a href="Web.HTML.HTMLQuoteElement.html">Web.HTML.HTMLQuoteElement</a></li><li><a href="Web.HTML.HTMLScriptElement.html">Web.HTML.HTMLScriptElement</a></li><li><a href="Web.HTML.HTMLSelectElement.html">Web.HTML.HTMLSelectElement</a></li><li><a href="Web.HTML.HTMLSourceElement.html">Web.HTML.HTMLSourceElement</a></li><li><a href="Web.HTML.HTMLSpanElement.html">Web.HTML.HTMLSpanElement</a></li><li><a href="Web.HTML.HTMLStyleElement.html">Web.HTML.HTMLStyleElement</a></li><li><a href="Web.HTML.HTMLTableCaptionElement.html">Web.HTML.HTMLTableCaptionElement</a></li><li><a href="Web.HTML.HTMLTableCellElement.html">Web.HTML.HTMLTableCellElement</a></li><li><a href="Web.HTML.HTMLTableColElement.html">Web.HTML.HTMLTableColElement</a></li><li><a href="Web.HTML.HTMLTableDataCellElement.html">Web.HTML.HTMLTableDataCellElement</a></li><li><a href="Web.HTML.HTMLTableElement.html">Web.HTML.HTMLTableElement</a></li><li><a href="Web.HTML.HTMLTableHeaderCellElement.html">Web.HTML.HTMLTableHeaderCellElement</a></li><li><a href="Web.HTML.HTMLTableRowElement.html">Web.HTML.HTMLTableRowElement</a></li><li><a href="Web.HTML.HTMLTableSectionElement.html">Web.HTML.HTMLTableSectionElement</a></li><li><a href="Web.HTML.HTMLTemplateElement.html">Web.HTML.HTMLTemplateElement</a></li><li><a href="Web.HTML.HTMLTextAreaElement.html">Web.HTML.HTMLTextAreaElement</a></li><li><a href="Web.HTML.HTMLTimeElement.html">Web.HTML.HTMLTimeElement</a></li><li><a href="Web.HTML.HTMLTitleElement.html">Web.HTML.HTMLTitleElement</a></li><li><a href="Web.HTML.HTMLTrackElement.html">Web.HTML.HTMLTrackElement</a></li><li><a href="Web.HTML.HTMLTrackElement.ReadyState.html">Web.HTML.HTMLTrackElement.ReadyState</a></li><li><a href="Web.HTML.HTMLUListElement.html">Web.HTML.HTMLUListElement</a></li><li><a href="Web.HTML.HTMLVideoElement.html">Web.HTML.HTMLVideoElement</a></li><li><a href="Web.HTML.History.html">Web.HTML.History</a></li><li><a href="Web.HTML.Location.html">Web.HTML.Location</a></li><li><a href="Web.HTML.Navigator.html">Web.HTML.Navigator</a></li><li><a href="Web.HTML.SelectionMode.html">Web.HTML.SelectionMode</a></li><li><a href="Web.HTML.ValidityState.html">Web.HTML.ValidityState</a></li><li><a href="Web.HTML.Window.html">Web.HTML.Window</a></li><li><a href="Web.Internal.FFI.html">Web.Internal.FFI</a></li><li><a href="Web.Storage.Event.StorageEvent.html">Web.Storage.Event.StorageEvent</a></li><li><a href="Web.Storage.Storage.html">Web.Storage.Storage</a></li><li><a href="Web.UIEvent.CompositionEvent.html">Web.UIEvent.CompositionEvent</a></li><li><a href="Web.UIEvent.CompositionEvent.EventTypes.html">Web.UIEvent.CompositionEvent.EventTypes</a></li><li><a href="Web.UIEvent.EventTypes.html">Web.UIEvent.EventTypes</a></li><li><a href="Web.UIEvent.FocusEvent.html">Web.UIEvent.FocusEvent</a></li><li><a href="Web.UIEvent.FocusEvent.EventTypes.html">Web.UIEvent.FocusEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.html">Web.UIEvent.InputEvent</a></li><li><a href="Web.UIEvent.InputEvent.EventTypes.html">Web.UIEvent.InputEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.InputType.html">Web.UIEvent.InputEvent.InputType</a></li><li><a href="Web.UIEvent.KeyboardEvent.html">Web.UIEvent.KeyboardEvent</a></li><li><a href="Web.UIEvent.KeyboardEvent.EventTypes.html">Web.UIEvent.KeyboardEvent.EventTypes</a></li><li><a href="Web.UIEvent.MouseEvent.html">Web.UIEvent.MouseEvent</a></li><li><a href="Web.UIEvent.MouseEvent.EventTypes.html">Web.UIEvent.MouseEvent.EventTypes</a></li><li><a href="Web.UIEvent.UIEvent.html">Web.UIEvent.UIEvent</a></li><li><a href="Web.UIEvent.WheelEvent.html">Web.UIEvent.WheelEvent</a></li><li><a href="Web.UIEvent.WheelEvent.EventTypes.html">Web.UIEvent.WheelEvent.EventTypes</a></li></ul></div></main></div><div class="footer clearfix"><p>Generated by purs 0.15.15 [development build; commit: UNKNOWN]</p></div><!-- Docs search index. --><script type="text/javascript" src="./docs-search-app.js"></script><script type="text/javascript">window.DocsSearchTypeIndex = {};window.DocsSearchIndex = {};</script></body></html>
generated-docs/html/Bolson.Core.htmldeleted−1356
@@ -1,1356 +0,0 @@
2−<html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>PureScript: Bolson.Core</title><link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:300,400,400i,700,700i" type="text/css" rel="stylesheet"><style type="text/css">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
5− * 1. Set default font family to sans-serif.
6− * 2. Prevent iOS text size adjust after orientation change, without disabling
11− font-family: sans-serif; /* 1 */
12− -ms-text-size-adjust: 100%; /* 2 */
13− -webkit-text-size-adjust: 100%; /* 2 */
17− * Remove default margin.
24−/* HTML5 display definitions
25− ========================================================================== */
28− * Correct `block` display not defined for any HTML5 element in IE 8/9.
29− * Correct `block` display not defined for `details` or `summary` in IE 10/11
31− * Correct `block` display not defined for `main` in IE 11.
51− * 1. Correct `inline-block` display not defined in IE 8/9.
52− * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
59− display: inline-block; /* 1 */
60− vertical-align: baseline; /* 2 */
64− * Prevent modern browsers from displaying `audio` without controls.
65− * Remove excess height in iOS 5 devices.
68−audio:not([controls]) {
74− * Address `[hidden]` styling not present in IE 8/9/10.
75− * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
84− ========================================================================== */
87− * Remove the gray background color from active links in IE 10.
91− background-color: transparent;
95− * Improve readability when focused and also mouse hovered in all browsers.
103−/* Text-level semantics
104− ========================================================================== */
107− * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
111− border-bottom: 1px dotted;
115− * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
124− * Address styling not present in Safari and Chrome.
132− * Address variable `h1` font-size and margin within `section` and `article`
133− * contexts in Firefox 4+, Safari, and Chrome.
142− * Address styling not present in IE 8/9.
151− * Address inconsistent and variable font size in all browsers.
159− * Prevent `sub` and `sup` affecting `line-height` in all browsers.
167− vertical-align: baseline;
179− ========================================================================== */
182− * Remove border when inside `a` element in IE 8/9/10.
190− * Correct overflow not hidden in IE 9/10/11.
198− ========================================================================== */
201− * Address margin not present in IE 8/9 and Safari.
209− * Address differences between Firefox and other browsers.
213− -moz-box-sizing: content-box;
214− box-sizing: content-box;
219− * Contain overflow in all browsers.
227− * Address odd `em`-unit font size rendering in all browsers.
234− font-family: monospace, monospace;
239− ========================================================================== */
242− * Known limitation: by default, Chrome and Safari on OS X allow very limited
243− * styling of `select`, unless a `border` property is set.
247− * 1. Correct color not being inherited.
248− * Known issue: affects color of disabled elements.
249− * 2. Correct font properties not being inherited.
250− * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
258− color: inherit; /* 1 */
259− font: inherit; /* 2 */
264− * Address `overflow` set to `hidden` in IE 8/9/10/11.
272− * Address inconsistent `text-transform` inheritance for `button` and `select`.
273− * All other form control elements do not inherit `text-transform` values.
274− * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
275− * Correct `select` style inheritance in Firefox.
280− text-transform: none;
284− * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
285− * and `video` controls.
286− * 2. Correct inability to style clickable `input` types in iOS.
287− * 3. Improve usability and consistency of cursor style between image-type
288− * `input` and others.
292−html input[type="button"], /* 1 */
294−input[type="submit"] {
295− -webkit-appearance: button; /* 2 */
296− cursor: pointer; /* 3 */
300− * Re-set default cursor for disabled elements.
304−html input[disabled] {
309− * Remove inner padding and border in Firefox 4+.
312−button::-moz-focus-inner,
313−input::-moz-focus-inner {
319− * Address Firefox 4+ setting `line-height` on `input` using `!important` in
320− * the UA stylesheet.
324− line-height: normal;
328− * It's recommended that you don't attempt to style these elements.
329− * Firefox's implementation doesn't respect box-sizing, padding, or width.
331− * 1. Address box sizing set to `content-box` in IE 8/9/10.
332− * 2. Remove excess padding in IE 8/9/10.
335−input[type="checkbox"],
336−input[type="radio"] {
337− box-sizing: border-box; /* 1 */
342− * Fix the cursor style for Chrome's increment/decrement buttons. For certain
343− * `font-size` values of the `input`, it causes the cursor style of the
344− * decrement button to change from `default` to `text`.
347−input[type="number"]::-webkit-inner-spin-button,
348−input[type="number"]::-webkit-outer-spin-button {
353− * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
354− * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
355− * (include `-moz` to future-proof).
358−input[type="search"] {
359− -webkit-appearance: textfield; /* 1 */
360− -moz-box-sizing: content-box;
361− -webkit-box-sizing: content-box; /* 2 */
362− box-sizing: content-box;
366− * Remove inner padding and search cancel button in Safari and Chrome on OS X.
367− * Safari (but not Chrome) clips the cancel button when the search input has
368− * padding (and `textfield` appearance).
371−input[type="search"]::-webkit-search-cancel-button,
372−input[type="search"]::-webkit-search-decoration {
373− -webkit-appearance: none;
377− * Define consistent border, margin, and padding.
381− border: 1px solid #c0c0c0;
383− padding: 0.35em 0.625em 0.75em;
387− * 1. Correct `color` not being inherited in IE 8/9/10/11.
388− * 2. Remove padding so people aren't caught out if they zero out fieldsets.
397− * Remove default vertical scrollbar in IE 8/9/10/11.
405− * Don't inherit the `font-weight` (applied by a rule above).
406− * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
414− ========================================================================== */
417− * Remove most spacing between table cells.
421− border-collapse: collapse;
429−</style><style type="text/css">/** ************************************************************************* *
430− ** CSS for HTML docs (e.g. Pursuit)
434− ** This CSS file is structured into several sections, from general to
435− ** specific, and (mostly) alphabetically within the sections.
437− ** Several global element styles are used. This is not encouraged and should
438− ** be kept to a minimum. If you want to add new styles you'll most likely
439− ** want to add a new CSS component. See the Components section for examples.
441− ** CSS components use three simple naming ideas from the BEM system:
442− ** - Block: `.my-component`
443− ** - Element: `.my-component__item`
444− ** - Modifier: `.my-component.my-component--highlighted`
447− ** <div .my-component>
448− ** <div .my-component__item>
449− ** <div .my-component__item>
451− ** <div .my-component.my-component--highlighted>
452− ** <div .my-component__item>
453− ** <div .my-component__item>
455− ** Components can be nested.
460− ** Typographic choices for sizes, line-heights and margins are based on a
461− ** musical major third scale (4:5). This gives us a way to find numbers
462− ** and relationships between them that are perceived as harmonic.
464− ** To make use of this modular scale, use a ratio of the form
466− ** where n ∈ ℤ, -6 ≤ n ≤ 8.
470− ** This CSS is generated by less. To compile it:
472− ** npm install [-g] less
473− ** lessc app/static/pursuit.less > app/static/pursuit.css
475− ** ************************************************************************* */
476−/* Section: Variables
477− * ========================================================================== */
478−/* Section: Document Styles
479− * ========================================================================== */
481− color-scheme: light dark;
484− box-sizing: border-box;
485− /* This overflow rule prevents everything from shifting slightly to the side
486− when moving from a page which isn't large enough to generate a scrollbar
493− box-sizing: inherit;
496− background-color: #ffffff;
498− font-family: "Roboto", sans-serif;
502−@media (prefers-color-scheme: dark) {
504− background-color: #141417;
508−@media (min-width: 38em) {
513−/* Section: Utility Classes
514− * ========================================================================== */
526−/* Content hidden like this will still be read by a screen reader */
536− * ========================================================================== */
543− padding-right: 20px;
551− margin-bottom: 3.08em;
554− margin-bottom: 2.44em;
556−@media (min-width: 52em) {
559− padding-right: 30px;
572−@media (min-width: 66em) {
578− * Based on http://www.lwis.net/journal/2008/02/08/pure-css-sticky-footer/
579− * Except we don't support IE6
580− * -------------------------------------------------------------------------- */
585−.everything-except-footer {
587− padding-bottom: 3em;
595− background-color: #1d222d;
598−@media (prefers-color-scheme: dark) {
600− background-color: #1d222d;
607−/* Section: Element Styles
609− * Have as few of these as possible and keep them general, because they will
610− * influence every component hereafter.
611− * ========================================================================== */
613− background-color: #f1f5f9;
615−@media (prefers-color-scheme: dark) {
617− background-color: #232327;
623− text-decoration: none;
626−@media (prefers-color-scheme: dark) {
634− text-decoration: none;
636−@media (prefers-color-scheme: dark) {
643− background-color: #f1f5f9;
646− font-family: "Roboto Mono", monospace;
649−@media (prefers-color-scheme: dark) {
652− background-color: #232327;
658− background-color: #dfe8f1;
660−@media (prefers-color-scheme: dark) {
663− background-color: #2f2f34;
669− white-space: pre-wrap;
670− word-wrap: break-word;
674− letter-spacing: -0.2em;
678− font-weight: normal;
682− letter-spacing: 0.33em;
687−@media (prefers-color-scheme: dark) {
695− padding: 1em 1.25rem;
696− /* Using rem here to align with lists etc. */
702− background-color: transparent;
709− line-height: inherit;
721− letter-spacing: -0.5px;
723− margin-top: 1.563rem;
724− margin-bottom: 1.25rem;
726−@media (min-width: 52em) {
729− margin-top: 5.96rem;
734− font-weight: normal;
736− margin-top: 3.052rem;
737− margin-bottom: 1rem;
741− font-weight: normal;
743− margin-top: 2.441rem;
744− margin-bottom: 1rem;
748− font-weight: normal;
749− margin-top: 2.441rem;
750− margin-bottom: 1rem;
763− background-color: #cccccc;
765−@media (prefers-color-scheme: dark) {
767− background-color: #43434e;
777− margin-bottom: 1rem;
780− border-bottom: 1px solid #cccccc;
781− border-collapse: collapse;
784− margin-bottom: 1rem;
787−@media (prefers-color-scheme: dark) {
789− border-bottom-color: #43434e;
795− padding: 0.41em 0.51em;
798− border-top: 1px solid #cccccc;
800−@media (prefers-color-scheme: dark) {
802− border-top-color: #43434e;
814− list-style-type: none;
816− margin-bottom: 1rem;
821− padding-left: 1.25em;
827− display: inline-block;
828− margin-left: -1.25em;
831−@media (prefers-color-scheme: dark) {
836−/* Tying this tightly to ul at the moment because it's a slight variation thereof */
837−ul.ul--search li::before {
840− transform: rotate(-45deg);
844− margin-bottom: 1rem;
845− padding-left: 1.25em;
851−/* Section: Components
852− * ========================================================================== */
854− * -------------------------------------------------------------------------- */
858− display: inline-block;
859− background-color: #000000;
860− border-radius: 1.3em;
869−@media (prefers-color-scheme: dark) {
871− background-color: #dedede;
875−.badge.badge--package {
876− background-color: #c4953a;
877− letter-spacing: -0.1em;
879−@media (prefers-color-scheme: dark) {
880− .badge.badge--package {
881− background-color: #d8ac55;
884−.badge.badge--module {
885− background-color: #75B134;
887−/* Component: Declarations
888− * -------------------------------------------------------------------------- */
891− padding-bottom: 0.328em;
892− margin-bottom: 0.262em;
902−.decl__anchor:visited {
907−@media (prefers-color-scheme: dark) {
909− .decl__anchor:visited {
913−.decl__anchor:hover {
916−@media (prefers-color-scheme: dark) {
917− .decl__anchor:hover {
922− background-color: transparent;
924− border-top: 1px solid #cccccc;
925− border-bottom: 1px solid #cccccc;
928−@media (prefers-color-scheme: dark) {
930− border-top-color: #43434e;
931− border-bottom-color: #43434e;
934−.decl__signature code {
937− padding-left: 2.441em;
938− text-indent: -2.441em;
939− white-space: normal;
942− font-family: "Roboto", sans-serif;
944− font-weight: normal;
946−/* See https://stackoverflow.com/a/32162038
947− Content licensed under CC BY-SA 3.0
949−.decl__role_hover[title] {
950− /* Remove line that appears under abbr element */
951− border-bottom: none;
952− text-decoration: none;
953− /* Ensure cursor doesn't change to question mark */
956−.decl__role_nominal::after {
959−.decl__role_phantom::after {
963− border-bottom: 1px solid #cccccc;
965−@media (prefers-color-scheme: dark) {
967− border-bottom-color: #43434e;
970−:target .decl__signature,
971−:target .decl__signature code {
972− /* We want the background to be transparent, even when the parent is a target */
973− background-color: transparent;
975−.decl__body .keyword,
976−.decl__body .syntax {
979−@media (prefers-color-scheme: dark) {
980− .decl__body .keyword,
981− .decl__body .syntax {
985−.decl__child_comments {
987− margin-bottom: 1rem;
989−/* Component: Dependency Link
990− * -------------------------------------------------------------------------- */
992− /* Currently no root styles, but keep the class as a namespace */
995− display: inline-block;
996− margin-right: 0.41em;
1000− display: inline-block;
1004−@media (prefers-color-scheme: dark) {
1005− .deplink__version {
1009−/* Component: Grouped List
1010− * -------------------------------------------------------------------------- */
1012− border-top: 1px solid #cccccc;
1013− margin: 0 0 2.44em 0;
1015−@media (prefers-color-scheme: dark) {
1017− border-top-color: #43434e;
1020−.grouped-list__title {
1024− letter-spacing: 1px;
1025− margin: 0.8em 0 -0.1em 0;
1026− text-transform: uppercase;
1028−@media (prefers-color-scheme: dark) {
1029− .grouped-list__title {
1030− border-top-color: #a0a0a0;
1033−.grouped-list__item {
1036−/* Component: Message
1037− * -------------------------------------------------------------------------- */
1040− border-radius: 5px;
1041− padding: 1em !important;
1043−.message.message--error {
1044− background-color: #fff0f0;
1045− border-color: #c85050;
1047−@media (prefers-color-scheme: dark) {
1048− .message.message--error {
1049− background-color: #6b0e0e;
1050− border-color: #c85050;
1053−.message.message--not-available {
1054− background-color: #f0f096;
1055− border-color: #e3e33d;
1057−@media (prefers-color-scheme: dark) {
1058− .message.message--not-available {
1059− background-color: #56560b;
1060− border-color: #b0b017;
1063−/* Component: Multi Col
1064− * Multiple columns side by side
1065− * -------------------------------------------------------------------------- */
1067− margin-bottom: 2.44em;
1071− padding-right: 1em;
1072− position: relative;
1075−@media (min-width: 38em) and (max-width: 51.999999em) {
1080− .multi-col__col:nth-child(2n+3) {
1084−@media (min-width: 52em) {
1089− .multi-col__col:nth-child(3n+4) {
1093−/* Component: Page Title
1094− * -------------------------------------------------------------------------- */
1096− margin: 4.77em 0 1.56em;
1097− padding-bottom: 1.25em;
1098− position: relative;
1100−.page-title__title {
1101− margin: 0 0 0 -0.05em;
1102− /* Visually align on left edge */
1104−.page-title__label {
1105− position: relative;
1109− letter-spacing: 1px;
1110− margin-bottom: -0.8em;
1111− text-transform: uppercase;
1114−@media (prefers-color-scheme: dark) {
1115− .page-title__label {
1119−/* Component: Top Banner
1120− * -------------------------------------------------------------------------- */
1122− background-color: #1d222d;
1124− font-weight: normal;
1126−@media (prefers-color-scheme: dark) {
1128− background-color: #1d222d;
1133−.top-banner__logo:visited {
1141−@media (prefers-color-scheme: dark) {
1143− .top-banner__logo:visited {
1147−.top-banner__logo:hover {
1149− text-decoration: none;
1152− margin-bottom: 1.25em;
1154−.top-banner__form input {
1155− border: 1px solid #1d222d;
1156− border-radius: 3px;
1157− background-color: #ffffff;
1161− padding: 0.21em 0.512em;
1164−@media (prefers-color-scheme: dark) {
1165− .top-banner__form input {
1166− border-color: #1d222d;
1167− background-color: #141417;
1171−.top-banner__actions {
1175−.top-banner__actions__item {
1176− display: inline-block;
1179− padding-left: 1.25em;
1181−.top-banner__actions__item:first-child {
1184−.top-banner__actions__item a,
1185−.top-banner__actions__item a:visited {
1188−@media (prefers-color-scheme: dark) {
1189− .top-banner__actions__item a,
1190− .top-banner__actions__item a:visited {
1194−.top-banner__actions__item a:hover {
1197−@media (prefers-color-scheme: dark) {
1198− .top-banner__actions__item a:hover {
1202−@media (min-width: 38em) {
1203− .top-banner__logo {
1207− .top-banner__form {
1213− .top-banner__actions {
1218−/* Component: Search Results
1219− * -------------------------------------------------------------------------- */
1220−.result.result--empty {
1225− margin-bottom: 0.2rem;
1228− margin-left: -0.1em;
1230−.result__body > *:first-child {
1231− margin-top: 0!important;
1233−.result__body > *:last-child {
1234− margin-bottom: 0!important;
1236−.result__signature {
1237− background-color: transparent;
1239− border-top: 1px solid #cccccc;
1240− border-bottom: 1px solid #cccccc;
1241− padding: 0.328em 0;
1243−@media (prefers-color-scheme: dark) {
1244− .result__signature {
1245− border-top-color: #43434e;
1246− border-bottom-color: #43434e;
1249−.result__signature code {
1251− padding-left: 2.441em;
1252− text-indent: -2.441em;
1253− white-space: normal;
1256− margin-top: 0.2rem;
1258−.result__actions__item {
1261−.result__actions__item + .result__actions__item {
1262− margin-left: 0.65em;
1264−/* Component: Version Selector
1265− * -------------------------------------------------------------------------- */
1267− margin-bottom: 0.8em;
1269−@media (min-width: 38em) {
1270− .version-selector {
1271− position: absolute;
1278− * These styles should be cleaned up
1279− * ========================================================================== */
1280−/* Help paragraphs */
1285− /* FIXME: target with class */
1288−/* Section: Markdown
1289− * Github rendered README
1290− * ========================================================================== */
1293− Useful for narrow screens, such as mobiles. Documentation often contains URLs
1294− which would otherwise force the page to become wider, and force creation of
1295− horizontal scrollbars. Yuck.
1297− word-wrap: break-word;
1299−.markdown-body > *:first-child {
1300− margin-top: 0 !important;
1302−.markdown-body > *:last-child {
1303− margin-bottom: 0 !important;
1305−.markdown-body a:not([href]) {
1307− text-decoration: none;
1309−.markdown-body blockquote {
1313− border-left: 0.25em solid #ddd;
1315−@media (prefers-color-scheme: dark) {
1316− .markdown-body blockquote {
1317− border-left-color: #444;
1320−.markdown-body blockquote > :first-child {
1323−.markdown-body blockquote > :last-child {
1326−.markdown-body .anchor {
1327− /* We hide the anchor because the link doesn't point to a valid location */
1330−.markdown-body .pl-k {
1334−@media (prefers-color-scheme: dark) {
1335− .markdown-body .pl-k {
1339−.markdown-body .pl-c1,
1340−.markdown-body .pl-en {
1341− /* Not really sure what this is */
1344−.markdown-body .pl-s {
1345− /* String literals */
1348−.markdown-body .pl-cce {
1349− /* String literal escape sequences */
1352−.markdown-body .pl-smi {
1353− /* type variables? */
1356−</style></head><body><div class="everything-except-footer"><div class="top-banner clearfix"><div class="container clearfix"><div style="float: left; font-size: 2.44em; font-weight: 300; line-height: 90px; margin: 0">PureScript API documentation</div><div class="top-banner__actions"><div class="top-banner__actions__item"><a href="index.html">Index</a></div></div></div></div><main class="container clearfix" role="main"><div class="page-title clearfix"><div class="page-title__label">Module</div><h1 class="page-title__title">Bolson.Core</h1></div><div class="col col--main"><div class="decl" id="t:Element"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Element">#</a><span>Element</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">newtype</span> <a href="Bolson.Core.html#t:Element" title="Bolson.Core.Element"><span class="ctor">Element</span></a> <span class="syntax">::</span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Row" title="Prim.Row"><span class="ctor">Row</span></a> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a></code><code><span class="keyword">newtype</span> <a href="Bolson.Core.html#t:Element" title="Bolson.Core.Element"><span class="ctor">Element</span></a> interpreter r payload</code></pre><h4>Constructors</h4><ul><li id="v:Element"><code><a href="Bolson.Core.html#v:Element" title="Bolson.Core.Element"><span class="ctor">Element</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:PSR" title="Bolson.Core.PSR"><span class="ctor">PSR</span></a> r <span class="syntax">-></span> interpreter <span class="syntax">-></span> <a href="FRP.Event.html#t:Event" title="FRP.Event.Event"><span class="ctor">Event</span></a> payload<span class="syntax">)</span></code></li></ul></div></div><div class="decl" id="t:Child"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Child">#</a><span>Child</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">data</span> <a href="Bolson.Core.html#t:Child" title="Bolson.Core.Child"><span class="ctor">Child</span></a> <span class="syntax">(</span>logic <span class="syntax">::</span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">(</span>obj <span class="syntax">::</span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span></code></pre><h4>Constructors</h4><ul><li id="v:Insert"><code><a href="Bolson.Core.html#v:Insert" title="Bolson.Core.Insert"><span class="ctor">Insert</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj<span class="syntax">)</span></code></li><li id="v:Remove"><code><a href="Bolson.Core.html#v:Remove" title="Bolson.Core.Remove"><span class="ctor">Remove</span></a></code></li><li id="v:Logic"><code><a href="Bolson.Core.html#v:Logic" title="Bolson.Core.Logic"><span class="ctor">Logic</span></a> logic</code></li></ul></div></div><div class="decl" id="t:DynamicChildren"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:DynamicChildren">#</a><span>DynamicChildren</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">newtype</span> <a href="Bolson.Core.html#t:DynamicChildren" title="Bolson.Core.DynamicChildren"><span class="ctor">DynamicChildren</span></a> logic obj</code></pre><h4>Constructors</h4><ul><li id="v:DynamicChildren"><code><a href="Bolson.Core.html#v:DynamicChildren" title="Bolson.Core.DynamicChildren"><span class="ctor">DynamicChildren</span></a> <span class="syntax">(</span><a href="FRP.Event.html#t:Event" title="FRP.Event.Event"><span class="ctor">Event</span></a> <span class="syntax">(</span><a href="FRP.Event.html#t:Event" title="FRP.Event.Event"><span class="ctor">Event</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:Child" title="Bolson.Core.Child"><span class="ctor">Child</span></a> logic obj<span class="syntax">)</span><span class="syntax">)</span><span class="syntax">)</span></code></li></ul></div></div><div class="decl" id="t:FixedChildren"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:FixedChildren">#</a><span>FixedChildren</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">newtype</span> <a href="Bolson.Core.html#t:FixedChildren" title="Bolson.Core.FixedChildren"><span class="ctor">FixedChildren</span></a> logic obj</code></pre><h4>Constructors</h4><ul><li id="v:FixedChildren"><code><a href="Bolson.Core.html#v:FixedChildren" title="Bolson.Core.FixedChildren"><span class="ctor">FixedChildren</span></a> <span class="syntax">(</span><a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj<span class="syntax">)</span><span class="syntax">)</span></code></li></ul></div></div><div class="decl" id="t:EventfulElement"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:EventfulElement">#</a><span>EventfulElement</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">newtype</span> <a href="Bolson.Core.html#t:EventfulElement" title="Bolson.Core.EventfulElement"><span class="ctor">EventfulElement</span></a> logic obj</code></pre><h4>Constructors</h4><ul><li id="v:EventfulElement"><code><a href="Bolson.Core.html#v:EventfulElement" title="Bolson.Core.EventfulElement"><span class="ctor">EventfulElement</span></a> <span class="syntax">(</span><a href="FRP.Event.html#t:Event" title="FRP.Event.Event"><span class="ctor">Event</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj<span class="syntax">)</span><span class="syntax">)</span></code></li></ul></div></div><div class="decl" id="t:Scope"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Scope">#</a><span>Scope</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">data</span> <a href="Bolson.Core.html#t:Scope" title="Bolson.Core.Scope"><span class="ctor">Scope</span></a></code></pre><h4>Constructors</h4><ul><li id="v:Local"><code><a href="Bolson.Core.html#v:Local" title="Bolson.Core.Local"><span class="ctor">Local</span></a> <a href="Prim.html#t:String" title="Prim.String"><span class="ctor">String</span></a></code></li><li id="v:Global"><code><a href="Bolson.Core.html#v:Global" title="Bolson.Core.Global"><span class="ctor">Global</span></a></code></li></ul><h4>Instances</h4><ul><li id="v:<anonymous>"><code><a href="Data.Eq.html#t:Eq" title="Data.Eq.Eq"><span class="ctor">Eq</span></a> <a href="Bolson.Core.html#t:Scope" title="Bolson.Core.Scope"><span class="ctor">Scope</span></a></code></li><li id="v:<anonymous>"><code><a href="Data.Ord.html#t:Ord" title="Data.Ord.Ord"><span class="ctor">Ord</span></a> <a href="Bolson.Core.html#t:Scope" title="Bolson.Core.Scope"><span class="ctor">Scope</span></a></code></li></ul></div></div><div class="decl" id="t:PSR"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:PSR">#</a><span>PSR</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">type</span> <a href="Bolson.Core.html#t:PSR" title="Bolson.Core.PSR"><span class="ctor">PSR</span></a> <span class="syntax">::</span> <a href="Prim.html#t:Row" title="Prim.Row"><span class="ctor">Row</span></a> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a></code><code><span class="keyword">type</span> <a href="Bolson.Core.html#t:PSR" title="Bolson.Core.PSR"><span class="ctor">PSR</span></a> r <span class="syntax">=</span> <span class="syntax">{</span> parent <span class="syntax">::</span> <a href="Data.Maybe.html#t:Maybe" title="Data.Maybe.Maybe"><span class="ctor">Maybe</span></a> <a href="Prim.html#t:String" title="Prim.String"><span class="ctor">String</span></a><span class="syntax">,</span> raiseId <span class="syntax">::</span> <a href="Prim.html#t:String" title="Prim.String"><span class="ctor">String</span></a> <span class="syntax">-></span> <a href="Control.Monad.ST.Internal.html#t:ST" title="Control.Monad.ST.Internal.ST"><span class="ctor">ST</span></a> <a href="Control.Monad.ST.Global.html#t:Global" title="Control.Monad.ST.Global.Global"><span class="ctor">Global</span></a> <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a><span class="syntax">,</span> scope <span class="syntax">::</span> <a href="Bolson.Core.html#t:Scope" title="Bolson.Core.Scope"><span class="ctor">Scope</span></a> <span class="syntax">|</span> r <span class="syntax">}</span></code></pre></div></div><div class="decl" id="t:Entity"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Entity">#</a><span>Entity</span> </h3><div class="decl__body"><pre class="decl__signature"><code><span class="keyword">data</span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj</code></pre><h4>Constructors</h4><ul><li id="v:DynamicChildren'"><code><a href="Bolson.Core.html#v:DynamicChildren'" title="Bolson.Core.DynamicChildren'"><span class="ctor">DynamicChildren'</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:DynamicChildren" title="Bolson.Core.DynamicChildren"><span class="ctor">DynamicChildren</span></a> logic obj<span class="syntax">)</span></code></li><li id="v:FixedChildren'"><code><a href="Bolson.Core.html#v:FixedChildren'" title="Bolson.Core.FixedChildren'"><span class="ctor">FixedChildren'</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:FixedChildren" title="Bolson.Core.FixedChildren"><span class="ctor">FixedChildren</span></a> logic obj<span class="syntax">)</span></code></li><li id="v:EventfulElement'"><code><a href="Bolson.Core.html#v:EventfulElement'" title="Bolson.Core.EventfulElement'"><span class="ctor">EventfulElement'</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:EventfulElement" title="Bolson.Core.EventfulElement"><span class="ctor">EventfulElement</span></a> logic obj<span class="syntax">)</span></code></li><li id="v:Element'"><code><a href="Bolson.Core.html#v:Element'" title="Bolson.Core.Element'"><span class="ctor">Element'</span></a> obj</code></li></ul></div></div><div class="decl" id="v:fixed"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:fixed">#</a><span>fixed</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Core.html#v:fixed" title="Bolson.Core.fixed"><span class="ident">fixed</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>logic <span class="syntax"></span>obj<span class="syntax">.</span> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj<span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj</code></pre></div></div><div class="decl" id="v:dyn"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:dyn">#</a><span>dyn</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Core.html#v:dyn" title="Bolson.Core.dyn"><span class="ident">dyn</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>logic <span class="syntax"></span>obj<span class="syntax">.</span> <a href="FRP.Event.html#t:Event" title="FRP.Event.Event"><span class="ctor">Event</span></a> <span class="syntax">(</span><a href="FRP.Event.html#t:Event" title="FRP.Event.Event"><span class="ctor">Event</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:Child" title="Bolson.Core.Child"><span class="ctor">Child</span></a> logic obj<span class="syntax">)</span><span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj</code></pre></div></div><div class="decl" id="v:envy"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:envy">#</a><span>envy</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Core.html#v:envy" title="Bolson.Core.envy"><span class="ident">envy</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>logic <span class="syntax"></span>obj<span class="syntax">.</span> <a href="FRP.Event.html#t:Event" title="FRP.Event.Event"><span class="ctor">Event</span></a> <span class="syntax">(</span><a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj<span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj</code></pre></div></div><div class="decl" id="v:bussed"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:bussed">#</a><span>bussed</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Core.html#v:bussed" title="Bolson.Core.bussed"><span class="ident">bussed</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>logic <span class="syntax"></span>obj <span class="syntax"></span>a<span class="syntax">.</span> <span class="syntax">(</span><span class="syntax">(</span>a <span class="syntax">-></span> <a href="Effect.html#t:Effect" title="Effect.Effect"><span class="ctor">Effect</span></a> <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="FRP.Event.html#t:Event" title="FRP.Event.Event"><span class="ctor">Event</span></a> a <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj<span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj</code></pre></div></div><div class="decl" id="v:vbussed"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:vbussed">#</a><span>vbussed</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Bolson.Core.html#v:vbussed" title="Bolson.Core.vbussed"><span class="ident">vbussed</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>logic <span class="syntax"></span>obj <span class="syntax"></span>rbus <span class="syntax"></span>bus <span class="syntax"></span>push <span class="syntax"></span>event<span class="syntax">.</span> <a href="Prim.RowList.html#t:RowToList" title="Prim.RowList.RowToList"><span class="ctor">RowToList</span></a> bus rbus <span class="syntax">=></span> <a href="FRP.Event.VBus.html#t:VBus" title="FRP.Event.VBus.VBus"><span class="ctor">VBus</span></a> rbus push event <span class="syntax">=></span> <a href="Type.Proxy.html#t:Proxy" title="Type.Proxy.Proxy"><span class="ctor">Proxy</span></a> <span class="syntax">(</span><a href="FRP.Event.VBus.html#t:V" title="FRP.Event.VBus.V"><span class="ctor">V</span></a> bus<span class="syntax">)</span> <span class="syntax">-></span> <span class="syntax">(</span><a href="Prim.html#t:Record" title="Prim.Record"><span class="ctor">Record</span></a> push <span class="syntax">-></span> <a href="Prim.html#t:Record" title="Prim.Record"><span class="ctor">Record</span></a> event <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj<span class="syntax">)</span> <span class="syntax">-></span> <a href="Bolson.Core.html#t:Entity" title="Bolson.Core.Entity"><span class="ctor">Entity</span></a> logic obj</code></pre></div></div></div><div class="col col--aside"><h3>Modules</h3><ul><li><a href="Ansi.Codes.html">Ansi.Codes</a></li><li><a href="Ansi.Output.html">Ansi.Output</a></li><li><a href="Bolson.Control.html">Bolson.Control</a></li><li><a href="Bolson.Core.html">Bolson.Core</a></li><li><a href="Control.Alt.html">Control.Alt</a></li><li><a href="Control.Alternative.html">Control.Alternative</a></li><li><a href="Control.Applicative.html">Control.Applicative</a></li><li><a href="Control.Apply.html">Control.Apply</a></li><li><a href="Control.Biapplicative.html">Control.Biapplicative</a></li><li><a href="Control.Biapply.html">Control.Biapply</a></li><li><a href="Control.Bind.html">Control.Bind</a></li><li><a href="Control.Category.html">Control.Category</a></li><li><a href="Control.Comonad.html">Control.Comonad</a></li><li><a href="Control.Comonad.Cofree.html">Control.Comonad.Cofree</a></li><li><a href="Control.Comonad.Cofree.Class.html">Control.Comonad.Cofree.Class</a></li><li><a href="Control.Comonad.Env.html">Control.Comonad.Env</a></li><li><a href="Control.Comonad.Env.Class.html">Control.Comonad.Env.Class</a></li><li><a href="Control.Comonad.Env.Trans.html">Control.Comonad.Env.Trans</a></li><li><a href="Control.Comonad.Store.html">Control.Comonad.Store</a></li><li><a href="Control.Comonad.Store.Class.html">Control.Comonad.Store.Class</a></li><li><a href="Control.Comonad.Store.Trans.html">Control.Comonad.Store.Trans</a></li><li><a href="Control.Comonad.Traced.html">Control.Comonad.Traced</a></li><li><a href="Control.Comonad.Traced.Class.html">Control.Comonad.Traced.Class</a></li><li><a href="Control.Comonad.Traced.Trans.html">Control.Comonad.Traced.Trans</a></li><li><a href="Control.Comonad.Trans.Class.html">Control.Comonad.Trans.Class</a></li><li><a href="Control.Extend.html">Control.Extend</a></li><li><a href="Control.Lazy.html">Control.Lazy</a></li><li><a href="Control.Monad.html">Control.Monad</a></li><li><a href="Control.Monad.Cont.html">Control.Monad.Cont</a></li><li><a href="Control.Monad.Cont.Class.html">Control.Monad.Cont.Class</a></li><li><a href="Control.Monad.Cont.Trans.html">Control.Monad.Cont.Trans</a></li><li><a href="Control.Monad.Error.Class.html">Control.Monad.Error.Class</a></li><li><a href="Control.Monad.Except.html">Control.Monad.Except</a></li><li><a href="Control.Monad.Except.Trans.html">Control.Monad.Except.Trans</a></li><li><a href="Control.Monad.Fork.Class.html">Control.Monad.Fork.Class</a></li><li><a href="Control.Monad.Free.html">Control.Monad.Free</a></li><li><a href="Control.Monad.Free.Class.html">Control.Monad.Free.Class</a></li><li><a href="Control.Monad.Gen.html">Control.Monad.Gen</a></li><li><a href="Control.Monad.Gen.Class.html">Control.Monad.Gen.Class</a></li><li><a href="Control.Monad.Gen.Common.html">Control.Monad.Gen.Common</a></li><li><a href="Control.Monad.Identity.Trans.html">Control.Monad.Identity.Trans</a></li><li><a href="Control.Monad.List.Trans.html">Control.Monad.List.Trans</a></li><li><a href="Control.Monad.Maybe.Trans.html">Control.Monad.Maybe.Trans</a></li><li><a href="Control.Monad.Morph.html">Control.Monad.Morph</a></li><li><a href="Control.Monad.RWS.html">Control.Monad.RWS</a></li><li><a href="Control.Monad.RWS.Trans.html">Control.Monad.RWS.Trans</a></li><li><a href="Control.Monad.Reader.html">Control.Monad.Reader</a></li><li><a href="Control.Monad.Reader.Class.html">Control.Monad.Reader.Class</a></li><li><a href="Control.Monad.Reader.Trans.html">Control.Monad.Reader.Trans</a></li><li><a href="Control.Monad.Rec.Class.html">Control.Monad.Rec.Class</a></li><li><a href="Control.Monad.ST.html">Control.Monad.ST</a></li><li><a href="Control.Monad.ST.Class.html">Control.Monad.ST.Class</a></li><li><a href="Control.Monad.ST.Global.html">Control.Monad.ST.Global</a></li><li><a href="Control.Monad.ST.Internal.html">Control.Monad.ST.Internal</a></li><li><a href="Control.Monad.ST.Ref.html">Control.Monad.ST.Ref</a></li><li><a href="Control.Monad.ST.Uncurried.html">Control.Monad.ST.Uncurried</a></li><li><a href="Control.Monad.State.html">Control.Monad.State</a></li><li><a href="Control.Monad.State.Class.html">Control.Monad.State.Class</a></li><li><a href="Control.Monad.State.Trans.html">Control.Monad.State.Trans</a></li><li><a href="Control.Monad.Trampoline.html">Control.Monad.Trampoline</a></li><li><a href="Control.Monad.Trans.Class.html">Control.Monad.Trans.Class</a></li><li><a href="Control.Monad.Writer.html">Control.Monad.Writer</a></li><li><a href="Control.Monad.Writer.Class.html">Control.Monad.Writer.Class</a></li><li><a href="Control.Monad.Writer.Trans.html">Control.Monad.Writer.Trans</a></li><li><a href="Control.MonadPlus.html">Control.MonadPlus</a></li><li><a href="Control.Parallel.html">Control.Parallel</a></li><li><a href="Control.Parallel.Class.html">Control.Parallel.Class</a></li><li><a href="Control.Plus.html">Control.Plus</a></li><li><a href="Control.Semigroupoid.html">Control.Semigroupoid</a></li><li><a href="Data.Array.html">Data.Array</a></li><li><a href="Data.Array.NonEmpty.html">Data.Array.NonEmpty</a></li><li><a href="Data.Array.NonEmpty.Internal.html">Data.Array.NonEmpty.Internal</a></li><li><a href="Data.Array.Partial.html">Data.Array.Partial</a></li><li><a href="Data.Array.ST.html">Data.Array.ST</a></li><li><a href="Data.Array.ST.Iterator.html">Data.Array.ST.Iterator</a></li><li><a href="Data.Array.ST.Partial.html">Data.Array.ST.Partial</a></li><li><a href="Data.ArrayBuffer.Types.html">Data.ArrayBuffer.Types</a></li><li><a href="Data.Bifoldable.html">Data.Bifoldable</a></li><li><a href="Data.Bifunctor.html">Data.Bifunctor</a></li><li><a href="Data.Bifunctor.Join.html">Data.Bifunctor.Join</a></li><li><a href="Data.Bitraversable.html">Data.Bitraversable</a></li><li><a href="Data.Boolean.html">Data.Boolean</a></li><li><a href="Data.BooleanAlgebra.html">Data.BooleanAlgebra</a></li><li><a href="Data.Bounded.html">Data.Bounded</a></li><li><a href="Data.Bounded.Generic.html">Data.Bounded.Generic</a></li><li><a href="Data.CatList.html">Data.CatList</a></li><li><a href="Data.CatQueue.html">Data.CatQueue</a></li><li><a href="Data.Char.html">Data.Char</a></li><li><a href="Data.Char.Gen.html">Data.Char.Gen</a></li><li><a href="Data.CommutativeRing.html">Data.CommutativeRing</a></li><li><a href="Data.Compactable.html">Data.Compactable</a></li><li><a href="Data.Comparison.html">Data.Comparison</a></li><li><a href="Data.Const.html">Data.Const</a></li><li><a href="Data.Coyoneda.html">Data.Coyoneda</a></li><li><a href="Data.Date.html">Data.Date</a></li><li><a href="Data.Date.Component.html">Data.Date.Component</a></li><li><a href="Data.Date.Component.Gen.html">Data.Date.Component.Gen</a></li><li><a href="Data.Date.Gen.html">Data.Date.Gen</a></li><li><a href="Data.DateTime.html">Data.DateTime</a></li><li><a href="Data.DateTime.Gen.html">Data.DateTime.Gen</a></li><li><a href="Data.DateTime.Instant.html">Data.DateTime.Instant</a></li><li><a href="Data.Decidable.html">Data.Decidable</a></li><li><a href="Data.Decide.html">Data.Decide</a></li><li><a href="Data.Distributive.html">Data.Distributive</a></li><li><a href="Data.Divide.html">Data.Divide</a></li><li><a href="Data.Divisible.html">Data.Divisible</a></li><li><a href="Data.DivisionRing.html">Data.DivisionRing</a></li><li><a href="Data.Either.html">Data.Either</a></li><li><a href="Data.Either.Inject.html">Data.Either.Inject</a></li><li><a href="Data.Either.Nested.html">Data.Either.Nested</a></li><li><a href="Data.Enum.html">Data.Enum</a></li><li><a href="Data.Enum.Gen.html">Data.Enum.Gen</a></li><li><a href="Data.Enum.Generic.html">Data.Enum.Generic</a></li><li><a href="Data.Eq.html">Data.Eq</a></li><li><a href="Data.Eq.Generic.html">Data.Eq.Generic</a></li><li><a href="Data.Equivalence.html">Data.Equivalence</a></li><li><a href="Data.EuclideanRing.html">Data.EuclideanRing</a></li><li><a href="Data.Exists.html">Data.Exists</a></li><li><a href="Data.FastVect.Common.html">Data.FastVect.Common</a></li><li><a href="Data.FastVect.Common.Matrix.html">Data.FastVect.Common.Matrix</a></li><li><a href="Data.FastVect.FastVect.html">Data.FastVect.FastVect</a></li><li><a href="Data.FastVect.FastVect.Matrix.html">Data.FastVect.FastVect.Matrix</a></li><li><a href="Data.FastVect.MinLenVect.html">Data.FastVect.MinLenVect</a></li><li><a href="Data.FastVect.Sparse.Read.html">Data.FastVect.Sparse.Read</a></li><li><a href="Data.FastVect.Sparse.Write.html">Data.FastVect.Sparse.Write</a></li><li><a href="Data.Field.html">Data.Field</a></li><li><a href="Data.Filterable.html">Data.Filterable</a></li><li><a href="Data.Foldable.html">Data.Foldable</a></li><li><a href="Data.FoldableWithIndex.html">Data.FoldableWithIndex</a></li><li><a href="Data.Function.html">Data.Function</a></li><li><a href="Data.Function.Uncurried.html">Data.Function.Uncurried</a></li><li><a href="Data.Functor.html">Data.Functor</a></li><li><a href="Data.Functor.App.html">Data.Functor.App</a></li><li><a href="Data.Functor.Clown.html">Data.Functor.Clown</a></li><li><a href="Data.Functor.Compose.html">Data.Functor.Compose</a></li><li><a href="Data.Functor.Contravariant.html">Data.Functor.Contravariant</a></li><li><a href="Data.Functor.Coproduct.html">Data.Functor.Coproduct</a></li><li><a href="Data.Functor.Coproduct.Inject.html">Data.Functor.Coproduct.Inject</a></li><li><a href="Data.Functor.Coproduct.Nested.html">Data.Functor.Coproduct.Nested</a></li><li><a href="Data.Functor.Costar.html">Data.Functor.Costar</a></li><li><a href="Data.Functor.Flip.html">Data.Functor.Flip</a></li><li><a href="Data.Functor.Invariant.html">Data.Functor.Invariant</a></li><li><a href="Data.Functor.Joker.html">Data.Functor.Joker</a></li><li><a href="Data.Functor.Product.html">Data.Functor.Product</a></li><li><a href="Data.Functor.Product.Nested.html">Data.Functor.Product.Nested</a></li><li><a href="Data.Functor.Product2.html">Data.Functor.Product2</a></li><li><a href="Data.Functor.Variant.html">Data.Functor.Variant</a></li><li><a href="Data.FunctorWithIndex.html">Data.FunctorWithIndex</a></li><li><a href="Data.Generic.Rep.html">Data.Generic.Rep</a></li><li><a href="Data.HeytingAlgebra.html">Data.HeytingAlgebra</a></li><li><a href="Data.HeytingAlgebra.Generic.html">Data.HeytingAlgebra.Generic</a></li><li><a href="Data.Identity.html">Data.Identity</a></li><li><a href="Data.Int.html">Data.Int</a></li><li><a href="Data.Int.Bits.html">Data.Int.Bits</a></li><li><a href="Data.Interval.html">Data.Interval</a></li><li><a href="Data.Interval.Duration.html">Data.Interval.Duration</a></li><li><a href="Data.Interval.Duration.Iso.html">Data.Interval.Duration.Iso</a></li><li><a href="Data.JSDate.html">Data.JSDate</a></li><li><a href="Data.Lazy.html">Data.Lazy</a></li><li><a href="Data.List.html">Data.List</a></li><li><a href="Data.List.Internal.html">Data.List.Internal</a></li><li><a href="Data.List.Lazy.html">Data.List.Lazy</a></li><li><a href="Data.List.Lazy.NonEmpty.html">Data.List.Lazy.NonEmpty</a></li><li><a href="Data.List.Lazy.Types.html">Data.List.Lazy.Types</a></li><li><a href="Data.List.NonEmpty.html">Data.List.NonEmpty</a></li><li><a href="Data.List.Partial.html">Data.List.Partial</a></li><li><a href="Data.List.Types.html">Data.List.Types</a></li><li><a href="Data.List.ZipList.html">Data.List.ZipList</a></li><li><a href="Data.Map.html">Data.Map</a></li><li><a href="Data.Map.Gen.html">Data.Map.Gen</a></li><li><a href="Data.Map.Internal.html">Data.Map.Internal</a></li><li><a href="Data.Maybe.html">Data.Maybe</a></li><li><a href="Data.Maybe.First.html">Data.Maybe.First</a></li><li><a href="Data.Maybe.Last.html">Data.Maybe.Last</a></li><li><a href="Data.MediaType.html">Data.MediaType</a></li><li><a href="Data.MediaType.Common.html">Data.MediaType.Common</a></li><li><a href="Data.Monoid.html">Data.Monoid</a></li><li><a href="Data.Monoid.Additive.html">Data.Monoid.Additive</a></li><li><a href="Data.Monoid.Alternate.html">Data.Monoid.Alternate</a></li><li><a href="Data.Monoid.Conj.html">Data.Monoid.Conj</a></li><li><a href="Data.Monoid.Disj.html">Data.Monoid.Disj</a></li><li><a href="Data.Monoid.Dual.html">Data.Monoid.Dual</a></li><li><a href="Data.Monoid.Endo.html">Data.Monoid.Endo</a></li><li><a href="Data.Monoid.Generic.html">Data.Monoid.Generic</a></li><li><a href="Data.Monoid.Multiplicative.html">Data.Monoid.Multiplicative</a></li><li><a href="Data.NaturalTransformation.html">Data.NaturalTransformation</a></li><li><a href="Data.Newtype.html">Data.Newtype</a></li><li><a href="Data.NonEmpty.html">Data.NonEmpty</a></li><li><a href="Data.Nullable.html">Data.Nullable</a></li><li><a href="Data.Number.html">Data.Number</a></li><li><a href="Data.Number.Approximate.html">Data.Number.Approximate</a></li><li><a href="Data.Number.Format.html">Data.Number.Format</a></li><li><a href="Data.Op.html">Data.Op</a></li><li><a href="Data.Ord.html">Data.Ord</a></li><li><a href="Data.Ord.Down.html">Data.Ord.Down</a></li><li><a href="Data.Ord.Generic.html">Data.Ord.Generic</a></li><li><a href="Data.Ord.Max.html">Data.Ord.Max</a></li><li><a href="Data.Ord.Min.html">Data.Ord.Min</a></li><li><a href="Data.Ordering.html">Data.Ordering</a></li><li><a href="Data.Posix.html">Data.Posix</a></li><li><a href="Data.Posix.Signal.html">Data.Posix.Signal</a></li><li><a href="Data.Predicate.html">Data.Predicate</a></li><li><a href="Data.Profunctor.html">Data.Profunctor</a></li><li><a href="Data.Profunctor.Choice.html">Data.Profunctor.Choice</a></li><li><a href="Data.Profunctor.Closed.html">Data.Profunctor.Closed</a></li><li><a href="Data.Profunctor.Cochoice.html">Data.Profunctor.Cochoice</a></li><li><a href="Data.Profunctor.Costrong.html">Data.Profunctor.Costrong</a></li><li><a href="Data.Profunctor.Join.html">Data.Profunctor.Join</a></li><li><a href="Data.Profunctor.Split.html">Data.Profunctor.Split</a></li><li><a href="Data.Profunctor.Star.html">Data.Profunctor.Star</a></li><li><a href="Data.Profunctor.Strong.html">Data.Profunctor.Strong</a></li><li><a href="Data.Reflectable.html">Data.Reflectable</a></li><li><a href="Data.Ring.html">Data.Ring</a></li><li><a href="Data.Ring.Generic.html">Data.Ring.Generic</a></li><li><a href="Data.Semigroup.html">Data.Semigroup</a></li><li><a href="Data.Semigroup.First.html">Data.Semigroup.First</a></li><li><a href="Data.Semigroup.Foldable.html">Data.Semigroup.Foldable</a></li><li><a href="Data.Semigroup.Generic.html">Data.Semigroup.Generic</a></li><li><a href="Data.Semigroup.Last.html">Data.Semigroup.Last</a></li><li><a href="Data.Semigroup.Traversable.html">Data.Semigroup.Traversable</a></li><li><a href="Data.Semiring.html">Data.Semiring</a></li><li><a href="Data.Semiring.Generic.html">Data.Semiring.Generic</a></li><li><a href="Data.Set.html">Data.Set</a></li><li><a href="Data.Set.NonEmpty.html">Data.Set.NonEmpty</a></li><li><a href="Data.Show.html">Data.Show</a></li><li><a href="Data.Show.Generic.html">Data.Show.Generic</a></li><li><a href="Data.String.html">Data.String</a></li><li><a href="Data.String.CaseInsensitive.html">Data.String.CaseInsensitive</a></li><li><a href="Data.String.CodePoints.html">Data.String.CodePoints</a></li><li><a href="Data.String.CodeUnits.html">Data.String.CodeUnits</a></li><li><a href="Data.String.Common.html">Data.String.Common</a></li><li><a href="Data.String.Gen.html">Data.String.Gen</a></li><li><a href="Data.String.NonEmpty.html">Data.String.NonEmpty</a></li><li><a href="Data.String.NonEmpty.CaseInsensitive.html">Data.String.NonEmpty.CaseInsensitive</a></li><li><a href="Data.String.NonEmpty.CodePoints.html">Data.String.NonEmpty.CodePoints</a></li><li><a href="Data.String.NonEmpty.CodeUnits.html">Data.String.NonEmpty.CodeUnits</a></li><li><a href="Data.String.NonEmpty.Internal.html">Data.String.NonEmpty.Internal</a></li><li><a href="Data.String.Pattern.html">Data.String.Pattern</a></li><li><a href="Data.String.Regex.html">Data.String.Regex</a></li><li><a href="Data.String.Regex.Flags.html">Data.String.Regex.Flags</a></li><li><a href="Data.String.Regex.Unsafe.html">Data.String.Regex.Unsafe</a></li><li><a href="Data.String.Unsafe.html">Data.String.Unsafe</a></li><li><a href="Data.Symbol.html">Data.Symbol</a></li><li><a href="Data.Time.html">Data.Time</a></li><li><a href="Data.Time.Component.html">Data.Time.Component</a></li><li><a href="Data.Time.Component.Gen.html">Data.Time.Component.Gen</a></li><li><a href="Data.Time.Duration.html">Data.Time.Duration</a></li><li><a href="Data.Time.Duration.Gen.html">Data.Time.Duration.Gen</a></li><li><a href="Data.Time.Gen.html">Data.Time.Gen</a></li><li><a href="Data.Traversable.html">Data.Traversable</a></li><li><a href="Data.Traversable.Accum.html">Data.Traversable.Accum</a></li><li><a href="Data.Traversable.Accum.Internal.html">Data.Traversable.Accum.Internal</a></li><li><a href="Data.TraversableWithIndex.html">Data.TraversableWithIndex</a></li><li><a href="Data.Tuple.html">Data.Tuple</a></li><li><a href="Data.Tuple.Nested.html">Data.Tuple.Nested</a></li><li><a href="Data.Unfoldable.html">Data.Unfoldable</a></li><li><a href="Data.Unfoldable1.html">Data.Unfoldable1</a></li><li><a href="Data.Unit.html">Data.Unit</a></li><li><a href="Data.Variant.html">Data.Variant</a></li><li><a href="Data.Variant.Internal.html">Data.Variant.Internal</a></li><li><a href="Data.Void.html">Data.Void</a></li><li><a href="Data.Witherable.html">Data.Witherable</a></li><li><a href="Data.Yoneda.html">Data.Yoneda</a></li><li><a href="Effect.html">Effect</a></li><li><a href="Effect.AVar.html">Effect.AVar</a></li><li><a href="Effect.Aff.html">Effect.Aff</a></li><li><a href="Effect.Aff.AVar.html">Effect.Aff.AVar</a></li><li><a href="Effect.Aff.Class.html">Effect.Aff.Class</a></li><li><a href="Effect.Aff.Compat.html">Effect.Aff.Compat</a></li><li><a href="Effect.Class.html">Effect.Class</a></li><li><a href="Effect.Class.Console.html">Effect.Class.Console</a></li><li><a href="Effect.Console.html">Effect.Console</a></li><li><a href="Effect.Exception.html">Effect.Exception</a></li><li><a href="Effect.Exception.Unsafe.html">Effect.Exception.Unsafe</a></li><li><a href="Effect.Now.html">Effect.Now</a></li><li><a href="Effect.Ref.html">Effect.Ref</a></li><li><a href="Effect.Timer.html">Effect.Timer</a></li><li><a href="Effect.Uncurried.html">Effect.Uncurried</a></li><li><a href="Effect.Unsafe.html">Effect.Unsafe</a></li><li><a href="FRP.Behavior.html">FRP.Behavior</a></li><li><a href="FRP.Behavior.Keyboard.html">FRP.Behavior.Keyboard</a></li><li><a href="FRP.Behavior.Mouse.html">FRP.Behavior.Mouse</a></li><li><a href="FRP.Behavior.Time.html">FRP.Behavior.Time</a></li><li><a href="FRP.Event.html">FRP.Event</a></li><li><a href="FRP.Event.AnimationFrame.html">FRP.Event.AnimationFrame</a></li><li><a href="FRP.Event.Class.html">FRP.Event.Class</a></li><li><a href="FRP.Event.Keyboard.html">FRP.Event.Keyboard</a></li><li><a href="FRP.Event.Mouse.html">FRP.Event.Mouse</a></li><li><a href="FRP.Event.Time.html">FRP.Event.Time</a></li><li><a href="FRP.Event.VBus.html">FRP.Event.VBus</a></li><li><a href="Foreign.html">Foreign</a></li><li><a href="Foreign.Index.html">Foreign.Index</a></li><li><a href="Foreign.Keys.html">Foreign.Keys</a></li><li><a href="Foreign.Object.html">Foreign.Object</a></li><li><a href="Foreign.Object.Gen.html">Foreign.Object.Gen</a></li><li><a href="Foreign.Object.ST.html">Foreign.Object.ST</a></li><li><a href="Foreign.Object.ST.Unsafe.html">Foreign.Object.ST.Unsafe</a></li><li><a href="Foreign.Object.Unsafe.html">Foreign.Object.Unsafe</a></li><li><a href="Heterogeneous.Folding.html">Heterogeneous.Folding</a></li><li><a href="Heterogeneous.Mapping.html">Heterogeneous.Mapping</a></li><li><a href="Node.Buffer.html">Node.Buffer</a></li><li><a href="Node.Buffer.Class.html">Node.Buffer.Class</a></li><li><a href="Node.Buffer.Constants.html">Node.Buffer.Constants</a></li><li><a href="Node.Buffer.Immutable.html">Node.Buffer.Immutable</a></li><li><a href="Node.Buffer.ST.html">Node.Buffer.ST</a></li><li><a href="Node.Buffer.Types.html">Node.Buffer.Types</a></li><li><a href="Node.Encoding.html">Node.Encoding</a></li><li><a href="Node.EventEmitter.html">Node.EventEmitter</a></li><li><a href="Node.EventEmitter.UtilTypes.html">Node.EventEmitter.UtilTypes</a></li><li><a href="Node.FS.html">Node.FS</a></li><li><a href="Node.FS.Aff.html">Node.FS.Aff</a></li><li><a href="Node.FS.Async.html">Node.FS.Async</a></li><li><a href="Node.FS.Constants.html">Node.FS.Constants</a></li><li><a href="Node.FS.Perms.html">Node.FS.Perms</a></li><li><a href="Node.FS.Stats.html">Node.FS.Stats</a></li><li><a href="Node.FS.Stream.html">Node.FS.Stream</a></li><li><a href="Node.FS.Sync.html">Node.FS.Sync</a></li><li><a href="Node.Path.html">Node.Path</a></li><li><a href="Node.Platform.html">Node.Platform</a></li><li><a href="Node.Process.html">Node.Process</a></li><li><a href="Node.Stream.html">Node.Stream</a></li><li><a href="Node.Stream.Aff.html">Node.Stream.Aff</a></li><li><a href="Node.Symbol.html">Node.Symbol</a></li><li><a href="Partial.html">Partial</a></li><li><a href="Partial.Unsafe.html">Partial.Unsafe</a></li><li><a href="Performance.Minibench.html">Performance.Minibench</a></li><li><a href="Pipes.html">Pipes</a></li><li><a href="Pipes.Core.html">Pipes.Core</a></li><li><a href="Pipes.Internal.html">Pipes.Internal</a></li><li><a href="Pipes.ListT.html">Pipes.ListT</a></li><li><a href="Pipes.Prelude.html">Pipes.Prelude</a></li><li><a href="Prelude.html">Prelude</a></li><li><a href="Prim.html">Prim</a></li><li><a href="Prim.Boolean.html">Prim.Boolean</a></li><li><a href="Prim.Coerce.html">Prim.Coerce</a></li><li><a href="Prim.Int.html">Prim.Int</a></li><li><a href="Prim.Ordering.html">Prim.Ordering</a></li><li><a href="Prim.Row.html">Prim.Row</a></li><li><a href="Prim.RowList.html">Prim.RowList</a></li><li><a href="Prim.Symbol.html">Prim.Symbol</a></li><li><a href="Prim.TypeError.html">Prim.TypeError</a></li><li><a href="Record.html">Record</a></li><li><a href="Record.Builder.html">Record.Builder</a></li><li><a href="Record.Studio.html">Record.Studio</a></li><li><a href="Record.Studio.Keys.html">Record.Studio.Keys</a></li><li><a href="Record.Studio.Map.html">Record.Studio.Map</a></li><li><a href="Record.Studio.MapKind.html">Record.Studio.MapKind</a></li><li><a href="Record.Studio.MapUniform.html">Record.Studio.MapUniform</a></li><li><a href="Record.Studio.Merge.html">Record.Studio.Merge</a></li><li><a href="Record.Studio.SameKeys.html">Record.Studio.SameKeys</a></li><li><a href="Record.Studio.Sequence.html">Record.Studio.Sequence</a></li><li><a href="Record.Studio.Shrink.html">Record.Studio.Shrink</a></li><li><a href="Record.Studio.SingletonRecord.html">Record.Studio.SingletonRecord</a></li><li><a href="Record.Unsafe.html">Record.Unsafe</a></li><li><a href="Record.Unsafe.Union.html">Record.Unsafe.Union</a></li><li><a href="Safe.Coerce.html">Safe.Coerce</a></li><li><a href="Spago.Generated.BuildInfo.html">Spago.Generated.BuildInfo</a></li><li><a href="Test.Spec.html">Test.Spec</a></li><li><a href="Test.Spec.Assertions.html">Test.Spec.Assertions</a></li><li><a href="Test.Spec.Assertions.String.html">Test.Spec.Assertions.String</a></li><li><a href="Test.Spec.Config.html">Test.Spec.Config</a></li><li><a href="Test.Spec.Console.html">Test.Spec.Console</a></li><li><a href="Test.Spec.Reporter.html">Test.Spec.Reporter</a></li><li><a href="Test.Spec.Reporter.Base.html">Test.Spec.Reporter.Base</a></li><li><a href="Test.Spec.Reporter.Console.html">Test.Spec.Reporter.Console</a></li><li><a href="Test.Spec.Reporter.Dot.html">Test.Spec.Reporter.Dot</a></li><li><a href="Test.Spec.Reporter.Spec.html">Test.Spec.Reporter.Spec</a></li><li><a href="Test.Spec.Reporter.Tap.html">Test.Spec.Reporter.Tap</a></li><li><a href="Test.Spec.Reporter.TeamCity.html">Test.Spec.Reporter.TeamCity</a></li><li><a href="Test.Spec.Result.html">Test.Spec.Result</a></li><li><a href="Test.Spec.Runner.html">Test.Spec.Runner</a></li><li><a href="Test.Spec.Runner.Event.html">Test.Spec.Runner.Event</a></li><li><a href="Test.Spec.Speed.html">Test.Spec.Speed</a></li><li><a href="Test.Spec.Style.html">Test.Spec.Style</a></li><li><a href="Test.Spec.Summary.html">Test.Spec.Summary</a></li><li><a href="Test.Spec.Tree.html">Test.Spec.Tree</a></li><li><a href="Type.Data.Boolean.html">Type.Data.Boolean</a></li><li><a href="Type.Data.Ordering.html">Type.Data.Ordering</a></li><li><a href="Type.Data.Symbol.html">Type.Data.Symbol</a></li><li><a href="Type.Equality.html">Type.Equality</a></li><li><a href="Type.Function.html">Type.Function</a></li><li><a href="Type.Prelude.html">Type.Prelude</a></li><li><a href="Type.Proxy.html">Type.Proxy</a></li><li><a href="Type.Row.html">Type.Row</a></li><li><a href="Type.Row.Homogeneous.html">Type.Row.Homogeneous</a></li><li><a href="Type.RowList.html">Type.RowList</a></li><li><a href="Uncurried.RWSE.html">Uncurried.RWSE</a></li><li><a href="Uncurried.RWSET.html">Uncurried.RWSET</a></li><li><a href="Uncurried.Reader.html">Uncurried.Reader</a></li><li><a href="Uncurried.ReaderT.html">Uncurried.ReaderT</a></li><li><a href="Uncurried.State.html">Uncurried.State</a></li><li><a href="Uncurried.StateT.html">Uncurried.StateT</a></li><li><a href="Uncurried.Writer.html">Uncurried.Writer</a></li><li><a href="Uncurried.WriterT.html">Uncurried.WriterT</a></li><li><a href="Unsafe.Coerce.html">Unsafe.Coerce</a></li><li><a href="Unsafe.Reference.html">Unsafe.Reference</a></li><li><a href="Web.DOM.html">Web.DOM</a></li><li><a href="Web.DOM.CharacterData.html">Web.DOM.CharacterData</a></li><li><a href="Web.DOM.ChildNode.html">Web.DOM.ChildNode</a></li><li><a href="Web.DOM.Comment.html">Web.DOM.Comment</a></li><li><a href="Web.DOM.DOMTokenList.html">Web.DOM.DOMTokenList</a></li><li><a href="Web.DOM.Document.html">Web.DOM.Document</a></li><li><a href="Web.DOM.DocumentFragment.html">Web.DOM.DocumentFragment</a></li><li><a href="Web.DOM.DocumentType.html">Web.DOM.DocumentType</a></li><li><a href="Web.DOM.Element.html">Web.DOM.Element</a></li><li><a href="Web.DOM.HTMLCollection.html">Web.DOM.HTMLCollection</a></li><li><a href="Web.DOM.Internal.Types.html">Web.DOM.Internal.Types</a></li><li><a href="Web.DOM.MutationObserver.html">Web.DOM.MutationObserver</a></li><li><a href="Web.DOM.MutationRecord.html">Web.DOM.MutationRecord</a></li><li><a href="Web.DOM.Node.html">Web.DOM.Node</a></li><li><a href="Web.DOM.NodeList.html">Web.DOM.NodeList</a></li><li><a href="Web.DOM.NodeType.html">Web.DOM.NodeType</a></li><li><a href="Web.DOM.NonDocumentTypeChildNode.html">Web.DOM.NonDocumentTypeChildNode</a></li><li><a href="Web.DOM.NonElementParentNode.html">Web.DOM.NonElementParentNode</a></li><li><a href="Web.DOM.ParentNode.html">Web.DOM.ParentNode</a></li><li><a href="Web.DOM.ProcessingInstruction.html">Web.DOM.ProcessingInstruction</a></li><li><a href="Web.DOM.ShadowRoot.html">Web.DOM.ShadowRoot</a></li><li><a href="Web.DOM.Text.html">Web.DOM.Text</a></li><li><a href="Web.Event.CustomEvent.html">Web.Event.CustomEvent</a></li><li><a href="Web.Event.Event.html">Web.Event.Event</a></li><li><a href="Web.Event.EventPhase.html">Web.Event.EventPhase</a></li><li><a href="Web.Event.EventTarget.html">Web.Event.EventTarget</a></li><li><a href="Web.Event.Internal.Types.html">Web.Event.Internal.Types</a></li><li><a href="Web.File.Blob.html">Web.File.Blob</a></li><li><a href="Web.File.File.html">Web.File.File</a></li><li><a href="Web.File.FileList.html">Web.File.FileList</a></li><li><a href="Web.File.FileReader.html">Web.File.FileReader</a></li><li><a href="Web.File.FileReader.ReadyState.html">Web.File.FileReader.ReadyState</a></li><li><a href="Web.File.Url.html">Web.File.Url</a></li><li><a href="Web.HTML.html">Web.HTML</a></li><li><a href="Web.HTML.Common.html">Web.HTML.Common</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.html">Web.HTML.Event.BeforeUnloadEvent</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.EventTypes.html">Web.HTML.Event.BeforeUnloadEvent.EventTypes</a></li><li><a href="Web.HTML.Event.DataTransfer.html">Web.HTML.Event.DataTransfer</a></li><li><a href="Web.HTML.Event.DataTransfer.DataTransferItem.html">Web.HTML.Event.DataTransfer.DataTransferItem</a></li><li><a href="Web.HTML.Event.DragEvent.html">Web.HTML.Event.DragEvent</a></li><li><a href="Web.HTML.Event.DragEvent.EventTypes.html">Web.HTML.Event.DragEvent.EventTypes</a></li><li><a href="Web.HTML.Event.ErrorEvent.html">Web.HTML.Event.ErrorEvent</a></li><li><a href="Web.HTML.Event.EventTypes.html">Web.HTML.Event.EventTypes</a></li><li><a href="Web.HTML.Event.HashChangeEvent.html">Web.HTML.Event.HashChangeEvent</a></li><li><a href="Web.HTML.Event.HashChangeEvent.EventTypes.html">Web.HTML.Event.HashChangeEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.html">Web.HTML.Event.PageTransitionEvent</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.EventTypes.html">Web.HTML.Event.PageTransitionEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PopStateEvent.html">Web.HTML.Event.PopStateEvent</a></li><li><a href="Web.HTML.Event.PopStateEvent.EventTypes.html">Web.HTML.Event.PopStateEvent.EventTypes</a></li><li><a href="Web.HTML.Event.TrackEvent.html">Web.HTML.Event.TrackEvent</a></li><li><a href="Web.HTML.Event.TrackEvent.EventTypes.html">Web.HTML.Event.TrackEvent.EventTypes</a></li><li><a href="Web.HTML.HTMLAnchorElement.html">Web.HTML.HTMLAnchorElement</a></li><li><a href="Web.HTML.HTMLAreaElement.html">Web.HTML.HTMLAreaElement</a></li><li><a href="Web.HTML.HTMLAudioElement.html">Web.HTML.HTMLAudioElement</a></li><li><a href="Web.HTML.HTMLBRElement.html">Web.HTML.HTMLBRElement</a></li><li><a href="Web.HTML.HTMLBaseElement.html">Web.HTML.HTMLBaseElement</a></li><li><a href="Web.HTML.HTMLBodyElement.html">Web.HTML.HTMLBodyElement</a></li><li><a href="Web.HTML.HTMLButtonElement.html">Web.HTML.HTMLButtonElement</a></li><li><a href="Web.HTML.HTMLCanvasElement.html">Web.HTML.HTMLCanvasElement</a></li><li><a href="Web.HTML.HTMLDListElement.html">Web.HTML.HTMLDListElement</a></li><li><a href="Web.HTML.HTMLDataElement.html">Web.HTML.HTMLDataElement</a></li><li><a href="Web.HTML.HTMLDataListElement.html">Web.HTML.HTMLDataListElement</a></li><li><a href="Web.HTML.HTMLDivElement.html">Web.HTML.HTMLDivElement</a></li><li><a href="Web.HTML.HTMLDocument.html">Web.HTML.HTMLDocument</a></li><li><a href="Web.HTML.HTMLDocument.ReadyState.html">Web.HTML.HTMLDocument.ReadyState</a></li><li><a href="Web.HTML.HTMLDocument.VisibilityState.html">Web.HTML.HTMLDocument.VisibilityState</a></li><li><a href="Web.HTML.HTMLElement.html">Web.HTML.HTMLElement</a></li><li><a href="Web.HTML.HTMLEmbedElement.html">Web.HTML.HTMLEmbedElement</a></li><li><a href="Web.HTML.HTMLFieldSetElement.html">Web.HTML.HTMLFieldSetElement</a></li><li><a href="Web.HTML.HTMLFormElement.html">Web.HTML.HTMLFormElement</a></li><li><a href="Web.HTML.HTMLHRElement.html">Web.HTML.HTMLHRElement</a></li><li><a href="Web.HTML.HTMLHeadElement.html">Web.HTML.HTMLHeadElement</a></li><li><a href="Web.HTML.HTMLHeadingElement.html">Web.HTML.HTMLHeadingElement</a></li><li><a href="Web.HTML.HTMLHtmlElement.html">Web.HTML.HTMLHtmlElement</a></li><li><a href="Web.HTML.HTMLHyperlinkElementUtils.html">Web.HTML.HTMLHyperlinkElementUtils</a></li><li><a href="Web.HTML.HTMLIFrameElement.html">Web.HTML.HTMLIFrameElement</a></li><li><a href="Web.HTML.HTMLImageElement.html">Web.HTML.HTMLImageElement</a></li><li><a href="Web.HTML.HTMLImageElement.CORSMode.html">Web.HTML.HTMLImageElement.CORSMode</a></li><li><a href="Web.HTML.HTMLImageElement.DecodingHint.html">Web.HTML.HTMLImageElement.DecodingHint</a></li><li><a href="Web.HTML.HTMLImageElement.Laziness.html">Web.HTML.HTMLImageElement.Laziness</a></li><li><a href="Web.HTML.HTMLInputElement.html">Web.HTML.HTMLInputElement</a></li><li><a href="Web.HTML.HTMLKeygenElement.html">Web.HTML.HTMLKeygenElement</a></li><li><a href="Web.HTML.HTMLLIElement.html">Web.HTML.HTMLLIElement</a></li><li><a href="Web.HTML.HTMLLabelElement.html">Web.HTML.HTMLLabelElement</a></li><li><a href="Web.HTML.HTMLLegendElement.html">Web.HTML.HTMLLegendElement</a></li><li><a href="Web.HTML.HTMLLinkElement.html">Web.HTML.HTMLLinkElement</a></li><li><a href="Web.HTML.HTMLMapElement.html">Web.HTML.HTMLMapElement</a></li><li><a href="Web.HTML.HTMLMediaElement.html">Web.HTML.HTMLMediaElement</a></li><li><a href="Web.HTML.HTMLMediaElement.CanPlayType.html">Web.HTML.HTMLMediaElement.CanPlayType</a></li><li><a href="Web.HTML.HTMLMediaElement.NetworkState.html">Web.HTML.HTMLMediaElement.NetworkState</a></li><li><a href="Web.HTML.HTMLMediaElement.ReadyState.html">Web.HTML.HTMLMediaElement.ReadyState</a></li><li><a href="Web.HTML.HTMLMetaElement.html">Web.HTML.HTMLMetaElement</a></li><li><a href="Web.HTML.HTMLMeterElement.html">Web.HTML.HTMLMeterElement</a></li><li><a href="Web.HTML.HTMLModElement.html">Web.HTML.HTMLModElement</a></li><li><a href="Web.HTML.HTMLOListElement.html">Web.HTML.HTMLOListElement</a></li><li><a href="Web.HTML.HTMLObjectElement.html">Web.HTML.HTMLObjectElement</a></li><li><a href="Web.HTML.HTMLOptGroupElement.html">Web.HTML.HTMLOptGroupElement</a></li><li><a href="Web.HTML.HTMLOptionElement.html">Web.HTML.HTMLOptionElement</a></li><li><a href="Web.HTML.HTMLOutputElement.html">Web.HTML.HTMLOutputElement</a></li><li><a href="Web.HTML.HTMLParagraphElement.html">Web.HTML.HTMLParagraphElement</a></li><li><a href="Web.HTML.HTMLParamElement.html">Web.HTML.HTMLParamElement</a></li><li><a href="Web.HTML.HTMLPreElement.html">Web.HTML.HTMLPreElement</a></li><li><a href="Web.HTML.HTMLProgressElement.html">Web.HTML.HTMLProgressElement</a></li><li><a href="Web.HTML.HTMLQuoteElement.html">Web.HTML.HTMLQuoteElement</a></li><li><a href="Web.HTML.HTMLScriptElement.html">Web.HTML.HTMLScriptElement</a></li><li><a href="Web.HTML.HTMLSelectElement.html">Web.HTML.HTMLSelectElement</a></li><li><a href="Web.HTML.HTMLSourceElement.html">Web.HTML.HTMLSourceElement</a></li><li><a href="Web.HTML.HTMLSpanElement.html">Web.HTML.HTMLSpanElement</a></li><li><a href="Web.HTML.HTMLStyleElement.html">Web.HTML.HTMLStyleElement</a></li><li><a href="Web.HTML.HTMLTableCaptionElement.html">Web.HTML.HTMLTableCaptionElement</a></li><li><a href="Web.HTML.HTMLTableCellElement.html">Web.HTML.HTMLTableCellElement</a></li><li><a href="Web.HTML.HTMLTableColElement.html">Web.HTML.HTMLTableColElement</a></li><li><a href="Web.HTML.HTMLTableDataCellElement.html">Web.HTML.HTMLTableDataCellElement</a></li><li><a href="Web.HTML.HTMLTableElement.html">Web.HTML.HTMLTableElement</a></li><li><a href="Web.HTML.HTMLTableHeaderCellElement.html">Web.HTML.HTMLTableHeaderCellElement</a></li><li><a href="Web.HTML.HTMLTableRowElement.html">Web.HTML.HTMLTableRowElement</a></li><li><a href="Web.HTML.HTMLTableSectionElement.html">Web.HTML.HTMLTableSectionElement</a></li><li><a href="Web.HTML.HTMLTemplateElement.html">Web.HTML.HTMLTemplateElement</a></li><li><a href="Web.HTML.HTMLTextAreaElement.html">Web.HTML.HTMLTextAreaElement</a></li><li><a href="Web.HTML.HTMLTimeElement.html">Web.HTML.HTMLTimeElement</a></li><li><a href="Web.HTML.HTMLTitleElement.html">Web.HTML.HTMLTitleElement</a></li><li><a href="Web.HTML.HTMLTrackElement.html">Web.HTML.HTMLTrackElement</a></li><li><a href="Web.HTML.HTMLTrackElement.ReadyState.html">Web.HTML.HTMLTrackElement.ReadyState</a></li><li><a href="Web.HTML.HTMLUListElement.html">Web.HTML.HTMLUListElement</a></li><li><a href="Web.HTML.HTMLVideoElement.html">Web.HTML.HTMLVideoElement</a></li><li><a href="Web.HTML.History.html">Web.HTML.History</a></li><li><a href="Web.HTML.Location.html">Web.HTML.Location</a></li><li><a href="Web.HTML.Navigator.html">Web.HTML.Navigator</a></li><li><a href="Web.HTML.SelectionMode.html">Web.HTML.SelectionMode</a></li><li><a href="Web.HTML.ValidityState.html">Web.HTML.ValidityState</a></li><li><a href="Web.HTML.Window.html">Web.HTML.Window</a></li><li><a href="Web.Internal.FFI.html">Web.Internal.FFI</a></li><li><a href="Web.Storage.Event.StorageEvent.html">Web.Storage.Event.StorageEvent</a></li><li><a href="Web.Storage.Storage.html">Web.Storage.Storage</a></li><li><a href="Web.UIEvent.CompositionEvent.html">Web.UIEvent.CompositionEvent</a></li><li><a href="Web.UIEvent.CompositionEvent.EventTypes.html">Web.UIEvent.CompositionEvent.EventTypes</a></li><li><a href="Web.UIEvent.EventTypes.html">Web.UIEvent.EventTypes</a></li><li><a href="Web.UIEvent.FocusEvent.html">Web.UIEvent.FocusEvent</a></li><li><a href="Web.UIEvent.FocusEvent.EventTypes.html">Web.UIEvent.FocusEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.html">Web.UIEvent.InputEvent</a></li><li><a href="Web.UIEvent.InputEvent.EventTypes.html">Web.UIEvent.InputEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.InputType.html">Web.UIEvent.InputEvent.InputType</a></li><li><a href="Web.UIEvent.KeyboardEvent.html">Web.UIEvent.KeyboardEvent</a></li><li><a href="Web.UIEvent.KeyboardEvent.EventTypes.html">Web.UIEvent.KeyboardEvent.EventTypes</a></li><li><a href="Web.UIEvent.MouseEvent.html">Web.UIEvent.MouseEvent</a></li><li><a href="Web.UIEvent.MouseEvent.EventTypes.html">Web.UIEvent.MouseEvent.EventTypes</a></li><li><a href="Web.UIEvent.UIEvent.html">Web.UIEvent.UIEvent</a></li><li><a href="Web.UIEvent.WheelEvent.html">Web.UIEvent.WheelEvent</a></li><li><a href="Web.UIEvent.WheelEvent.EventTypes.html">Web.UIEvent.WheelEvent.EventTypes</a></li></ul></div></main></div><div class="footer clearfix"><p>Generated by purs 0.15.15 [development build; commit: UNKNOWN]</p></div><!-- Docs search index. --><script type="text/javascript" src="./docs-search-app.js"></script><script type="text/javascript">window.DocsSearchTypeIndex = {};window.DocsSearchIndex = {};</script></body></html>
generated-docs/html/Control.Alt.htmldeleted−1397
@@ -1,1397 +0,0 @@
2−<html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>PureScript: Control.Alt</title><link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:300,400,400i,700,700i" type="text/css" rel="stylesheet"><style type="text/css">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
5− * 1. Set default font family to sans-serif.
6− * 2. Prevent iOS text size adjust after orientation change, without disabling
11− font-family: sans-serif; /* 1 */
12− -ms-text-size-adjust: 100%; /* 2 */
13− -webkit-text-size-adjust: 100%; /* 2 */
17− * Remove default margin.
24−/* HTML5 display definitions
25− ========================================================================== */
28− * Correct `block` display not defined for any HTML5 element in IE 8/9.
29− * Correct `block` display not defined for `details` or `summary` in IE 10/11
31− * Correct `block` display not defined for `main` in IE 11.
51− * 1. Correct `inline-block` display not defined in IE 8/9.
52− * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
59− display: inline-block; /* 1 */
60− vertical-align: baseline; /* 2 */
64− * Prevent modern browsers from displaying `audio` without controls.
65− * Remove excess height in iOS 5 devices.
68−audio:not([controls]) {
74− * Address `[hidden]` styling not present in IE 8/9/10.
75− * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
84− ========================================================================== */
87− * Remove the gray background color from active links in IE 10.
91− background-color: transparent;
95− * Improve readability when focused and also mouse hovered in all browsers.
103−/* Text-level semantics
104− ========================================================================== */
107− * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
111− border-bottom: 1px dotted;
115− * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
124− * Address styling not present in Safari and Chrome.
132− * Address variable `h1` font-size and margin within `section` and `article`
133− * contexts in Firefox 4+, Safari, and Chrome.
142− * Address styling not present in IE 8/9.
151− * Address inconsistent and variable font size in all browsers.
159− * Prevent `sub` and `sup` affecting `line-height` in all browsers.
167− vertical-align: baseline;
179− ========================================================================== */
182− * Remove border when inside `a` element in IE 8/9/10.
190− * Correct overflow not hidden in IE 9/10/11.
198− ========================================================================== */
201− * Address margin not present in IE 8/9 and Safari.
209− * Address differences between Firefox and other browsers.
213− -moz-box-sizing: content-box;
214− box-sizing: content-box;
219− * Contain overflow in all browsers.
227− * Address odd `em`-unit font size rendering in all browsers.
234− font-family: monospace, monospace;
239− ========================================================================== */
242− * Known limitation: by default, Chrome and Safari on OS X allow very limited
243− * styling of `select`, unless a `border` property is set.
247− * 1. Correct color not being inherited.
248− * Known issue: affects color of disabled elements.
249− * 2. Correct font properties not being inherited.
250− * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
258− color: inherit; /* 1 */
259− font: inherit; /* 2 */
264− * Address `overflow` set to `hidden` in IE 8/9/10/11.
272− * Address inconsistent `text-transform` inheritance for `button` and `select`.
273− * All other form control elements do not inherit `text-transform` values.
274− * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
275− * Correct `select` style inheritance in Firefox.
280− text-transform: none;
284− * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
285− * and `video` controls.
286− * 2. Correct inability to style clickable `input` types in iOS.
287− * 3. Improve usability and consistency of cursor style between image-type
288− * `input` and others.
292−html input[type="button"], /* 1 */
294−input[type="submit"] {
295− -webkit-appearance: button; /* 2 */
296− cursor: pointer; /* 3 */
300− * Re-set default cursor for disabled elements.
304−html input[disabled] {
309− * Remove inner padding and border in Firefox 4+.
312−button::-moz-focus-inner,
313−input::-moz-focus-inner {
319− * Address Firefox 4+ setting `line-height` on `input` using `!important` in
320− * the UA stylesheet.
324− line-height: normal;
328− * It's recommended that you don't attempt to style these elements.
329− * Firefox's implementation doesn't respect box-sizing, padding, or width.
331− * 1. Address box sizing set to `content-box` in IE 8/9/10.
332− * 2. Remove excess padding in IE 8/9/10.
335−input[type="checkbox"],
336−input[type="radio"] {
337− box-sizing: border-box; /* 1 */
342− * Fix the cursor style for Chrome's increment/decrement buttons. For certain
343− * `font-size` values of the `input`, it causes the cursor style of the
344− * decrement button to change from `default` to `text`.
347−input[type="number"]::-webkit-inner-spin-button,
348−input[type="number"]::-webkit-outer-spin-button {
353− * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
354− * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
355− * (include `-moz` to future-proof).
358−input[type="search"] {
359− -webkit-appearance: textfield; /* 1 */
360− -moz-box-sizing: content-box;
361− -webkit-box-sizing: content-box; /* 2 */
362− box-sizing: content-box;
366− * Remove inner padding and search cancel button in Safari and Chrome on OS X.
367− * Safari (but not Chrome) clips the cancel button when the search input has
368− * padding (and `textfield` appearance).
371−input[type="search"]::-webkit-search-cancel-button,
372−input[type="search"]::-webkit-search-decoration {
373− -webkit-appearance: none;
377− * Define consistent border, margin, and padding.
381− border: 1px solid #c0c0c0;
383− padding: 0.35em 0.625em 0.75em;
387− * 1. Correct `color` not being inherited in IE 8/9/10/11.
388− * 2. Remove padding so people aren't caught out if they zero out fieldsets.
397− * Remove default vertical scrollbar in IE 8/9/10/11.
405− * Don't inherit the `font-weight` (applied by a rule above).
406− * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
414− ========================================================================== */
417− * Remove most spacing between table cells.
421− border-collapse: collapse;
429−</style><style type="text/css">/** ************************************************************************* *
430− ** CSS for HTML docs (e.g. Pursuit)
434− ** This CSS file is structured into several sections, from general to
435− ** specific, and (mostly) alphabetically within the sections.
437− ** Several global element styles are used. This is not encouraged and should
438− ** be kept to a minimum. If you want to add new styles you'll most likely
439− ** want to add a new CSS component. See the Components section for examples.
441− ** CSS components use three simple naming ideas from the BEM system:
442− ** - Block: `.my-component`
443− ** - Element: `.my-component__item`
444− ** - Modifier: `.my-component.my-component--highlighted`
447− ** <div .my-component>
448− ** <div .my-component__item>
449− ** <div .my-component__item>
451− ** <div .my-component.my-component--highlighted>
452− ** <div .my-component__item>
453− ** <div .my-component__item>
455− ** Components can be nested.
460− ** Typographic choices for sizes, line-heights and margins are based on a
461− ** musical major third scale (4:5). This gives us a way to find numbers
462− ** and relationships between them that are perceived as harmonic.
464− ** To make use of this modular scale, use a ratio of the form
466− ** where n ∈ ℤ, -6 ≤ n ≤ 8.
470− ** This CSS is generated by less. To compile it:
472− ** npm install [-g] less
473− ** lessc app/static/pursuit.less > app/static/pursuit.css
475− ** ************************************************************************* */
476−/* Section: Variables
477− * ========================================================================== */
478−/* Section: Document Styles
479− * ========================================================================== */
481− color-scheme: light dark;
484− box-sizing: border-box;
485− /* This overflow rule prevents everything from shifting slightly to the side
486− when moving from a page which isn't large enough to generate a scrollbar
493− box-sizing: inherit;
496− background-color: #ffffff;
498− font-family: "Roboto", sans-serif;
502−@media (prefers-color-scheme: dark) {
504− background-color: #141417;
508−@media (min-width: 38em) {
513−/* Section: Utility Classes
514− * ========================================================================== */
526−/* Content hidden like this will still be read by a screen reader */
536− * ========================================================================== */
543− padding-right: 20px;
551− margin-bottom: 3.08em;
554− margin-bottom: 2.44em;
556−@media (min-width: 52em) {
559− padding-right: 30px;
572−@media (min-width: 66em) {
578− * Based on http://www.lwis.net/journal/2008/02/08/pure-css-sticky-footer/
579− * Except we don't support IE6
580− * -------------------------------------------------------------------------- */
585−.everything-except-footer {
587− padding-bottom: 3em;
595− background-color: #1d222d;
598−@media (prefers-color-scheme: dark) {
600− background-color: #1d222d;
607−/* Section: Element Styles
609− * Have as few of these as possible and keep them general, because they will
610− * influence every component hereafter.
611− * ========================================================================== */
613− background-color: #f1f5f9;
615−@media (prefers-color-scheme: dark) {
617− background-color: #232327;
623− text-decoration: none;
626−@media (prefers-color-scheme: dark) {
634− text-decoration: none;
636−@media (prefers-color-scheme: dark) {
643− background-color: #f1f5f9;
646− font-family: "Roboto Mono", monospace;
649−@media (prefers-color-scheme: dark) {
652− background-color: #232327;
658− background-color: #dfe8f1;
660−@media (prefers-color-scheme: dark) {
663− background-color: #2f2f34;
669− white-space: pre-wrap;
670− word-wrap: break-word;
674− letter-spacing: -0.2em;
678− font-weight: normal;
682− letter-spacing: 0.33em;
687−@media (prefers-color-scheme: dark) {
695− padding: 1em 1.25rem;
696− /* Using rem here to align with lists etc. */
702− background-color: transparent;
709− line-height: inherit;
721− letter-spacing: -0.5px;
723− margin-top: 1.563rem;
724− margin-bottom: 1.25rem;
726−@media (min-width: 52em) {
729− margin-top: 5.96rem;
734− font-weight: normal;
736− margin-top: 3.052rem;
737− margin-bottom: 1rem;
741− font-weight: normal;
743− margin-top: 2.441rem;
744− margin-bottom: 1rem;
748− font-weight: normal;
749− margin-top: 2.441rem;
750− margin-bottom: 1rem;
763− background-color: #cccccc;
765−@media (prefers-color-scheme: dark) {
767− background-color: #43434e;
777− margin-bottom: 1rem;
780− border-bottom: 1px solid #cccccc;
781− border-collapse: collapse;
784− margin-bottom: 1rem;
787−@media (prefers-color-scheme: dark) {
789− border-bottom-color: #43434e;
795− padding: 0.41em 0.51em;
798− border-top: 1px solid #cccccc;
800−@media (prefers-color-scheme: dark) {
802− border-top-color: #43434e;
814− list-style-type: none;
816− margin-bottom: 1rem;
821− padding-left: 1.25em;
827− display: inline-block;
828− margin-left: -1.25em;
831−@media (prefers-color-scheme: dark) {
836−/* Tying this tightly to ul at the moment because it's a slight variation thereof */
837−ul.ul--search li::before {
840− transform: rotate(-45deg);
844− margin-bottom: 1rem;
845− padding-left: 1.25em;
851−/* Section: Components
852− * ========================================================================== */
854− * -------------------------------------------------------------------------- */
858− display: inline-block;
859− background-color: #000000;
860− border-radius: 1.3em;
869−@media (prefers-color-scheme: dark) {
871− background-color: #dedede;
875−.badge.badge--package {
876− background-color: #c4953a;
877− letter-spacing: -0.1em;
879−@media (prefers-color-scheme: dark) {
880− .badge.badge--package {
881− background-color: #d8ac55;
884−.badge.badge--module {
885− background-color: #75B134;
887−/* Component: Declarations
888− * -------------------------------------------------------------------------- */
891− padding-bottom: 0.328em;
892− margin-bottom: 0.262em;
902−.decl__anchor:visited {
907−@media (prefers-color-scheme: dark) {
909− .decl__anchor:visited {
913−.decl__anchor:hover {
916−@media (prefers-color-scheme: dark) {
917− .decl__anchor:hover {
922− background-color: transparent;
924− border-top: 1px solid #cccccc;
925− border-bottom: 1px solid #cccccc;
928−@media (prefers-color-scheme: dark) {
930− border-top-color: #43434e;
931− border-bottom-color: #43434e;
934−.decl__signature code {
937− padding-left: 2.441em;
938− text-indent: -2.441em;
939− white-space: normal;
942− font-family: "Roboto", sans-serif;
944− font-weight: normal;
946−/* See https://stackoverflow.com/a/32162038
947− Content licensed under CC BY-SA 3.0
949−.decl__role_hover[title] {
950− /* Remove line that appears under abbr element */
951− border-bottom: none;
952− text-decoration: none;
953− /* Ensure cursor doesn't change to question mark */
956−.decl__role_nominal::after {
959−.decl__role_phantom::after {
963− border-bottom: 1px solid #cccccc;
965−@media (prefers-color-scheme: dark) {
967− border-bottom-color: #43434e;
970−:target .decl__signature,
971−:target .decl__signature code {
972− /* We want the background to be transparent, even when the parent is a target */
973− background-color: transparent;
975−.decl__body .keyword,
976−.decl__body .syntax {
979−@media (prefers-color-scheme: dark) {
980− .decl__body .keyword,
981− .decl__body .syntax {
985−.decl__child_comments {
987− margin-bottom: 1rem;
989−/* Component: Dependency Link
990− * -------------------------------------------------------------------------- */
992− /* Currently no root styles, but keep the class as a namespace */
995− display: inline-block;
996− margin-right: 0.41em;
1000− display: inline-block;
1004−@media (prefers-color-scheme: dark) {
1005− .deplink__version {
1009−/* Component: Grouped List
1010− * -------------------------------------------------------------------------- */
1012− border-top: 1px solid #cccccc;
1013− margin: 0 0 2.44em 0;
1015−@media (prefers-color-scheme: dark) {
1017− border-top-color: #43434e;
1020−.grouped-list__title {
1024− letter-spacing: 1px;
1025− margin: 0.8em 0 -0.1em 0;
1026− text-transform: uppercase;
1028−@media (prefers-color-scheme: dark) {
1029− .grouped-list__title {
1030− border-top-color: #a0a0a0;
1033−.grouped-list__item {
1036−/* Component: Message
1037− * -------------------------------------------------------------------------- */
1040− border-radius: 5px;
1041− padding: 1em !important;
1043−.message.message--error {
1044− background-color: #fff0f0;
1045− border-color: #c85050;
1047−@media (prefers-color-scheme: dark) {
1048− .message.message--error {
1049− background-color: #6b0e0e;
1050− border-color: #c85050;
1053−.message.message--not-available {
1054− background-color: #f0f096;
1055− border-color: #e3e33d;
1057−@media (prefers-color-scheme: dark) {
1058− .message.message--not-available {
1059− background-color: #56560b;
1060− border-color: #b0b017;
1063−/* Component: Multi Col
1064− * Multiple columns side by side
1065− * -------------------------------------------------------------------------- */
1067− margin-bottom: 2.44em;
1071− padding-right: 1em;
1072− position: relative;
1075−@media (min-width: 38em) and (max-width: 51.999999em) {
1080− .multi-col__col:nth-child(2n+3) {
1084−@media (min-width: 52em) {
1089− .multi-col__col:nth-child(3n+4) {
1093−/* Component: Page Title
1094− * -------------------------------------------------------------------------- */
1096− margin: 4.77em 0 1.56em;
1097− padding-bottom: 1.25em;
1098− position: relative;
1100−.page-title__title {
1101− margin: 0 0 0 -0.05em;
1102− /* Visually align on left edge */
1104−.page-title__label {
1105− position: relative;
1109− letter-spacing: 1px;
1110− margin-bottom: -0.8em;
1111− text-transform: uppercase;
1114−@media (prefers-color-scheme: dark) {
1115− .page-title__label {
1119−/* Component: Top Banner
1120− * -------------------------------------------------------------------------- */
1122− background-color: #1d222d;
1124− font-weight: normal;
1126−@media (prefers-color-scheme: dark) {
1128− background-color: #1d222d;
1133−.top-banner__logo:visited {
1141−@media (prefers-color-scheme: dark) {
1143− .top-banner__logo:visited {
1147−.top-banner__logo:hover {
1149− text-decoration: none;
1152− margin-bottom: 1.25em;
1154−.top-banner__form input {
1155− border: 1px solid #1d222d;
1156− border-radius: 3px;
1157− background-color: #ffffff;
1161− padding: 0.21em 0.512em;
1164−@media (prefers-color-scheme: dark) {
1165− .top-banner__form input {
1166− border-color: #1d222d;
1167− background-color: #141417;
1171−.top-banner__actions {
1175−.top-banner__actions__item {
1176− display: inline-block;
1179− padding-left: 1.25em;
1181−.top-banner__actions__item:first-child {
1184−.top-banner__actions__item a,
1185−.top-banner__actions__item a:visited {
1188−@media (prefers-color-scheme: dark) {
1189− .top-banner__actions__item a,
1190− .top-banner__actions__item a:visited {
1194−.top-banner__actions__item a:hover {
1197−@media (prefers-color-scheme: dark) {
1198− .top-banner__actions__item a:hover {
1202−@media (min-width: 38em) {
1203− .top-banner__logo {
1207− .top-banner__form {
1213− .top-banner__actions {
1218−/* Component: Search Results
1219− * -------------------------------------------------------------------------- */
1220−.result.result--empty {
1225− margin-bottom: 0.2rem;
1228− margin-left: -0.1em;
1230−.result__body > *:first-child {
1231− margin-top: 0!important;
1233−.result__body > *:last-child {
1234− margin-bottom: 0!important;
1236−.result__signature {
1237− background-color: transparent;
1239− border-top: 1px solid #cccccc;
1240− border-bottom: 1px solid #cccccc;
1241− padding: 0.328em 0;
1243−@media (prefers-color-scheme: dark) {
1244− .result__signature {
1245− border-top-color: #43434e;
1246− border-bottom-color: #43434e;
1249−.result__signature code {
1251− padding-left: 2.441em;
1252− text-indent: -2.441em;
1253− white-space: normal;
1256− margin-top: 0.2rem;
1258−.result__actions__item {
1261−.result__actions__item + .result__actions__item {
1262− margin-left: 0.65em;
1264−/* Component: Version Selector
1265− * -------------------------------------------------------------------------- */
1267− margin-bottom: 0.8em;
1269−@media (min-width: 38em) {
1270− .version-selector {
1271− position: absolute;
1278− * These styles should be cleaned up
1279− * ========================================================================== */
1280−/* Help paragraphs */
1285− /* FIXME: target with class */
1288−/* Section: Markdown
1289− * Github rendered README
1290− * ========================================================================== */
1293− Useful for narrow screens, such as mobiles. Documentation often contains URLs
1294− which would otherwise force the page to become wider, and force creation of
1295− horizontal scrollbars. Yuck.
1297− word-wrap: break-word;
1299−.markdown-body > *:first-child {
1300− margin-top: 0 !important;
1302−.markdown-body > *:last-child {
1303− margin-bottom: 0 !important;
1305−.markdown-body a:not([href]) {
1307− text-decoration: none;
1309−.markdown-body blockquote {
1313− border-left: 0.25em solid #ddd;
1315−@media (prefers-color-scheme: dark) {
1316− .markdown-body blockquote {
1317− border-left-color: #444;
1320−.markdown-body blockquote > :first-child {
1323−.markdown-body blockquote > :last-child {
1326−.markdown-body .anchor {
1327− /* We hide the anchor because the link doesn't point to a valid location */
1330−.markdown-body .pl-k {
1334−@media (prefers-color-scheme: dark) {
1335− .markdown-body .pl-k {
1339−.markdown-body .pl-c1,
1340−.markdown-body .pl-en {
1341− /* Not really sure what this is */
1344−.markdown-body .pl-s {
1345− /* String literals */
1348−.markdown-body .pl-cce {
1349− /* String literal escape sequences */
1352−.markdown-body .pl-smi {
1353− /* type variables? */
1356−</style></head><body><div class="everything-except-footer"><div class="top-banner clearfix"><div class="container clearfix"><div style="float: left; font-size: 2.44em; font-weight: 300; line-height: 90px; margin: 0">PureScript API documentation</div><div class="top-banner__actions"><div class="top-banner__actions__item"><a href="index.html">Index</a></div></div></div></div><main class="container clearfix" role="main"><div class="page-title clearfix"><div class="page-title__label">Module</div><h1 class="page-title__title">Control.Alt</h1></div><div class="col col--main"><div class="decl" id="t:Alt"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Alt">#</a><span>Alt</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Alt.html#t:Alt" title="Control.Alt.Alt"><span class="ctor">Alt</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <span class="syntax">(</span><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> f<span class="syntax">)</span> <span class="syntax"><=</span> <a href="Control.Alt.html#t:Alt" title="Control.Alt.Alt"><span class="ctor">Alt</span></a> f <span class="keyword">where</span></code></pre><p>The <code>Alt</code> type class identifies an associative operation on a type
1357−constructor. It is similar to <code>Semigroup</code>, except that it applies to
1358−types of kind <code>* -> *</code>, like <code>Array</code> or <code>List</code>, rather than concrete types
1359−<code>String</code> or <code>Number</code>.</p>
1360−<p><code>Alt</code> instances are required to satisfy the following laws:</p>
1362−<li>Associativity: <code>(x <|> y) <|> z == x <|> (y <|> z)</code></li>
1363−<li>Distributivity: <code>f <$> (x <|> y) == (f <$> x) <|> (f <$> y)</code></li>
1365−<p>For example, the <code>Array</code> (<code>[]</code>) type is an instance of <code>Alt</code>, where
1366−<code>(<|>)</code> is defined to be concatenation.</p>
1367−<p>A common use case is to select the first "valid" item, or, if all items
1368−are "invalid", the last "invalid" item.</p>
1370−<pre class="purescript"><code>import Control.Alt ((<|>))
1371−import Data.Maybe (Maybe(..)
1372−import Data.Either (Either(..))
1374−Nothing <|> Just 1 <|> Just 2 == Just 1
1375−Left "err" <|> Right 1 <|> Right 2 == Right 1
1376−Left "err 1" <|> Left "err 2" <|> Left "err 3" == Left "err 3"
1378−<h4>Members</h4><ul><li id="v:alt"><code><a href="Control.Alt.html#v:alt" title="Control.Alt.alt"><span class="ident">alt</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a<span class="syntax">.</span> f a <span class="syntax">-></span> f a <span class="syntax">-></span> f a</code></li></ul><h4>Instances</h4><ul><li id="v:altArray"><code><a href="Control.Alt.html#t:Alt" title="Control.Alt.Alt"><span class="ctor">Alt</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li></ul></div></div><div class="decl" id="v:(<|>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<|>)">#</a><span>(<|>)</span> </h3><div class="decl__body"><p>Operator alias for Control.Alt.alt <em>(right-associative / precedence 3)</em></p></div></div><h2 class="re-exports">Re-exports from <a href="Data.Functor.html">Data.Functor</a></h2><div class="decl" id="t:Functor"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Functor">#</a><span>Functor</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Alt.html#t:Functor" title="Control.Alt.Functor"><span class="ctor">Functor</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <a href="Control.Alt.html#t:Functor" title="Control.Alt.Functor"><span class="ctor">Functor</span></a> f <span class="keyword">where</span></code></pre><p>A <code>Functor</code> is a type constructor which supports a mapping operation
1379−<code>map</code>.</p>
1380−<p><code>map</code> can be used to turn functions <code>a -> b</code> into functions
1381−<code>f a -> f b</code> whose argument and return types use the type constructor <code>f</code>
1382−to represent some computational context.</p>
1383−<p>Instances must satisfy the following laws:</p>
1385−<li>Identity: <code>map identity = identity</code></li>
1386−<li>Composition: <code>map (f <<< g) = map f <<< map g</code></li>
1388−<h4>Members</h4><ul><li id="v:map"><code><a href="Control.Alt.html#v:map" title="Control.Alt.map"><span class="ident">map</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b<span class="syntax">.</span> <span class="syntax">(</span>a <span class="syntax">-></span> b<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b</code></li></ul><h4>Instances</h4><ul><li id="v:functorFn"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <span class="syntax">(</span><a href="Prim.html#t:Function" title="Prim.Function"><span class="ctor">Function</span></a> r<span class="syntax">)</span></code></li><li id="v:functorArray"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li><li id="v:functorProxy"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <a href="Type.Proxy.html#t:Proxy" title="Type.Proxy.Proxy"><span class="ctor">Proxy</span></a></code></li></ul></div></div><div class="decl" id="v:void"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:void">#</a><span>void</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Alt.html#v:void" title="Control.Alt.void"><span class="ident">void</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>f <span class="syntax"></span>a<span class="syntax">.</span> <a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> f <span class="syntax">=></span> f a <span class="syntax">-></span> f <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a></code></pre><p>The <code>void</code> function is used to ignore the type wrapped by a
1389−<code>Functor</code>, replacing it with <code>Unit</code> and keeping only the type
1390−information provided by the type constructor itself.</p>
1391−<p><code>void</code> is often useful when using <code>do</code> notation to change the return type
1392−of a monadic computation:</p>
1393−<pre class="purescript"><code>main = forE 1 10 \n -> void do
1397−</div></div><div class="decl" id="v:(<$>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<$>)">#</a><span>(<$>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.map <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(<$)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<$)">#</a><span>(<$)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.voidRight <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(<#>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<#>)">#</a><span>(<#>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.mapFlipped <em>(left-associative / precedence 1)</em></p></div></div><div class="decl" id="v:($>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:($>)">#</a><span>($>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.voidLeft <em>(left-associative / precedence 4)</em></p></div></div></div><div class="col col--aside"><h3>Modules</h3><ul><li><a href="Ansi.Codes.html">Ansi.Codes</a></li><li><a href="Ansi.Output.html">Ansi.Output</a></li><li><a href="Bolson.Control.html">Bolson.Control</a></li><li><a href="Bolson.Core.html">Bolson.Core</a></li><li><a href="Control.Alt.html">Control.Alt</a></li><li><a href="Control.Alternative.html">Control.Alternative</a></li><li><a href="Control.Applicative.html">Control.Applicative</a></li><li><a href="Control.Apply.html">Control.Apply</a></li><li><a href="Control.Biapplicative.html">Control.Biapplicative</a></li><li><a href="Control.Biapply.html">Control.Biapply</a></li><li><a href="Control.Bind.html">Control.Bind</a></li><li><a href="Control.Category.html">Control.Category</a></li><li><a href="Control.Comonad.html">Control.Comonad</a></li><li><a href="Control.Comonad.Cofree.html">Control.Comonad.Cofree</a></li><li><a href="Control.Comonad.Cofree.Class.html">Control.Comonad.Cofree.Class</a></li><li><a href="Control.Comonad.Env.html">Control.Comonad.Env</a></li><li><a href="Control.Comonad.Env.Class.html">Control.Comonad.Env.Class</a></li><li><a href="Control.Comonad.Env.Trans.html">Control.Comonad.Env.Trans</a></li><li><a href="Control.Comonad.Store.html">Control.Comonad.Store</a></li><li><a href="Control.Comonad.Store.Class.html">Control.Comonad.Store.Class</a></li><li><a href="Control.Comonad.Store.Trans.html">Control.Comonad.Store.Trans</a></li><li><a href="Control.Comonad.Traced.html">Control.Comonad.Traced</a></li><li><a href="Control.Comonad.Traced.Class.html">Control.Comonad.Traced.Class</a></li><li><a href="Control.Comonad.Traced.Trans.html">Control.Comonad.Traced.Trans</a></li><li><a href="Control.Comonad.Trans.Class.html">Control.Comonad.Trans.Class</a></li><li><a href="Control.Extend.html">Control.Extend</a></li><li><a href="Control.Lazy.html">Control.Lazy</a></li><li><a href="Control.Monad.html">Control.Monad</a></li><li><a href="Control.Monad.Cont.html">Control.Monad.Cont</a></li><li><a href="Control.Monad.Cont.Class.html">Control.Monad.Cont.Class</a></li><li><a href="Control.Monad.Cont.Trans.html">Control.Monad.Cont.Trans</a></li><li><a href="Control.Monad.Error.Class.html">Control.Monad.Error.Class</a></li><li><a href="Control.Monad.Except.html">Control.Monad.Except</a></li><li><a href="Control.Monad.Except.Trans.html">Control.Monad.Except.Trans</a></li><li><a href="Control.Monad.Fork.Class.html">Control.Monad.Fork.Class</a></li><li><a href="Control.Monad.Free.html">Control.Monad.Free</a></li><li><a href="Control.Monad.Free.Class.html">Control.Monad.Free.Class</a></li><li><a href="Control.Monad.Gen.html">Control.Monad.Gen</a></li><li><a href="Control.Monad.Gen.Class.html">Control.Monad.Gen.Class</a></li><li><a href="Control.Monad.Gen.Common.html">Control.Monad.Gen.Common</a></li><li><a href="Control.Monad.Identity.Trans.html">Control.Monad.Identity.Trans</a></li><li><a href="Control.Monad.List.Trans.html">Control.Monad.List.Trans</a></li><li><a href="Control.Monad.Maybe.Trans.html">Control.Monad.Maybe.Trans</a></li><li><a href="Control.Monad.Morph.html">Control.Monad.Morph</a></li><li><a href="Control.Monad.RWS.html">Control.Monad.RWS</a></li><li><a href="Control.Monad.RWS.Trans.html">Control.Monad.RWS.Trans</a></li><li><a href="Control.Monad.Reader.html">Control.Monad.Reader</a></li><li><a href="Control.Monad.Reader.Class.html">Control.Monad.Reader.Class</a></li><li><a href="Control.Monad.Reader.Trans.html">Control.Monad.Reader.Trans</a></li><li><a href="Control.Monad.Rec.Class.html">Control.Monad.Rec.Class</a></li><li><a href="Control.Monad.ST.html">Control.Monad.ST</a></li><li><a href="Control.Monad.ST.Class.html">Control.Monad.ST.Class</a></li><li><a href="Control.Monad.ST.Global.html">Control.Monad.ST.Global</a></li><li><a href="Control.Monad.ST.Internal.html">Control.Monad.ST.Internal</a></li><li><a href="Control.Monad.ST.Ref.html">Control.Monad.ST.Ref</a></li><li><a href="Control.Monad.ST.Uncurried.html">Control.Monad.ST.Uncurried</a></li><li><a href="Control.Monad.State.html">Control.Monad.State</a></li><li><a href="Control.Monad.State.Class.html">Control.Monad.State.Class</a></li><li><a href="Control.Monad.State.Trans.html">Control.Monad.State.Trans</a></li><li><a href="Control.Monad.Trampoline.html">Control.Monad.Trampoline</a></li><li><a href="Control.Monad.Trans.Class.html">Control.Monad.Trans.Class</a></li><li><a href="Control.Monad.Writer.html">Control.Monad.Writer</a></li><li><a href="Control.Monad.Writer.Class.html">Control.Monad.Writer.Class</a></li><li><a href="Control.Monad.Writer.Trans.html">Control.Monad.Writer.Trans</a></li><li><a href="Control.MonadPlus.html">Control.MonadPlus</a></li><li><a href="Control.Parallel.html">Control.Parallel</a></li><li><a href="Control.Parallel.Class.html">Control.Parallel.Class</a></li><li><a href="Control.Plus.html">Control.Plus</a></li><li><a href="Control.Semigroupoid.html">Control.Semigroupoid</a></li><li><a href="Data.Array.html">Data.Array</a></li><li><a href="Data.Array.NonEmpty.html">Data.Array.NonEmpty</a></li><li><a href="Data.Array.NonEmpty.Internal.html">Data.Array.NonEmpty.Internal</a></li><li><a href="Data.Array.Partial.html">Data.Array.Partial</a></li><li><a href="Data.Array.ST.html">Data.Array.ST</a></li><li><a href="Data.Array.ST.Iterator.html">Data.Array.ST.Iterator</a></li><li><a href="Data.Array.ST.Partial.html">Data.Array.ST.Partial</a></li><li><a href="Data.ArrayBuffer.Types.html">Data.ArrayBuffer.Types</a></li><li><a href="Data.Bifoldable.html">Data.Bifoldable</a></li><li><a href="Data.Bifunctor.html">Data.Bifunctor</a></li><li><a href="Data.Bifunctor.Join.html">Data.Bifunctor.Join</a></li><li><a href="Data.Bitraversable.html">Data.Bitraversable</a></li><li><a href="Data.Boolean.html">Data.Boolean</a></li><li><a href="Data.BooleanAlgebra.html">Data.BooleanAlgebra</a></li><li><a href="Data.Bounded.html">Data.Bounded</a></li><li><a href="Data.Bounded.Generic.html">Data.Bounded.Generic</a></li><li><a href="Data.CatList.html">Data.CatList</a></li><li><a href="Data.CatQueue.html">Data.CatQueue</a></li><li><a href="Data.Char.html">Data.Char</a></li><li><a href="Data.Char.Gen.html">Data.Char.Gen</a></li><li><a href="Data.CommutativeRing.html">Data.CommutativeRing</a></li><li><a href="Data.Compactable.html">Data.Compactable</a></li><li><a href="Data.Comparison.html">Data.Comparison</a></li><li><a href="Data.Const.html">Data.Const</a></li><li><a href="Data.Coyoneda.html">Data.Coyoneda</a></li><li><a href="Data.Date.html">Data.Date</a></li><li><a href="Data.Date.Component.html">Data.Date.Component</a></li><li><a href="Data.Date.Component.Gen.html">Data.Date.Component.Gen</a></li><li><a href="Data.Date.Gen.html">Data.Date.Gen</a></li><li><a href="Data.DateTime.html">Data.DateTime</a></li><li><a href="Data.DateTime.Gen.html">Data.DateTime.Gen</a></li><li><a href="Data.DateTime.Instant.html">Data.DateTime.Instant</a></li><li><a href="Data.Decidable.html">Data.Decidable</a></li><li><a href="Data.Decide.html">Data.Decide</a></li><li><a href="Data.Distributive.html">Data.Distributive</a></li><li><a href="Data.Divide.html">Data.Divide</a></li><li><a href="Data.Divisible.html">Data.Divisible</a></li><li><a href="Data.DivisionRing.html">Data.DivisionRing</a></li><li><a href="Data.Either.html">Data.Either</a></li><li><a href="Data.Either.Inject.html">Data.Either.Inject</a></li><li><a href="Data.Either.Nested.html">Data.Either.Nested</a></li><li><a href="Data.Enum.html">Data.Enum</a></li><li><a href="Data.Enum.Gen.html">Data.Enum.Gen</a></li><li><a href="Data.Enum.Generic.html">Data.Enum.Generic</a></li><li><a href="Data.Eq.html">Data.Eq</a></li><li><a href="Data.Eq.Generic.html">Data.Eq.Generic</a></li><li><a href="Data.Equivalence.html">Data.Equivalence</a></li><li><a href="Data.EuclideanRing.html">Data.EuclideanRing</a></li><li><a href="Data.Exists.html">Data.Exists</a></li><li><a href="Data.FastVect.Common.html">Data.FastVect.Common</a></li><li><a href="Data.FastVect.Common.Matrix.html">Data.FastVect.Common.Matrix</a></li><li><a href="Data.FastVect.FastVect.html">Data.FastVect.FastVect</a></li><li><a href="Data.FastVect.FastVect.Matrix.html">Data.FastVect.FastVect.Matrix</a></li><li><a href="Data.FastVect.MinLenVect.html">Data.FastVect.MinLenVect</a></li><li><a href="Data.FastVect.Sparse.Read.html">Data.FastVect.Sparse.Read</a></li><li><a href="Data.FastVect.Sparse.Write.html">Data.FastVect.Sparse.Write</a></li><li><a href="Data.Field.html">Data.Field</a></li><li><a href="Data.Filterable.html">Data.Filterable</a></li><li><a href="Data.Foldable.html">Data.Foldable</a></li><li><a href="Data.FoldableWithIndex.html">Data.FoldableWithIndex</a></li><li><a href="Data.Function.html">Data.Function</a></li><li><a href="Data.Function.Uncurried.html">Data.Function.Uncurried</a></li><li><a href="Data.Functor.html">Data.Functor</a></li><li><a href="Data.Functor.App.html">Data.Functor.App</a></li><li><a href="Data.Functor.Clown.html">Data.Functor.Clown</a></li><li><a href="Data.Functor.Compose.html">Data.Functor.Compose</a></li><li><a href="Data.Functor.Contravariant.html">Data.Functor.Contravariant</a></li><li><a href="Data.Functor.Coproduct.html">Data.Functor.Coproduct</a></li><li><a href="Data.Functor.Coproduct.Inject.html">Data.Functor.Coproduct.Inject</a></li><li><a href="Data.Functor.Coproduct.Nested.html">Data.Functor.Coproduct.Nested</a></li><li><a href="Data.Functor.Costar.html">Data.Functor.Costar</a></li><li><a href="Data.Functor.Flip.html">Data.Functor.Flip</a></li><li><a href="Data.Functor.Invariant.html">Data.Functor.Invariant</a></li><li><a href="Data.Functor.Joker.html">Data.Functor.Joker</a></li><li><a href="Data.Functor.Product.html">Data.Functor.Product</a></li><li><a href="Data.Functor.Product.Nested.html">Data.Functor.Product.Nested</a></li><li><a href="Data.Functor.Product2.html">Data.Functor.Product2</a></li><li><a href="Data.Functor.Variant.html">Data.Functor.Variant</a></li><li><a href="Data.FunctorWithIndex.html">Data.FunctorWithIndex</a></li><li><a href="Data.Generic.Rep.html">Data.Generic.Rep</a></li><li><a href="Data.HeytingAlgebra.html">Data.HeytingAlgebra</a></li><li><a href="Data.HeytingAlgebra.Generic.html">Data.HeytingAlgebra.Generic</a></li><li><a href="Data.Identity.html">Data.Identity</a></li><li><a href="Data.Int.html">Data.Int</a></li><li><a href="Data.Int.Bits.html">Data.Int.Bits</a></li><li><a href="Data.Interval.html">Data.Interval</a></li><li><a href="Data.Interval.Duration.html">Data.Interval.Duration</a></li><li><a href="Data.Interval.Duration.Iso.html">Data.Interval.Duration.Iso</a></li><li><a href="Data.JSDate.html">Data.JSDate</a></li><li><a href="Data.Lazy.html">Data.Lazy</a></li><li><a href="Data.List.html">Data.List</a></li><li><a href="Data.List.Internal.html">Data.List.Internal</a></li><li><a href="Data.List.Lazy.html">Data.List.Lazy</a></li><li><a href="Data.List.Lazy.NonEmpty.html">Data.List.Lazy.NonEmpty</a></li><li><a href="Data.List.Lazy.Types.html">Data.List.Lazy.Types</a></li><li><a href="Data.List.NonEmpty.html">Data.List.NonEmpty</a></li><li><a href="Data.List.Partial.html">Data.List.Partial</a></li><li><a href="Data.List.Types.html">Data.List.Types</a></li><li><a href="Data.List.ZipList.html">Data.List.ZipList</a></li><li><a href="Data.Map.html">Data.Map</a></li><li><a href="Data.Map.Gen.html">Data.Map.Gen</a></li><li><a href="Data.Map.Internal.html">Data.Map.Internal</a></li><li><a href="Data.Maybe.html">Data.Maybe</a></li><li><a href="Data.Maybe.First.html">Data.Maybe.First</a></li><li><a href="Data.Maybe.Last.html">Data.Maybe.Last</a></li><li><a href="Data.MediaType.html">Data.MediaType</a></li><li><a href="Data.MediaType.Common.html">Data.MediaType.Common</a></li><li><a href="Data.Monoid.html">Data.Monoid</a></li><li><a href="Data.Monoid.Additive.html">Data.Monoid.Additive</a></li><li><a href="Data.Monoid.Alternate.html">Data.Monoid.Alternate</a></li><li><a href="Data.Monoid.Conj.html">Data.Monoid.Conj</a></li><li><a href="Data.Monoid.Disj.html">Data.Monoid.Disj</a></li><li><a href="Data.Monoid.Dual.html">Data.Monoid.Dual</a></li><li><a href="Data.Monoid.Endo.html">Data.Monoid.Endo</a></li><li><a href="Data.Monoid.Generic.html">Data.Monoid.Generic</a></li><li><a href="Data.Monoid.Multiplicative.html">Data.Monoid.Multiplicative</a></li><li><a href="Data.NaturalTransformation.html">Data.NaturalTransformation</a></li><li><a href="Data.Newtype.html">Data.Newtype</a></li><li><a href="Data.NonEmpty.html">Data.NonEmpty</a></li><li><a href="Data.Nullable.html">Data.Nullable</a></li><li><a href="Data.Number.html">Data.Number</a></li><li><a href="Data.Number.Approximate.html">Data.Number.Approximate</a></li><li><a href="Data.Number.Format.html">Data.Number.Format</a></li><li><a href="Data.Op.html">Data.Op</a></li><li><a href="Data.Ord.html">Data.Ord</a></li><li><a href="Data.Ord.Down.html">Data.Ord.Down</a></li><li><a href="Data.Ord.Generic.html">Data.Ord.Generic</a></li><li><a href="Data.Ord.Max.html">Data.Ord.Max</a></li><li><a href="Data.Ord.Min.html">Data.Ord.Min</a></li><li><a href="Data.Ordering.html">Data.Ordering</a></li><li><a href="Data.Posix.html">Data.Posix</a></li><li><a href="Data.Posix.Signal.html">Data.Posix.Signal</a></li><li><a href="Data.Predicate.html">Data.Predicate</a></li><li><a href="Data.Profunctor.html">Data.Profunctor</a></li><li><a href="Data.Profunctor.Choice.html">Data.Profunctor.Choice</a></li><li><a href="Data.Profunctor.Closed.html">Data.Profunctor.Closed</a></li><li><a href="Data.Profunctor.Cochoice.html">Data.Profunctor.Cochoice</a></li><li><a href="Data.Profunctor.Costrong.html">Data.Profunctor.Costrong</a></li><li><a href="Data.Profunctor.Join.html">Data.Profunctor.Join</a></li><li><a href="Data.Profunctor.Split.html">Data.Profunctor.Split</a></li><li><a href="Data.Profunctor.Star.html">Data.Profunctor.Star</a></li><li><a href="Data.Profunctor.Strong.html">Data.Profunctor.Strong</a></li><li><a href="Data.Reflectable.html">Data.Reflectable</a></li><li><a href="Data.Ring.html">Data.Ring</a></li><li><a href="Data.Ring.Generic.html">Data.Ring.Generic</a></li><li><a href="Data.Semigroup.html">Data.Semigroup</a></li><li><a href="Data.Semigroup.First.html">Data.Semigroup.First</a></li><li><a href="Data.Semigroup.Foldable.html">Data.Semigroup.Foldable</a></li><li><a href="Data.Semigroup.Generic.html">Data.Semigroup.Generic</a></li><li><a href="Data.Semigroup.Last.html">Data.Semigroup.Last</a></li><li><a href="Data.Semigroup.Traversable.html">Data.Semigroup.Traversable</a></li><li><a href="Data.Semiring.html">Data.Semiring</a></li><li><a href="Data.Semiring.Generic.html">Data.Semiring.Generic</a></li><li><a href="Data.Set.html">Data.Set</a></li><li><a href="Data.Set.NonEmpty.html">Data.Set.NonEmpty</a></li><li><a href="Data.Show.html">Data.Show</a></li><li><a href="Data.Show.Generic.html">Data.Show.Generic</a></li><li><a href="Data.String.html">Data.String</a></li><li><a href="Data.String.CaseInsensitive.html">Data.String.CaseInsensitive</a></li><li><a href="Data.String.CodePoints.html">Data.String.CodePoints</a></li><li><a href="Data.String.CodeUnits.html">Data.String.CodeUnits</a></li><li><a href="Data.String.Common.html">Data.String.Common</a></li><li><a href="Data.String.Gen.html">Data.String.Gen</a></li><li><a href="Data.String.NonEmpty.html">Data.String.NonEmpty</a></li><li><a href="Data.String.NonEmpty.CaseInsensitive.html">Data.String.NonEmpty.CaseInsensitive</a></li><li><a href="Data.String.NonEmpty.CodePoints.html">Data.String.NonEmpty.CodePoints</a></li><li><a href="Data.String.NonEmpty.CodeUnits.html">Data.String.NonEmpty.CodeUnits</a></li><li><a href="Data.String.NonEmpty.Internal.html">Data.String.NonEmpty.Internal</a></li><li><a href="Data.String.Pattern.html">Data.String.Pattern</a></li><li><a href="Data.String.Regex.html">Data.String.Regex</a></li><li><a href="Data.String.Regex.Flags.html">Data.String.Regex.Flags</a></li><li><a href="Data.String.Regex.Unsafe.html">Data.String.Regex.Unsafe</a></li><li><a href="Data.String.Unsafe.html">Data.String.Unsafe</a></li><li><a href="Data.Symbol.html">Data.Symbol</a></li><li><a href="Data.Time.html">Data.Time</a></li><li><a href="Data.Time.Component.html">Data.Time.Component</a></li><li><a href="Data.Time.Component.Gen.html">Data.Time.Component.Gen</a></li><li><a href="Data.Time.Duration.html">Data.Time.Duration</a></li><li><a href="Data.Time.Duration.Gen.html">Data.Time.Duration.Gen</a></li><li><a href="Data.Time.Gen.html">Data.Time.Gen</a></li><li><a href="Data.Traversable.html">Data.Traversable</a></li><li><a href="Data.Traversable.Accum.html">Data.Traversable.Accum</a></li><li><a href="Data.Traversable.Accum.Internal.html">Data.Traversable.Accum.Internal</a></li><li><a href="Data.TraversableWithIndex.html">Data.TraversableWithIndex</a></li><li><a href="Data.Tuple.html">Data.Tuple</a></li><li><a href="Data.Tuple.Nested.html">Data.Tuple.Nested</a></li><li><a href="Data.Unfoldable.html">Data.Unfoldable</a></li><li><a href="Data.Unfoldable1.html">Data.Unfoldable1</a></li><li><a href="Data.Unit.html">Data.Unit</a></li><li><a href="Data.Variant.html">Data.Variant</a></li><li><a href="Data.Variant.Internal.html">Data.Variant.Internal</a></li><li><a href="Data.Void.html">Data.Void</a></li><li><a href="Data.Witherable.html">Data.Witherable</a></li><li><a href="Data.Yoneda.html">Data.Yoneda</a></li><li><a href="Effect.html">Effect</a></li><li><a href="Effect.AVar.html">Effect.AVar</a></li><li><a href="Effect.Aff.html">Effect.Aff</a></li><li><a href="Effect.Aff.AVar.html">Effect.Aff.AVar</a></li><li><a href="Effect.Aff.Class.html">Effect.Aff.Class</a></li><li><a href="Effect.Aff.Compat.html">Effect.Aff.Compat</a></li><li><a href="Effect.Class.html">Effect.Class</a></li><li><a href="Effect.Class.Console.html">Effect.Class.Console</a></li><li><a href="Effect.Console.html">Effect.Console</a></li><li><a href="Effect.Exception.html">Effect.Exception</a></li><li><a href="Effect.Exception.Unsafe.html">Effect.Exception.Unsafe</a></li><li><a href="Effect.Now.html">Effect.Now</a></li><li><a href="Effect.Ref.html">Effect.Ref</a></li><li><a href="Effect.Timer.html">Effect.Timer</a></li><li><a href="Effect.Uncurried.html">Effect.Uncurried</a></li><li><a href="Effect.Unsafe.html">Effect.Unsafe</a></li><li><a href="FRP.Behavior.html">FRP.Behavior</a></li><li><a href="FRP.Behavior.Keyboard.html">FRP.Behavior.Keyboard</a></li><li><a href="FRP.Behavior.Mouse.html">FRP.Behavior.Mouse</a></li><li><a href="FRP.Behavior.Time.html">FRP.Behavior.Time</a></li><li><a href="FRP.Event.html">FRP.Event</a></li><li><a href="FRP.Event.AnimationFrame.html">FRP.Event.AnimationFrame</a></li><li><a href="FRP.Event.Class.html">FRP.Event.Class</a></li><li><a href="FRP.Event.Keyboard.html">FRP.Event.Keyboard</a></li><li><a href="FRP.Event.Mouse.html">FRP.Event.Mouse</a></li><li><a href="FRP.Event.Time.html">FRP.Event.Time</a></li><li><a href="FRP.Event.VBus.html">FRP.Event.VBus</a></li><li><a href="Foreign.html">Foreign</a></li><li><a href="Foreign.Index.html">Foreign.Index</a></li><li><a href="Foreign.Keys.html">Foreign.Keys</a></li><li><a href="Foreign.Object.html">Foreign.Object</a></li><li><a href="Foreign.Object.Gen.html">Foreign.Object.Gen</a></li><li><a href="Foreign.Object.ST.html">Foreign.Object.ST</a></li><li><a href="Foreign.Object.ST.Unsafe.html">Foreign.Object.ST.Unsafe</a></li><li><a href="Foreign.Object.Unsafe.html">Foreign.Object.Unsafe</a></li><li><a href="Heterogeneous.Folding.html">Heterogeneous.Folding</a></li><li><a href="Heterogeneous.Mapping.html">Heterogeneous.Mapping</a></li><li><a href="Node.Buffer.html">Node.Buffer</a></li><li><a href="Node.Buffer.Class.html">Node.Buffer.Class</a></li><li><a href="Node.Buffer.Constants.html">Node.Buffer.Constants</a></li><li><a href="Node.Buffer.Immutable.html">Node.Buffer.Immutable</a></li><li><a href="Node.Buffer.ST.html">Node.Buffer.ST</a></li><li><a href="Node.Buffer.Types.html">Node.Buffer.Types</a></li><li><a href="Node.Encoding.html">Node.Encoding</a></li><li><a href="Node.EventEmitter.html">Node.EventEmitter</a></li><li><a href="Node.EventEmitter.UtilTypes.html">Node.EventEmitter.UtilTypes</a></li><li><a href="Node.FS.html">Node.FS</a></li><li><a href="Node.FS.Aff.html">Node.FS.Aff</a></li><li><a href="Node.FS.Async.html">Node.FS.Async</a></li><li><a href="Node.FS.Constants.html">Node.FS.Constants</a></li><li><a href="Node.FS.Perms.html">Node.FS.Perms</a></li><li><a href="Node.FS.Stats.html">Node.FS.Stats</a></li><li><a href="Node.FS.Stream.html">Node.FS.Stream</a></li><li><a href="Node.FS.Sync.html">Node.FS.Sync</a></li><li><a href="Node.Path.html">Node.Path</a></li><li><a href="Node.Platform.html">Node.Platform</a></li><li><a href="Node.Process.html">Node.Process</a></li><li><a href="Node.Stream.html">Node.Stream</a></li><li><a href="Node.Stream.Aff.html">Node.Stream.Aff</a></li><li><a href="Node.Symbol.html">Node.Symbol</a></li><li><a href="Partial.html">Partial</a></li><li><a href="Partial.Unsafe.html">Partial.Unsafe</a></li><li><a href="Performance.Minibench.html">Performance.Minibench</a></li><li><a href="Pipes.html">Pipes</a></li><li><a href="Pipes.Core.html">Pipes.Core</a></li><li><a href="Pipes.Internal.html">Pipes.Internal</a></li><li><a href="Pipes.ListT.html">Pipes.ListT</a></li><li><a href="Pipes.Prelude.html">Pipes.Prelude</a></li><li><a href="Prelude.html">Prelude</a></li><li><a href="Prim.html">Prim</a></li><li><a href="Prim.Boolean.html">Prim.Boolean</a></li><li><a href="Prim.Coerce.html">Prim.Coerce</a></li><li><a href="Prim.Int.html">Prim.Int</a></li><li><a href="Prim.Ordering.html">Prim.Ordering</a></li><li><a href="Prim.Row.html">Prim.Row</a></li><li><a href="Prim.RowList.html">Prim.RowList</a></li><li><a href="Prim.Symbol.html">Prim.Symbol</a></li><li><a href="Prim.TypeError.html">Prim.TypeError</a></li><li><a href="Record.html">Record</a></li><li><a href="Record.Builder.html">Record.Builder</a></li><li><a href="Record.Studio.html">Record.Studio</a></li><li><a href="Record.Studio.Keys.html">Record.Studio.Keys</a></li><li><a href="Record.Studio.Map.html">Record.Studio.Map</a></li><li><a href="Record.Studio.MapKind.html">Record.Studio.MapKind</a></li><li><a href="Record.Studio.MapUniform.html">Record.Studio.MapUniform</a></li><li><a href="Record.Studio.Merge.html">Record.Studio.Merge</a></li><li><a href="Record.Studio.SameKeys.html">Record.Studio.SameKeys</a></li><li><a href="Record.Studio.Sequence.html">Record.Studio.Sequence</a></li><li><a href="Record.Studio.Shrink.html">Record.Studio.Shrink</a></li><li><a href="Record.Studio.SingletonRecord.html">Record.Studio.SingletonRecord</a></li><li><a href="Record.Unsafe.html">Record.Unsafe</a></li><li><a href="Record.Unsafe.Union.html">Record.Unsafe.Union</a></li><li><a href="Safe.Coerce.html">Safe.Coerce</a></li><li><a href="Spago.Generated.BuildInfo.html">Spago.Generated.BuildInfo</a></li><li><a href="Test.Spec.html">Test.Spec</a></li><li><a href="Test.Spec.Assertions.html">Test.Spec.Assertions</a></li><li><a href="Test.Spec.Assertions.String.html">Test.Spec.Assertions.String</a></li><li><a href="Test.Spec.Config.html">Test.Spec.Config</a></li><li><a href="Test.Spec.Console.html">Test.Spec.Console</a></li><li><a href="Test.Spec.Reporter.html">Test.Spec.Reporter</a></li><li><a href="Test.Spec.Reporter.Base.html">Test.Spec.Reporter.Base</a></li><li><a href="Test.Spec.Reporter.Console.html">Test.Spec.Reporter.Console</a></li><li><a href="Test.Spec.Reporter.Dot.html">Test.Spec.Reporter.Dot</a></li><li><a href="Test.Spec.Reporter.Spec.html">Test.Spec.Reporter.Spec</a></li><li><a href="Test.Spec.Reporter.Tap.html">Test.Spec.Reporter.Tap</a></li><li><a href="Test.Spec.Reporter.TeamCity.html">Test.Spec.Reporter.TeamCity</a></li><li><a href="Test.Spec.Result.html">Test.Spec.Result</a></li><li><a href="Test.Spec.Runner.html">Test.Spec.Runner</a></li><li><a href="Test.Spec.Runner.Event.html">Test.Spec.Runner.Event</a></li><li><a href="Test.Spec.Speed.html">Test.Spec.Speed</a></li><li><a href="Test.Spec.Style.html">Test.Spec.Style</a></li><li><a href="Test.Spec.Summary.html">Test.Spec.Summary</a></li><li><a href="Test.Spec.Tree.html">Test.Spec.Tree</a></li><li><a href="Type.Data.Boolean.html">Type.Data.Boolean</a></li><li><a href="Type.Data.Ordering.html">Type.Data.Ordering</a></li><li><a href="Type.Data.Symbol.html">Type.Data.Symbol</a></li><li><a href="Type.Equality.html">Type.Equality</a></li><li><a href="Type.Function.html">Type.Function</a></li><li><a href="Type.Prelude.html">Type.Prelude</a></li><li><a href="Type.Proxy.html">Type.Proxy</a></li><li><a href="Type.Row.html">Type.Row</a></li><li><a href="Type.Row.Homogeneous.html">Type.Row.Homogeneous</a></li><li><a href="Type.RowList.html">Type.RowList</a></li><li><a href="Uncurried.RWSE.html">Uncurried.RWSE</a></li><li><a href="Uncurried.RWSET.html">Uncurried.RWSET</a></li><li><a href="Uncurried.Reader.html">Uncurried.Reader</a></li><li><a href="Uncurried.ReaderT.html">Uncurried.ReaderT</a></li><li><a href="Uncurried.State.html">Uncurried.State</a></li><li><a href="Uncurried.StateT.html">Uncurried.StateT</a></li><li><a href="Uncurried.Writer.html">Uncurried.Writer</a></li><li><a href="Uncurried.WriterT.html">Uncurried.WriterT</a></li><li><a href="Unsafe.Coerce.html">Unsafe.Coerce</a></li><li><a href="Unsafe.Reference.html">Unsafe.Reference</a></li><li><a href="Web.DOM.html">Web.DOM</a></li><li><a href="Web.DOM.CharacterData.html">Web.DOM.CharacterData</a></li><li><a href="Web.DOM.ChildNode.html">Web.DOM.ChildNode</a></li><li><a href="Web.DOM.Comment.html">Web.DOM.Comment</a></li><li><a href="Web.DOM.DOMTokenList.html">Web.DOM.DOMTokenList</a></li><li><a href="Web.DOM.Document.html">Web.DOM.Document</a></li><li><a href="Web.DOM.DocumentFragment.html">Web.DOM.DocumentFragment</a></li><li><a href="Web.DOM.DocumentType.html">Web.DOM.DocumentType</a></li><li><a href="Web.DOM.Element.html">Web.DOM.Element</a></li><li><a href="Web.DOM.HTMLCollection.html">Web.DOM.HTMLCollection</a></li><li><a href="Web.DOM.Internal.Types.html">Web.DOM.Internal.Types</a></li><li><a href="Web.DOM.MutationObserver.html">Web.DOM.MutationObserver</a></li><li><a href="Web.DOM.MutationRecord.html">Web.DOM.MutationRecord</a></li><li><a href="Web.DOM.Node.html">Web.DOM.Node</a></li><li><a href="Web.DOM.NodeList.html">Web.DOM.NodeList</a></li><li><a href="Web.DOM.NodeType.html">Web.DOM.NodeType</a></li><li><a href="Web.DOM.NonDocumentTypeChildNode.html">Web.DOM.NonDocumentTypeChildNode</a></li><li><a href="Web.DOM.NonElementParentNode.html">Web.DOM.NonElementParentNode</a></li><li><a href="Web.DOM.ParentNode.html">Web.DOM.ParentNode</a></li><li><a href="Web.DOM.ProcessingInstruction.html">Web.DOM.ProcessingInstruction</a></li><li><a href="Web.DOM.ShadowRoot.html">Web.DOM.ShadowRoot</a></li><li><a href="Web.DOM.Text.html">Web.DOM.Text</a></li><li><a href="Web.Event.CustomEvent.html">Web.Event.CustomEvent</a></li><li><a href="Web.Event.Event.html">Web.Event.Event</a></li><li><a href="Web.Event.EventPhase.html">Web.Event.EventPhase</a></li><li><a href="Web.Event.EventTarget.html">Web.Event.EventTarget</a></li><li><a href="Web.Event.Internal.Types.html">Web.Event.Internal.Types</a></li><li><a href="Web.File.Blob.html">Web.File.Blob</a></li><li><a href="Web.File.File.html">Web.File.File</a></li><li><a href="Web.File.FileList.html">Web.File.FileList</a></li><li><a href="Web.File.FileReader.html">Web.File.FileReader</a></li><li><a href="Web.File.FileReader.ReadyState.html">Web.File.FileReader.ReadyState</a></li><li><a href="Web.File.Url.html">Web.File.Url</a></li><li><a href="Web.HTML.html">Web.HTML</a></li><li><a href="Web.HTML.Common.html">Web.HTML.Common</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.html">Web.HTML.Event.BeforeUnloadEvent</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.EventTypes.html">Web.HTML.Event.BeforeUnloadEvent.EventTypes</a></li><li><a href="Web.HTML.Event.DataTransfer.html">Web.HTML.Event.DataTransfer</a></li><li><a href="Web.HTML.Event.DataTransfer.DataTransferItem.html">Web.HTML.Event.DataTransfer.DataTransferItem</a></li><li><a href="Web.HTML.Event.DragEvent.html">Web.HTML.Event.DragEvent</a></li><li><a href="Web.HTML.Event.DragEvent.EventTypes.html">Web.HTML.Event.DragEvent.EventTypes</a></li><li><a href="Web.HTML.Event.ErrorEvent.html">Web.HTML.Event.ErrorEvent</a></li><li><a href="Web.HTML.Event.EventTypes.html">Web.HTML.Event.EventTypes</a></li><li><a href="Web.HTML.Event.HashChangeEvent.html">Web.HTML.Event.HashChangeEvent</a></li><li><a href="Web.HTML.Event.HashChangeEvent.EventTypes.html">Web.HTML.Event.HashChangeEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.html">Web.HTML.Event.PageTransitionEvent</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.EventTypes.html">Web.HTML.Event.PageTransitionEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PopStateEvent.html">Web.HTML.Event.PopStateEvent</a></li><li><a href="Web.HTML.Event.PopStateEvent.EventTypes.html">Web.HTML.Event.PopStateEvent.EventTypes</a></li><li><a href="Web.HTML.Event.TrackEvent.html">Web.HTML.Event.TrackEvent</a></li><li><a href="Web.HTML.Event.TrackEvent.EventTypes.html">Web.HTML.Event.TrackEvent.EventTypes</a></li><li><a href="Web.HTML.HTMLAnchorElement.html">Web.HTML.HTMLAnchorElement</a></li><li><a href="Web.HTML.HTMLAreaElement.html">Web.HTML.HTMLAreaElement</a></li><li><a href="Web.HTML.HTMLAudioElement.html">Web.HTML.HTMLAudioElement</a></li><li><a href="Web.HTML.HTMLBRElement.html">Web.HTML.HTMLBRElement</a></li><li><a href="Web.HTML.HTMLBaseElement.html">Web.HTML.HTMLBaseElement</a></li><li><a href="Web.HTML.HTMLBodyElement.html">Web.HTML.HTMLBodyElement</a></li><li><a href="Web.HTML.HTMLButtonElement.html">Web.HTML.HTMLButtonElement</a></li><li><a href="Web.HTML.HTMLCanvasElement.html">Web.HTML.HTMLCanvasElement</a></li><li><a href="Web.HTML.HTMLDListElement.html">Web.HTML.HTMLDListElement</a></li><li><a href="Web.HTML.HTMLDataElement.html">Web.HTML.HTMLDataElement</a></li><li><a href="Web.HTML.HTMLDataListElement.html">Web.HTML.HTMLDataListElement</a></li><li><a href="Web.HTML.HTMLDivElement.html">Web.HTML.HTMLDivElement</a></li><li><a href="Web.HTML.HTMLDocument.html">Web.HTML.HTMLDocument</a></li><li><a href="Web.HTML.HTMLDocument.ReadyState.html">Web.HTML.HTMLDocument.ReadyState</a></li><li><a href="Web.HTML.HTMLDocument.VisibilityState.html">Web.HTML.HTMLDocument.VisibilityState</a></li><li><a href="Web.HTML.HTMLElement.html">Web.HTML.HTMLElement</a></li><li><a href="Web.HTML.HTMLEmbedElement.html">Web.HTML.HTMLEmbedElement</a></li><li><a href="Web.HTML.HTMLFieldSetElement.html">Web.HTML.HTMLFieldSetElement</a></li><li><a href="Web.HTML.HTMLFormElement.html">Web.HTML.HTMLFormElement</a></li><li><a href="Web.HTML.HTMLHRElement.html">Web.HTML.HTMLHRElement</a></li><li><a href="Web.HTML.HTMLHeadElement.html">Web.HTML.HTMLHeadElement</a></li><li><a href="Web.HTML.HTMLHeadingElement.html">Web.HTML.HTMLHeadingElement</a></li><li><a href="Web.HTML.HTMLHtmlElement.html">Web.HTML.HTMLHtmlElement</a></li><li><a href="Web.HTML.HTMLHyperlinkElementUtils.html">Web.HTML.HTMLHyperlinkElementUtils</a></li><li><a href="Web.HTML.HTMLIFrameElement.html">Web.HTML.HTMLIFrameElement</a></li><li><a href="Web.HTML.HTMLImageElement.html">Web.HTML.HTMLImageElement</a></li><li><a href="Web.HTML.HTMLImageElement.CORSMode.html">Web.HTML.HTMLImageElement.CORSMode</a></li><li><a href="Web.HTML.HTMLImageElement.DecodingHint.html">Web.HTML.HTMLImageElement.DecodingHint</a></li><li><a href="Web.HTML.HTMLImageElement.Laziness.html">Web.HTML.HTMLImageElement.Laziness</a></li><li><a href="Web.HTML.HTMLInputElement.html">Web.HTML.HTMLInputElement</a></li><li><a href="Web.HTML.HTMLKeygenElement.html">Web.HTML.HTMLKeygenElement</a></li><li><a href="Web.HTML.HTMLLIElement.html">Web.HTML.HTMLLIElement</a></li><li><a href="Web.HTML.HTMLLabelElement.html">Web.HTML.HTMLLabelElement</a></li><li><a href="Web.HTML.HTMLLegendElement.html">Web.HTML.HTMLLegendElement</a></li><li><a href="Web.HTML.HTMLLinkElement.html">Web.HTML.HTMLLinkElement</a></li><li><a href="Web.HTML.HTMLMapElement.html">Web.HTML.HTMLMapElement</a></li><li><a href="Web.HTML.HTMLMediaElement.html">Web.HTML.HTMLMediaElement</a></li><li><a href="Web.HTML.HTMLMediaElement.CanPlayType.html">Web.HTML.HTMLMediaElement.CanPlayType</a></li><li><a href="Web.HTML.HTMLMediaElement.NetworkState.html">Web.HTML.HTMLMediaElement.NetworkState</a></li><li><a href="Web.HTML.HTMLMediaElement.ReadyState.html">Web.HTML.HTMLMediaElement.ReadyState</a></li><li><a href="Web.HTML.HTMLMetaElement.html">Web.HTML.HTMLMetaElement</a></li><li><a href="Web.HTML.HTMLMeterElement.html">Web.HTML.HTMLMeterElement</a></li><li><a href="Web.HTML.HTMLModElement.html">Web.HTML.HTMLModElement</a></li><li><a href="Web.HTML.HTMLOListElement.html">Web.HTML.HTMLOListElement</a></li><li><a href="Web.HTML.HTMLObjectElement.html">Web.HTML.HTMLObjectElement</a></li><li><a href="Web.HTML.HTMLOptGroupElement.html">Web.HTML.HTMLOptGroupElement</a></li><li><a href="Web.HTML.HTMLOptionElement.html">Web.HTML.HTMLOptionElement</a></li><li><a href="Web.HTML.HTMLOutputElement.html">Web.HTML.HTMLOutputElement</a></li><li><a href="Web.HTML.HTMLParagraphElement.html">Web.HTML.HTMLParagraphElement</a></li><li><a href="Web.HTML.HTMLParamElement.html">Web.HTML.HTMLParamElement</a></li><li><a href="Web.HTML.HTMLPreElement.html">Web.HTML.HTMLPreElement</a></li><li><a href="Web.HTML.HTMLProgressElement.html">Web.HTML.HTMLProgressElement</a></li><li><a href="Web.HTML.HTMLQuoteElement.html">Web.HTML.HTMLQuoteElement</a></li><li><a href="Web.HTML.HTMLScriptElement.html">Web.HTML.HTMLScriptElement</a></li><li><a href="Web.HTML.HTMLSelectElement.html">Web.HTML.HTMLSelectElement</a></li><li><a href="Web.HTML.HTMLSourceElement.html">Web.HTML.HTMLSourceElement</a></li><li><a href="Web.HTML.HTMLSpanElement.html">Web.HTML.HTMLSpanElement</a></li><li><a href="Web.HTML.HTMLStyleElement.html">Web.HTML.HTMLStyleElement</a></li><li><a href="Web.HTML.HTMLTableCaptionElement.html">Web.HTML.HTMLTableCaptionElement</a></li><li><a href="Web.HTML.HTMLTableCellElement.html">Web.HTML.HTMLTableCellElement</a></li><li><a href="Web.HTML.HTMLTableColElement.html">Web.HTML.HTMLTableColElement</a></li><li><a href="Web.HTML.HTMLTableDataCellElement.html">Web.HTML.HTMLTableDataCellElement</a></li><li><a href="Web.HTML.HTMLTableElement.html">Web.HTML.HTMLTableElement</a></li><li><a href="Web.HTML.HTMLTableHeaderCellElement.html">Web.HTML.HTMLTableHeaderCellElement</a></li><li><a href="Web.HTML.HTMLTableRowElement.html">Web.HTML.HTMLTableRowElement</a></li><li><a href="Web.HTML.HTMLTableSectionElement.html">Web.HTML.HTMLTableSectionElement</a></li><li><a href="Web.HTML.HTMLTemplateElement.html">Web.HTML.HTMLTemplateElement</a></li><li><a href="Web.HTML.HTMLTextAreaElement.html">Web.HTML.HTMLTextAreaElement</a></li><li><a href="Web.HTML.HTMLTimeElement.html">Web.HTML.HTMLTimeElement</a></li><li><a href="Web.HTML.HTMLTitleElement.html">Web.HTML.HTMLTitleElement</a></li><li><a href="Web.HTML.HTMLTrackElement.html">Web.HTML.HTMLTrackElement</a></li><li><a href="Web.HTML.HTMLTrackElement.ReadyState.html">Web.HTML.HTMLTrackElement.ReadyState</a></li><li><a href="Web.HTML.HTMLUListElement.html">Web.HTML.HTMLUListElement</a></li><li><a href="Web.HTML.HTMLVideoElement.html">Web.HTML.HTMLVideoElement</a></li><li><a href="Web.HTML.History.html">Web.HTML.History</a></li><li><a href="Web.HTML.Location.html">Web.HTML.Location</a></li><li><a href="Web.HTML.Navigator.html">Web.HTML.Navigator</a></li><li><a href="Web.HTML.SelectionMode.html">Web.HTML.SelectionMode</a></li><li><a href="Web.HTML.ValidityState.html">Web.HTML.ValidityState</a></li><li><a href="Web.HTML.Window.html">Web.HTML.Window</a></li><li><a href="Web.Internal.FFI.html">Web.Internal.FFI</a></li><li><a href="Web.Storage.Event.StorageEvent.html">Web.Storage.Event.StorageEvent</a></li><li><a href="Web.Storage.Storage.html">Web.Storage.Storage</a></li><li><a href="Web.UIEvent.CompositionEvent.html">Web.UIEvent.CompositionEvent</a></li><li><a href="Web.UIEvent.CompositionEvent.EventTypes.html">Web.UIEvent.CompositionEvent.EventTypes</a></li><li><a href="Web.UIEvent.EventTypes.html">Web.UIEvent.EventTypes</a></li><li><a href="Web.UIEvent.FocusEvent.html">Web.UIEvent.FocusEvent</a></li><li><a href="Web.UIEvent.FocusEvent.EventTypes.html">Web.UIEvent.FocusEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.html">Web.UIEvent.InputEvent</a></li><li><a href="Web.UIEvent.InputEvent.EventTypes.html">Web.UIEvent.InputEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.InputType.html">Web.UIEvent.InputEvent.InputType</a></li><li><a href="Web.UIEvent.KeyboardEvent.html">Web.UIEvent.KeyboardEvent</a></li><li><a href="Web.UIEvent.KeyboardEvent.EventTypes.html">Web.UIEvent.KeyboardEvent.EventTypes</a></li><li><a href="Web.UIEvent.MouseEvent.html">Web.UIEvent.MouseEvent</a></li><li><a href="Web.UIEvent.MouseEvent.EventTypes.html">Web.UIEvent.MouseEvent.EventTypes</a></li><li><a href="Web.UIEvent.UIEvent.html">Web.UIEvent.UIEvent</a></li><li><a href="Web.UIEvent.WheelEvent.html">Web.UIEvent.WheelEvent</a></li><li><a href="Web.UIEvent.WheelEvent.EventTypes.html">Web.UIEvent.WheelEvent.EventTypes</a></li></ul></div></main></div><div class="footer clearfix"><p>Generated by purs 0.15.15 [development build; commit: UNKNOWN]</p></div><!-- Docs search index. --><script type="text/javascript" src="./docs-search-app.js"></script><script type="text/javascript">window.DocsSearchTypeIndex = {};window.DocsSearchIndex = {};</script></body></html>
generated-docs/html/Control.Alternative.htmldeleted−1482
@@ -1,1482 +0,0 @@
2−<html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>PureScript: Control.Alternative</title><link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:300,400,400i,700,700i" type="text/css" rel="stylesheet"><style type="text/css">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
5− * 1. Set default font family to sans-serif.
6− * 2. Prevent iOS text size adjust after orientation change, without disabling
11− font-family: sans-serif; /* 1 */
12− -ms-text-size-adjust: 100%; /* 2 */
13− -webkit-text-size-adjust: 100%; /* 2 */
17− * Remove default margin.
24−/* HTML5 display definitions
25− ========================================================================== */
28− * Correct `block` display not defined for any HTML5 element in IE 8/9.
29− * Correct `block` display not defined for `details` or `summary` in IE 10/11
31− * Correct `block` display not defined for `main` in IE 11.
51− * 1. Correct `inline-block` display not defined in IE 8/9.
52− * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
59− display: inline-block; /* 1 */
60− vertical-align: baseline; /* 2 */
64− * Prevent modern browsers from displaying `audio` without controls.
65− * Remove excess height in iOS 5 devices.
68−audio:not([controls]) {
74− * Address `[hidden]` styling not present in IE 8/9/10.
75− * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
84− ========================================================================== */
87− * Remove the gray background color from active links in IE 10.
91− background-color: transparent;
95− * Improve readability when focused and also mouse hovered in all browsers.
103−/* Text-level semantics
104− ========================================================================== */
107− * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
111− border-bottom: 1px dotted;
115− * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
124− * Address styling not present in Safari and Chrome.
132− * Address variable `h1` font-size and margin within `section` and `article`
133− * contexts in Firefox 4+, Safari, and Chrome.
142− * Address styling not present in IE 8/9.
151− * Address inconsistent and variable font size in all browsers.
159− * Prevent `sub` and `sup` affecting `line-height` in all browsers.
167− vertical-align: baseline;
179− ========================================================================== */
182− * Remove border when inside `a` element in IE 8/9/10.
190− * Correct overflow not hidden in IE 9/10/11.
198− ========================================================================== */
201− * Address margin not present in IE 8/9 and Safari.
209− * Address differences between Firefox and other browsers.
213− -moz-box-sizing: content-box;
214− box-sizing: content-box;
219− * Contain overflow in all browsers.
227− * Address odd `em`-unit font size rendering in all browsers.
234− font-family: monospace, monospace;
239− ========================================================================== */
242− * Known limitation: by default, Chrome and Safari on OS X allow very limited
243− * styling of `select`, unless a `border` property is set.
247− * 1. Correct color not being inherited.
248− * Known issue: affects color of disabled elements.
249− * 2. Correct font properties not being inherited.
250− * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
258− color: inherit; /* 1 */
259− font: inherit; /* 2 */
264− * Address `overflow` set to `hidden` in IE 8/9/10/11.
272− * Address inconsistent `text-transform` inheritance for `button` and `select`.
273− * All other form control elements do not inherit `text-transform` values.
274− * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
275− * Correct `select` style inheritance in Firefox.
280− text-transform: none;
284− * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
285− * and `video` controls.
286− * 2. Correct inability to style clickable `input` types in iOS.
287− * 3. Improve usability and consistency of cursor style between image-type
288− * `input` and others.
292−html input[type="button"], /* 1 */
294−input[type="submit"] {
295− -webkit-appearance: button; /* 2 */
296− cursor: pointer; /* 3 */
300− * Re-set default cursor for disabled elements.
304−html input[disabled] {
309− * Remove inner padding and border in Firefox 4+.
312−button::-moz-focus-inner,
313−input::-moz-focus-inner {
319− * Address Firefox 4+ setting `line-height` on `input` using `!important` in
320− * the UA stylesheet.
324− line-height: normal;
328− * It's recommended that you don't attempt to style these elements.
329− * Firefox's implementation doesn't respect box-sizing, padding, or width.
331− * 1. Address box sizing set to `content-box` in IE 8/9/10.
332− * 2. Remove excess padding in IE 8/9/10.
335−input[type="checkbox"],
336−input[type="radio"] {
337− box-sizing: border-box; /* 1 */
342− * Fix the cursor style for Chrome's increment/decrement buttons. For certain
343− * `font-size` values of the `input`, it causes the cursor style of the
344− * decrement button to change from `default` to `text`.
347−input[type="number"]::-webkit-inner-spin-button,
348−input[type="number"]::-webkit-outer-spin-button {
353− * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
354− * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
355− * (include `-moz` to future-proof).
358−input[type="search"] {
359− -webkit-appearance: textfield; /* 1 */
360− -moz-box-sizing: content-box;
361− -webkit-box-sizing: content-box; /* 2 */
362− box-sizing: content-box;
366− * Remove inner padding and search cancel button in Safari and Chrome on OS X.
367− * Safari (but not Chrome) clips the cancel button when the search input has
368− * padding (and `textfield` appearance).
371−input[type="search"]::-webkit-search-cancel-button,
372−input[type="search"]::-webkit-search-decoration {
373− -webkit-appearance: none;
377− * Define consistent border, margin, and padding.
381− border: 1px solid #c0c0c0;
383− padding: 0.35em 0.625em 0.75em;
387− * 1. Correct `color` not being inherited in IE 8/9/10/11.
388− * 2. Remove padding so people aren't caught out if they zero out fieldsets.
397− * Remove default vertical scrollbar in IE 8/9/10/11.
405− * Don't inherit the `font-weight` (applied by a rule above).
406− * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
414− ========================================================================== */
417− * Remove most spacing between table cells.
421− border-collapse: collapse;
429−</style><style type="text/css">/** ************************************************************************* *
430− ** CSS for HTML docs (e.g. Pursuit)
434− ** This CSS file is structured into several sections, from general to
435− ** specific, and (mostly) alphabetically within the sections.
437− ** Several global element styles are used. This is not encouraged and should
438− ** be kept to a minimum. If you want to add new styles you'll most likely
439− ** want to add a new CSS component. See the Components section for examples.
441− ** CSS components use three simple naming ideas from the BEM system:
442− ** - Block: `.my-component`
443− ** - Element: `.my-component__item`
444− ** - Modifier: `.my-component.my-component--highlighted`
447− ** <div .my-component>
448− ** <div .my-component__item>
449− ** <div .my-component__item>
451− ** <div .my-component.my-component--highlighted>
452− ** <div .my-component__item>
453− ** <div .my-component__item>
455− ** Components can be nested.
460− ** Typographic choices for sizes, line-heights and margins are based on a
461− ** musical major third scale (4:5). This gives us a way to find numbers
462− ** and relationships between them that are perceived as harmonic.
464− ** To make use of this modular scale, use a ratio of the form
466− ** where n ∈ ℤ, -6 ≤ n ≤ 8.
470− ** This CSS is generated by less. To compile it:
472− ** npm install [-g] less
473− ** lessc app/static/pursuit.less > app/static/pursuit.css
475− ** ************************************************************************* */
476−/* Section: Variables
477− * ========================================================================== */
478−/* Section: Document Styles
479− * ========================================================================== */
481− color-scheme: light dark;
484− box-sizing: border-box;
485− /* This overflow rule prevents everything from shifting slightly to the side
486− when moving from a page which isn't large enough to generate a scrollbar
493− box-sizing: inherit;
496− background-color: #ffffff;
498− font-family: "Roboto", sans-serif;
502−@media (prefers-color-scheme: dark) {
504− background-color: #141417;
508−@media (min-width: 38em) {
513−/* Section: Utility Classes
514− * ========================================================================== */
526−/* Content hidden like this will still be read by a screen reader */
536− * ========================================================================== */
543− padding-right: 20px;
551− margin-bottom: 3.08em;
554− margin-bottom: 2.44em;
556−@media (min-width: 52em) {
559− padding-right: 30px;
572−@media (min-width: 66em) {
578− * Based on http://www.lwis.net/journal/2008/02/08/pure-css-sticky-footer/
579− * Except we don't support IE6
580− * -------------------------------------------------------------------------- */
585−.everything-except-footer {
587− padding-bottom: 3em;
595− background-color: #1d222d;
598−@media (prefers-color-scheme: dark) {
600− background-color: #1d222d;
607−/* Section: Element Styles
609− * Have as few of these as possible and keep them general, because they will
610− * influence every component hereafter.
611− * ========================================================================== */
613− background-color: #f1f5f9;
615−@media (prefers-color-scheme: dark) {
617− background-color: #232327;
623− text-decoration: none;
626−@media (prefers-color-scheme: dark) {
634− text-decoration: none;
636−@media (prefers-color-scheme: dark) {
643− background-color: #f1f5f9;
646− font-family: "Roboto Mono", monospace;
649−@media (prefers-color-scheme: dark) {
652− background-color: #232327;
658− background-color: #dfe8f1;
660−@media (prefers-color-scheme: dark) {
663− background-color: #2f2f34;
669− white-space: pre-wrap;
670− word-wrap: break-word;
674− letter-spacing: -0.2em;
678− font-weight: normal;
682− letter-spacing: 0.33em;
687−@media (prefers-color-scheme: dark) {
695− padding: 1em 1.25rem;
696− /* Using rem here to align with lists etc. */
702− background-color: transparent;
709− line-height: inherit;
721− letter-spacing: -0.5px;
723− margin-top: 1.563rem;
724− margin-bottom: 1.25rem;
726−@media (min-width: 52em) {
729− margin-top: 5.96rem;
734− font-weight: normal;
736− margin-top: 3.052rem;
737− margin-bottom: 1rem;
741− font-weight: normal;
743− margin-top: 2.441rem;
744− margin-bottom: 1rem;
748− font-weight: normal;
749− margin-top: 2.441rem;
750− margin-bottom: 1rem;
763− background-color: #cccccc;
765−@media (prefers-color-scheme: dark) {
767− background-color: #43434e;
777− margin-bottom: 1rem;
780− border-bottom: 1px solid #cccccc;
781− border-collapse: collapse;
784− margin-bottom: 1rem;
787−@media (prefers-color-scheme: dark) {
789− border-bottom-color: #43434e;
795− padding: 0.41em 0.51em;
798− border-top: 1px solid #cccccc;
800−@media (prefers-color-scheme: dark) {
802− border-top-color: #43434e;
814− list-style-type: none;
816− margin-bottom: 1rem;
821− padding-left: 1.25em;
827− display: inline-block;
828− margin-left: -1.25em;
831−@media (prefers-color-scheme: dark) {
836−/* Tying this tightly to ul at the moment because it's a slight variation thereof */
837−ul.ul--search li::before {
840− transform: rotate(-45deg);
844− margin-bottom: 1rem;
845− padding-left: 1.25em;
851−/* Section: Components
852− * ========================================================================== */
854− * -------------------------------------------------------------------------- */
858− display: inline-block;
859− background-color: #000000;
860− border-radius: 1.3em;
869−@media (prefers-color-scheme: dark) {
871− background-color: #dedede;
875−.badge.badge--package {
876− background-color: #c4953a;
877− letter-spacing: -0.1em;
879−@media (prefers-color-scheme: dark) {
880− .badge.badge--package {
881− background-color: #d8ac55;
884−.badge.badge--module {
885− background-color: #75B134;
887−/* Component: Declarations
888− * -------------------------------------------------------------------------- */
891− padding-bottom: 0.328em;
892− margin-bottom: 0.262em;
902−.decl__anchor:visited {
907−@media (prefers-color-scheme: dark) {
909− .decl__anchor:visited {
913−.decl__anchor:hover {
916−@media (prefers-color-scheme: dark) {
917− .decl__anchor:hover {
922− background-color: transparent;
924− border-top: 1px solid #cccccc;
925− border-bottom: 1px solid #cccccc;
928−@media (prefers-color-scheme: dark) {
930− border-top-color: #43434e;
931− border-bottom-color: #43434e;
934−.decl__signature code {
937− padding-left: 2.441em;
938− text-indent: -2.441em;
939− white-space: normal;
942− font-family: "Roboto", sans-serif;
944− font-weight: normal;
946−/* See https://stackoverflow.com/a/32162038
947− Content licensed under CC BY-SA 3.0
949−.decl__role_hover[title] {
950− /* Remove line that appears under abbr element */
951− border-bottom: none;
952− text-decoration: none;
953− /* Ensure cursor doesn't change to question mark */
956−.decl__role_nominal::after {
959−.decl__role_phantom::after {
963− border-bottom: 1px solid #cccccc;
965−@media (prefers-color-scheme: dark) {
967− border-bottom-color: #43434e;
970−:target .decl__signature,
971−:target .decl__signature code {
972− /* We want the background to be transparent, even when the parent is a target */
973− background-color: transparent;
975−.decl__body .keyword,
976−.decl__body .syntax {
979−@media (prefers-color-scheme: dark) {
980− .decl__body .keyword,
981− .decl__body .syntax {
985−.decl__child_comments {
987− margin-bottom: 1rem;
989−/* Component: Dependency Link
990− * -------------------------------------------------------------------------- */
992− /* Currently no root styles, but keep the class as a namespace */
995− display: inline-block;
996− margin-right: 0.41em;
1000− display: inline-block;
1004−@media (prefers-color-scheme: dark) {
1005− .deplink__version {
1009−/* Component: Grouped List
1010− * -------------------------------------------------------------------------- */
1012− border-top: 1px solid #cccccc;
1013− margin: 0 0 2.44em 0;
1015−@media (prefers-color-scheme: dark) {
1017− border-top-color: #43434e;
1020−.grouped-list__title {
1024− letter-spacing: 1px;
1025− margin: 0.8em 0 -0.1em 0;
1026− text-transform: uppercase;
1028−@media (prefers-color-scheme: dark) {
1029− .grouped-list__title {
1030− border-top-color: #a0a0a0;
1033−.grouped-list__item {
1036−/* Component: Message
1037− * -------------------------------------------------------------------------- */
1040− border-radius: 5px;
1041− padding: 1em !important;
1043−.message.message--error {
1044− background-color: #fff0f0;
1045− border-color: #c85050;
1047−@media (prefers-color-scheme: dark) {
1048− .message.message--error {
1049− background-color: #6b0e0e;
1050− border-color: #c85050;
1053−.message.message--not-available {
1054− background-color: #f0f096;
1055− border-color: #e3e33d;
1057−@media (prefers-color-scheme: dark) {
1058− .message.message--not-available {
1059− background-color: #56560b;
1060− border-color: #b0b017;
1063−/* Component: Multi Col
1064− * Multiple columns side by side
1065− * -------------------------------------------------------------------------- */
1067− margin-bottom: 2.44em;
1071− padding-right: 1em;
1072− position: relative;
1075−@media (min-width: 38em) and (max-width: 51.999999em) {
1080− .multi-col__col:nth-child(2n+3) {
1084−@media (min-width: 52em) {
1089− .multi-col__col:nth-child(3n+4) {
1093−/* Component: Page Title
1094− * -------------------------------------------------------------------------- */
1096− margin: 4.77em 0 1.56em;
1097− padding-bottom: 1.25em;
1098− position: relative;
1100−.page-title__title {
1101− margin: 0 0 0 -0.05em;
1102− /* Visually align on left edge */
1104−.page-title__label {
1105− position: relative;
1109− letter-spacing: 1px;
1110− margin-bottom: -0.8em;
1111− text-transform: uppercase;
1114−@media (prefers-color-scheme: dark) {
1115− .page-title__label {
1119−/* Component: Top Banner
1120− * -------------------------------------------------------------------------- */
1122− background-color: #1d222d;
1124− font-weight: normal;
1126−@media (prefers-color-scheme: dark) {
1128− background-color: #1d222d;
1133−.top-banner__logo:visited {
1141−@media (prefers-color-scheme: dark) {
1143− .top-banner__logo:visited {
1147−.top-banner__logo:hover {
1149− text-decoration: none;
1152− margin-bottom: 1.25em;
1154−.top-banner__form input {
1155− border: 1px solid #1d222d;
1156− border-radius: 3px;
1157− background-color: #ffffff;
1161− padding: 0.21em 0.512em;
1164−@media (prefers-color-scheme: dark) {
1165− .top-banner__form input {
1166− border-color: #1d222d;
1167− background-color: #141417;
1171−.top-banner__actions {
1175−.top-banner__actions__item {
1176− display: inline-block;
1179− padding-left: 1.25em;
1181−.top-banner__actions__item:first-child {
1184−.top-banner__actions__item a,
1185−.top-banner__actions__item a:visited {
1188−@media (prefers-color-scheme: dark) {
1189− .top-banner__actions__item a,
1190− .top-banner__actions__item a:visited {
1194−.top-banner__actions__item a:hover {
1197−@media (prefers-color-scheme: dark) {
1198− .top-banner__actions__item a:hover {
1202−@media (min-width: 38em) {
1203− .top-banner__logo {
1207− .top-banner__form {
1213− .top-banner__actions {
1218−/* Component: Search Results
1219− * -------------------------------------------------------------------------- */
1220−.result.result--empty {
1225− margin-bottom: 0.2rem;
1228− margin-left: -0.1em;
1230−.result__body > *:first-child {
1231− margin-top: 0!important;
1233−.result__body > *:last-child {
1234− margin-bottom: 0!important;
1236−.result__signature {
1237− background-color: transparent;
1239− border-top: 1px solid #cccccc;
1240− border-bottom: 1px solid #cccccc;
1241− padding: 0.328em 0;
1243−@media (prefers-color-scheme: dark) {
1244− .result__signature {
1245− border-top-color: #43434e;
1246− border-bottom-color: #43434e;
1249−.result__signature code {
1251− padding-left: 2.441em;
1252− text-indent: -2.441em;
1253− white-space: normal;
1256− margin-top: 0.2rem;
1258−.result__actions__item {
1261−.result__actions__item + .result__actions__item {
1262− margin-left: 0.65em;
1264−/* Component: Version Selector
1265− * -------------------------------------------------------------------------- */
1267− margin-bottom: 0.8em;
1269−@media (min-width: 38em) {
1270− .version-selector {
1271− position: absolute;
1278− * These styles should be cleaned up
1279− * ========================================================================== */
1280−/* Help paragraphs */
1285− /* FIXME: target with class */
1288−/* Section: Markdown
1289− * Github rendered README
1290− * ========================================================================== */
1293− Useful for narrow screens, such as mobiles. Documentation often contains URLs
1294− which would otherwise force the page to become wider, and force creation of
1295− horizontal scrollbars. Yuck.
1297− word-wrap: break-word;
1299−.markdown-body > *:first-child {
1300− margin-top: 0 !important;
1302−.markdown-body > *:last-child {
1303− margin-bottom: 0 !important;
1305−.markdown-body a:not([href]) {
1307− text-decoration: none;
1309−.markdown-body blockquote {
1313− border-left: 0.25em solid #ddd;
1315−@media (prefers-color-scheme: dark) {
1316− .markdown-body blockquote {
1317− border-left-color: #444;
1320−.markdown-body blockquote > :first-child {
1323−.markdown-body blockquote > :last-child {
1326−.markdown-body .anchor {
1327− /* We hide the anchor because the link doesn't point to a valid location */
1330−.markdown-body .pl-k {
1334−@media (prefers-color-scheme: dark) {
1335− .markdown-body .pl-k {
1339−.markdown-body .pl-c1,
1340−.markdown-body .pl-en {
1341− /* Not really sure what this is */
1344−.markdown-body .pl-s {
1345− /* String literals */
1348−.markdown-body .pl-cce {
1349− /* String literal escape sequences */
1352−.markdown-body .pl-smi {
1353− /* type variables? */
1356−</style></head><body><div class="everything-except-footer"><div class="top-banner clearfix"><div class="container clearfix"><div style="float: left; font-size: 2.44em; font-weight: 300; line-height: 90px; margin: 0">PureScript API documentation</div><div class="top-banner__actions"><div class="top-banner__actions__item"><a href="index.html">Index</a></div></div></div></div><main class="container clearfix" role="main"><div class="page-title clearfix"><div class="page-title__label">Module</div><h1 class="page-title__title">Control.Alternative</h1></div><div class="col col--main"><div class="decl" id="t:Alternative"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Alternative">#</a><span>Alternative</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Alternative.html#t:Alternative" title="Control.Alternative.Alternative"><span class="ctor">Alternative</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <span class="syntax">(</span><a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> f<span class="syntax">,</span> <a href="Control.Plus.html#t:Plus" title="Control.Plus.Plus"><span class="ctor">Plus</span></a> f<span class="syntax">)</span> <span class="syntax"><=</span> <a href="Control.Alternative.html#t:Alternative" title="Control.Alternative.Alternative"><span class="ctor">Alternative</span></a> f </code></pre><p>The <code>Alternative</code> type class has no members of its own; it just specifies
1357−that the type constructor has both <code>Applicative</code> and <code>Plus</code> instances.</p>
1358−<p>Types which have <code>Alternative</code> instances should also satisfy the following
1361−<li>Distributivity: <code>(f <|> g) <*> x == (f <*> x) <|> (g <*> x)</code></li>
1362−<li>Annihilation: <code>empty <*> f = empty</code></li>
1364−<h4>Instances</h4><ul><li id="v:alternativeArray"><code><a href="Control.Alternative.html#t:Alternative" title="Control.Alternative.Alternative"><span class="ctor">Alternative</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li></ul></div></div><div class="decl" id="v:guard"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:guard">#</a><span>guard</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Alternative.html#v:guard" title="Control.Alternative.guard"><span class="ident">guard</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>m<span class="syntax">.</span> <a href="Control.Alternative.html#t:Alternative" title="Control.Alternative.Alternative"><span class="ctor">Alternative</span></a> m <span class="syntax">=></span> <a href="Prim.html#t:Boolean" title="Prim.Boolean"><span class="ctor">Boolean</span></a> <span class="syntax">-></span> m <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a></code></pre><p>Fail using <code>Plus</code> if a condition does not hold, or
1365−succeed using <code>Applicative</code> if it does.</p>
1367−<pre class="purescript"><code>import Prelude
1368−import Control.Alternative (guard)
1369−import Data.Array ((..))
1371−factors :: Int -> Array Int
1378−</div></div><h2 class="re-exports">Re-exports from <a href="Control.Alt.html">Control.Alt</a></h2><div class="decl" id="t:Alt"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Alt">#</a><span>Alt</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Alternative.html#t:Alt" title="Control.Alternative.Alt"><span class="ctor">Alt</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <span class="syntax">(</span><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> f<span class="syntax">)</span> <span class="syntax"><=</span> <a href="Control.Alternative.html#t:Alt" title="Control.Alternative.Alt"><span class="ctor">Alt</span></a> f <span class="keyword">where</span></code></pre><p>The <code>Alt</code> type class identifies an associative operation on a type
1379−constructor. It is similar to <code>Semigroup</code>, except that it applies to
1380−types of kind <code>* -> *</code>, like <code>Array</code> or <code>List</code>, rather than concrete types
1381−<code>String</code> or <code>Number</code>.</p>
1382−<p><code>Alt</code> instances are required to satisfy the following laws:</p>
1384−<li>Associativity: <code>(x <|> y) <|> z == x <|> (y <|> z)</code></li>
1385−<li>Distributivity: <code>f <$> (x <|> y) == (f <$> x) <|> (f <$> y)</code></li>
1387−<p>For example, the <code>Array</code> (<code>[]</code>) type is an instance of <code>Alt</code>, where
1388−<code>(<|>)</code> is defined to be concatenation.</p>
1389−<p>A common use case is to select the first "valid" item, or, if all items
1390−are "invalid", the last "invalid" item.</p>
1392−<pre class="purescript"><code>import Control.Alt ((<|>))
1393−import Data.Maybe (Maybe(..)
1394−import Data.Either (Either(..))
1396−Nothing <|> Just 1 <|> Just 2 == Just 1
1397−Left "err" <|> Right 1 <|> Right 2 == Right 1
1398−Left "err 1" <|> Left "err 2" <|> Left "err 3" == Left "err 3"
1400−<h4>Members</h4><ul><li id="v:alt"><code><a href="Control.Alternative.html#v:alt" title="Control.Alternative.alt"><span class="ident">alt</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a<span class="syntax">.</span> f a <span class="syntax">-></span> f a <span class="syntax">-></span> f a</code></li></ul><h4>Instances</h4><ul><li id="v:altArray"><code><a href="Control.Alt.html#t:Alt" title="Control.Alt.Alt"><span class="ctor">Alt</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li></ul></div></div><div class="decl" id="v:(<|>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<|>)">#</a><span>(<|>)</span> </h3><div class="decl__body"><p>Operator alias for Control.Alt.alt <em>(right-associative / precedence 3)</em></p></div></div><h2 class="re-exports">Re-exports from <a href="Control.Applicative.html">Control.Applicative</a></h2><div class="decl" id="t:Applicative"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Applicative">#</a><span>Applicative</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Alternative.html#t:Applicative" title="Control.Alternative.Applicative"><span class="ctor">Applicative</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <span class="syntax">(</span><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> f<span class="syntax">)</span> <span class="syntax"><=</span> <a href="Control.Alternative.html#t:Applicative" title="Control.Alternative.Applicative"><span class="ctor">Applicative</span></a> f <span class="keyword">where</span></code></pre><p>The <code>Applicative</code> type class extends the <code>Apply</code> type class
1401−with a <code>pure</code> function, which can be used to create values of type <code>f a</code>
1402−from values of type <code>a</code>.</p>
1403−<p>Where <code>Apply</code> provides the ability to lift functions of two or
1404−more arguments to functions whose arguments are wrapped using <code>f</code>, and
1405−<code>Functor</code> provides the ability to lift functions of one
1406−argument, <code>pure</code> can be seen as the function which lifts functions of
1407−<em>zero</em> arguments. That is, <code>Applicative</code> functors support a lifting
1408−operation for any number of function arguments.</p>
1409−<p>Instances must satisfy the following laws in addition to the <code>Apply</code>
1412−<li>Identity: <code>(pure identity) <*> v = v</code></li>
1413−<li>Composition: <code>pure (<<<) <*> f <*> g <*> h = f <*> (g <*> h)</code></li>
1414−<li>Homomorphism: <code>(pure f) <*> (pure x) = pure (f x)</code></li>
1415−<li>Interchange: <code>u <*> (pure y) = (pure (_ $ y)) <*> u</code></li>
1417−<h4>Members</h4><ul><li id="v:pure"><code><a href="Control.Alternative.html#v:pure" title="Control.Alternative.pure"><span class="ident">pure</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a<span class="syntax">.</span> a <span class="syntax">-></span> f a</code></li></ul><h4>Instances</h4><ul><li id="v:applicativeFn"><code><a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> <span class="syntax">(</span><a href="Prim.html#t:Function" title="Prim.Function"><span class="ctor">Function</span></a> r<span class="syntax">)</span></code></li><li id="v:applicativeArray"><code><a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li><li id="v:applicativeProxy"><code><a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> <a href="Type.Proxy.html#t:Proxy" title="Type.Proxy.Proxy"><span class="ctor">Proxy</span></a></code></li></ul></div></div><div class="decl" id="v:when"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:when">#</a><span>when</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Alternative.html#v:when" title="Control.Alternative.when"><span class="ident">when</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>m<span class="syntax">.</span> <a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> m <span class="syntax">=></span> <a href="Prim.html#t:Boolean" title="Prim.Boolean"><span class="ctor">Boolean</span></a> <span class="syntax">-></span> m <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a> <span class="syntax">-></span> m <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a></code></pre><p>Perform an applicative action when a condition is true.</p>
1418−</div></div><div class="decl" id="v:unless"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:unless">#</a><span>unless</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Alternative.html#v:unless" title="Control.Alternative.unless"><span class="ident">unless</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>m<span class="syntax">.</span> <a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> m <span class="syntax">=></span> <a href="Prim.html#t:Boolean" title="Prim.Boolean"><span class="ctor">Boolean</span></a> <span class="syntax">-></span> m <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a> <span class="syntax">-></span> m <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a></code></pre><p>Perform an applicative action unless a condition is true.</p>
1419−</div></div><div class="decl" id="v:liftA1"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:liftA1">#</a><span>liftA1</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Alternative.html#v:liftA1" title="Control.Alternative.liftA1"><span class="ident">liftA1</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>f <span class="syntax"></span>a <span class="syntax"></span>b<span class="syntax">.</span> <a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> f <span class="syntax">=></span> <span class="syntax">(</span>a <span class="syntax">-></span> b<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b</code></pre><p><code>liftA1</code> provides a default implementation of <code>(<$>)</code> for any
1420−<code>Applicative</code> functor, without using <code>(<$>)</code> as provided
1421−by the <code>Functor</code>-<code>Applicative</code> superclass
1423−<p><code>liftA1</code> can therefore be used to write <code>Functor</code> instances
1425−<pre class="purescript"><code>instance functorF :: Functor F where
1428−</div></div><h2 class="re-exports">Re-exports from <a href="Control.Apply.html">Control.Apply</a></h2><div class="decl" id="t:Apply"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Apply">#</a><span>Apply</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Alternative.html#t:Apply" title="Control.Alternative.Apply"><span class="ctor">Apply</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <span class="syntax">(</span><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> f<span class="syntax">)</span> <span class="syntax"><=</span> <a href="Control.Alternative.html#t:Apply" title="Control.Alternative.Apply"><span class="ctor">Apply</span></a> f <span class="keyword">where</span></code></pre><p>The <code>Apply</code> class provides the <code>(<*>)</code> which is used to apply a function
1429−to an argument under a type constructor.</p>
1430−<p><code>Apply</code> can be used to lift functions of two or more arguments to work on
1431−values wrapped with the type constructor <code>f</code>. It might also be understood
1432−in terms of the <code>lift2</code> function:</p>
1433−<pre class="purescript"><code>lift2 :: forall f a b c. Apply f => (a -> b -> c) -> f a -> f b -> f c
1434−lift2 f a b = f <$> a <*> b
1436−<p><code>(<*>)</code> is recovered from <code>lift2</code> as <code>lift2 ($)</code>. That is, <code>(<*>)</code> lifts
1437−the function application operator <code>($)</code> to arguments wrapped with the
1438−type constructor <code>f</code>.</p>
1439−<p>Put differently...</p>
1441− functionTakingNArguments <$> computationProducingArg1
1442− <*> computationProducingArg2
1444− <*> computationProducingArgN
1446−<p>Instances must satisfy the following law in addition to the <code>Functor</code>
1449−<li>Associative composition: <code>(<<<) <$> f <*> g <*> h = f <*> (g <*> h)</code></li>
1451−<p>Formally, <code>Apply</code> represents a strong lax semi-monoidal endofunctor.</p>
1452−<h4>Members</h4><ul><li id="v:apply"><code><a href="Control.Alternative.html#v:apply" title="Control.Alternative.apply"><span class="ident">apply</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b<span class="syntax">.</span> f <span class="syntax">(</span>a <span class="syntax">-></span> b<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b</code></li></ul><h4>Instances</h4><ul><li id="v:applyFn"><code><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> <span class="syntax">(</span><a href="Prim.html#t:Function" title="Prim.Function"><span class="ctor">Function</span></a> r<span class="syntax">)</span></code></li><li id="v:applyArray"><code><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li><li id="v:applyProxy"><code><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> <a href="Type.Proxy.html#t:Proxy" title="Type.Proxy.Proxy"><span class="ctor">Proxy</span></a></code></li></ul></div></div><div class="decl" id="v:(<*>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<*>)">#</a><span>(<*>)</span> </h3><div class="decl__body"><p>Operator alias for Control.Apply.apply <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(<*)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<*)">#</a><span>(<*)</span> </h3><div class="decl__body"><p>Operator alias for Control.Apply.applyFirst <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(*>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(*>)">#</a><span>(*>)</span> </h3><div class="decl__body"><p>Operator alias for Control.Apply.applySecond <em>(left-associative / precedence 4)</em></p></div></div><h2 class="re-exports">Re-exports from <a href="Control.Plus.html">Control.Plus</a></h2><div class="decl" id="t:Plus"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Plus">#</a><span>Plus</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Alternative.html#t:Plus" title="Control.Alternative.Plus"><span class="ctor">Plus</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <span class="syntax">(</span><a href="Control.Alt.html#t:Alt" title="Control.Alt.Alt"><span class="ctor">Alt</span></a> f<span class="syntax">)</span> <span class="syntax"><=</span> <a href="Control.Alternative.html#t:Plus" title="Control.Alternative.Plus"><span class="ctor">Plus</span></a> f <span class="keyword">where</span></code></pre><p>The <code>Plus</code> type class extends the <code>Alt</code> type class with a value that
1453−should be the left and right identity for <code>(<|>)</code>.</p>
1454−<p>It is similar to <code>Monoid</code>, except that it applies to types of
1455−kind <code>* -> *</code>, like <code>Array</code> or <code>List</code>, rather than concrete types like
1456−<code>String</code> or <code>Number</code>.</p>
1457−<p><code>Plus</code> instances should satisfy the following laws:</p>
1459−<li>Left identity: <code>empty <|> x == x</code></li>
1460−<li>Right identity: <code>x <|> empty == x</code></li>
1461−<li>Annihilation: <code>f <$> empty == empty</code></li>
1463−<h4>Members</h4><ul><li id="v:empty"><code><a href="Control.Alternative.html#v:empty" title="Control.Alternative.empty"><span class="ident">empty</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a<span class="syntax">.</span> f a</code></li></ul><h4>Instances</h4><ul><li id="v:plusArray"><code><a href="Control.Plus.html#t:Plus" title="Control.Plus.Plus"><span class="ctor">Plus</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li></ul></div></div><h2 class="re-exports">Re-exports from <a href="Data.Functor.html">Data.Functor</a></h2><div class="decl" id="t:Functor"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Functor">#</a><span>Functor</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Alternative.html#t:Functor" title="Control.Alternative.Functor"><span class="ctor">Functor</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <a href="Control.Alternative.html#t:Functor" title="Control.Alternative.Functor"><span class="ctor">Functor</span></a> f <span class="keyword">where</span></code></pre><p>A <code>Functor</code> is a type constructor which supports a mapping operation
1464−<code>map</code>.</p>
1465−<p><code>map</code> can be used to turn functions <code>a -> b</code> into functions
1466−<code>f a -> f b</code> whose argument and return types use the type constructor <code>f</code>
1467−to represent some computational context.</p>
1468−<p>Instances must satisfy the following laws:</p>
1470−<li>Identity: <code>map identity = identity</code></li>
1471−<li>Composition: <code>map (f <<< g) = map f <<< map g</code></li>
1473−<h4>Members</h4><ul><li id="v:map"><code><a href="Control.Alternative.html#v:map" title="Control.Alternative.map"><span class="ident">map</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b<span class="syntax">.</span> <span class="syntax">(</span>a <span class="syntax">-></span> b<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b</code></li></ul><h4>Instances</h4><ul><li id="v:functorFn"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <span class="syntax">(</span><a href="Prim.html#t:Function" title="Prim.Function"><span class="ctor">Function</span></a> r<span class="syntax">)</span></code></li><li id="v:functorArray"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li><li id="v:functorProxy"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <a href="Type.Proxy.html#t:Proxy" title="Type.Proxy.Proxy"><span class="ctor">Proxy</span></a></code></li></ul></div></div><div class="decl" id="v:void"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:void">#</a><span>void</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Alternative.html#v:void" title="Control.Alternative.void"><span class="ident">void</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>f <span class="syntax"></span>a<span class="syntax">.</span> <a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> f <span class="syntax">=></span> f a <span class="syntax">-></span> f <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a></code></pre><p>The <code>void</code> function is used to ignore the type wrapped by a
1474−<code>Functor</code>, replacing it with <code>Unit</code> and keeping only the type
1475−information provided by the type constructor itself.</p>
1476−<p><code>void</code> is often useful when using <code>do</code> notation to change the return type
1477−of a monadic computation:</p>
1478−<pre class="purescript"><code>main = forE 1 10 \n -> void do
1482−</div></div><div class="decl" id="v:(<$>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<$>)">#</a><span>(<$>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.map <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(<$)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<$)">#</a><span>(<$)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.voidRight <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(<#>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<#>)">#</a><span>(<#>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.mapFlipped <em>(left-associative / precedence 1)</em></p></div></div><div class="decl" id="v:($>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:($>)">#</a><span>($>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.voidLeft <em>(left-associative / precedence 4)</em></p></div></div></div><div class="col col--aside"><h3>Modules</h3><ul><li><a href="Ansi.Codes.html">Ansi.Codes</a></li><li><a href="Ansi.Output.html">Ansi.Output</a></li><li><a href="Bolson.Control.html">Bolson.Control</a></li><li><a href="Bolson.Core.html">Bolson.Core</a></li><li><a href="Control.Alt.html">Control.Alt</a></li><li><a href="Control.Alternative.html">Control.Alternative</a></li><li><a href="Control.Applicative.html">Control.Applicative</a></li><li><a href="Control.Apply.html">Control.Apply</a></li><li><a href="Control.Biapplicative.html">Control.Biapplicative</a></li><li><a href="Control.Biapply.html">Control.Biapply</a></li><li><a href="Control.Bind.html">Control.Bind</a></li><li><a href="Control.Category.html">Control.Category</a></li><li><a href="Control.Comonad.html">Control.Comonad</a></li><li><a href="Control.Comonad.Cofree.html">Control.Comonad.Cofree</a></li><li><a href="Control.Comonad.Cofree.Class.html">Control.Comonad.Cofree.Class</a></li><li><a href="Control.Comonad.Env.html">Control.Comonad.Env</a></li><li><a href="Control.Comonad.Env.Class.html">Control.Comonad.Env.Class</a></li><li><a href="Control.Comonad.Env.Trans.html">Control.Comonad.Env.Trans</a></li><li><a href="Control.Comonad.Store.html">Control.Comonad.Store</a></li><li><a href="Control.Comonad.Store.Class.html">Control.Comonad.Store.Class</a></li><li><a href="Control.Comonad.Store.Trans.html">Control.Comonad.Store.Trans</a></li><li><a href="Control.Comonad.Traced.html">Control.Comonad.Traced</a></li><li><a href="Control.Comonad.Traced.Class.html">Control.Comonad.Traced.Class</a></li><li><a href="Control.Comonad.Traced.Trans.html">Control.Comonad.Traced.Trans</a></li><li><a href="Control.Comonad.Trans.Class.html">Control.Comonad.Trans.Class</a></li><li><a href="Control.Extend.html">Control.Extend</a></li><li><a href="Control.Lazy.html">Control.Lazy</a></li><li><a href="Control.Monad.html">Control.Monad</a></li><li><a href="Control.Monad.Cont.html">Control.Monad.Cont</a></li><li><a href="Control.Monad.Cont.Class.html">Control.Monad.Cont.Class</a></li><li><a href="Control.Monad.Cont.Trans.html">Control.Monad.Cont.Trans</a></li><li><a href="Control.Monad.Error.Class.html">Control.Monad.Error.Class</a></li><li><a href="Control.Monad.Except.html">Control.Monad.Except</a></li><li><a href="Control.Monad.Except.Trans.html">Control.Monad.Except.Trans</a></li><li><a href="Control.Monad.Fork.Class.html">Control.Monad.Fork.Class</a></li><li><a href="Control.Monad.Free.html">Control.Monad.Free</a></li><li><a href="Control.Monad.Free.Class.html">Control.Monad.Free.Class</a></li><li><a href="Control.Monad.Gen.html">Control.Monad.Gen</a></li><li><a href="Control.Monad.Gen.Class.html">Control.Monad.Gen.Class</a></li><li><a href="Control.Monad.Gen.Common.html">Control.Monad.Gen.Common</a></li><li><a href="Control.Monad.Identity.Trans.html">Control.Monad.Identity.Trans</a></li><li><a href="Control.Monad.List.Trans.html">Control.Monad.List.Trans</a></li><li><a href="Control.Monad.Maybe.Trans.html">Control.Monad.Maybe.Trans</a></li><li><a href="Control.Monad.Morph.html">Control.Monad.Morph</a></li><li><a href="Control.Monad.RWS.html">Control.Monad.RWS</a></li><li><a href="Control.Monad.RWS.Trans.html">Control.Monad.RWS.Trans</a></li><li><a href="Control.Monad.Reader.html">Control.Monad.Reader</a></li><li><a href="Control.Monad.Reader.Class.html">Control.Monad.Reader.Class</a></li><li><a href="Control.Monad.Reader.Trans.html">Control.Monad.Reader.Trans</a></li><li><a href="Control.Monad.Rec.Class.html">Control.Monad.Rec.Class</a></li><li><a href="Control.Monad.ST.html">Control.Monad.ST</a></li><li><a href="Control.Monad.ST.Class.html">Control.Monad.ST.Class</a></li><li><a href="Control.Monad.ST.Global.html">Control.Monad.ST.Global</a></li><li><a href="Control.Monad.ST.Internal.html">Control.Monad.ST.Internal</a></li><li><a href="Control.Monad.ST.Ref.html">Control.Monad.ST.Ref</a></li><li><a href="Control.Monad.ST.Uncurried.html">Control.Monad.ST.Uncurried</a></li><li><a href="Control.Monad.State.html">Control.Monad.State</a></li><li><a href="Control.Monad.State.Class.html">Control.Monad.State.Class</a></li><li><a href="Control.Monad.State.Trans.html">Control.Monad.State.Trans</a></li><li><a href="Control.Monad.Trampoline.html">Control.Monad.Trampoline</a></li><li><a href="Control.Monad.Trans.Class.html">Control.Monad.Trans.Class</a></li><li><a href="Control.Monad.Writer.html">Control.Monad.Writer</a></li><li><a href="Control.Monad.Writer.Class.html">Control.Monad.Writer.Class</a></li><li><a href="Control.Monad.Writer.Trans.html">Control.Monad.Writer.Trans</a></li><li><a href="Control.MonadPlus.html">Control.MonadPlus</a></li><li><a href="Control.Parallel.html">Control.Parallel</a></li><li><a href="Control.Parallel.Class.html">Control.Parallel.Class</a></li><li><a href="Control.Plus.html">Control.Plus</a></li><li><a href="Control.Semigroupoid.html">Control.Semigroupoid</a></li><li><a href="Data.Array.html">Data.Array</a></li><li><a href="Data.Array.NonEmpty.html">Data.Array.NonEmpty</a></li><li><a href="Data.Array.NonEmpty.Internal.html">Data.Array.NonEmpty.Internal</a></li><li><a href="Data.Array.Partial.html">Data.Array.Partial</a></li><li><a href="Data.Array.ST.html">Data.Array.ST</a></li><li><a href="Data.Array.ST.Iterator.html">Data.Array.ST.Iterator</a></li><li><a href="Data.Array.ST.Partial.html">Data.Array.ST.Partial</a></li><li><a href="Data.ArrayBuffer.Types.html">Data.ArrayBuffer.Types</a></li><li><a href="Data.Bifoldable.html">Data.Bifoldable</a></li><li><a href="Data.Bifunctor.html">Data.Bifunctor</a></li><li><a href="Data.Bifunctor.Join.html">Data.Bifunctor.Join</a></li><li><a href="Data.Bitraversable.html">Data.Bitraversable</a></li><li><a href="Data.Boolean.html">Data.Boolean</a></li><li><a href="Data.BooleanAlgebra.html">Data.BooleanAlgebra</a></li><li><a href="Data.Bounded.html">Data.Bounded</a></li><li><a href="Data.Bounded.Generic.html">Data.Bounded.Generic</a></li><li><a href="Data.CatList.html">Data.CatList</a></li><li><a href="Data.CatQueue.html">Data.CatQueue</a></li><li><a href="Data.Char.html">Data.Char</a></li><li><a href="Data.Char.Gen.html">Data.Char.Gen</a></li><li><a href="Data.CommutativeRing.html">Data.CommutativeRing</a></li><li><a href="Data.Compactable.html">Data.Compactable</a></li><li><a href="Data.Comparison.html">Data.Comparison</a></li><li><a href="Data.Const.html">Data.Const</a></li><li><a href="Data.Coyoneda.html">Data.Coyoneda</a></li><li><a href="Data.Date.html">Data.Date</a></li><li><a href="Data.Date.Component.html">Data.Date.Component</a></li><li><a href="Data.Date.Component.Gen.html">Data.Date.Component.Gen</a></li><li><a href="Data.Date.Gen.html">Data.Date.Gen</a></li><li><a href="Data.DateTime.html">Data.DateTime</a></li><li><a href="Data.DateTime.Gen.html">Data.DateTime.Gen</a></li><li><a href="Data.DateTime.Instant.html">Data.DateTime.Instant</a></li><li><a href="Data.Decidable.html">Data.Decidable</a></li><li><a href="Data.Decide.html">Data.Decide</a></li><li><a href="Data.Distributive.html">Data.Distributive</a></li><li><a href="Data.Divide.html">Data.Divide</a></li><li><a href="Data.Divisible.html">Data.Divisible</a></li><li><a href="Data.DivisionRing.html">Data.DivisionRing</a></li><li><a href="Data.Either.html">Data.Either</a></li><li><a href="Data.Either.Inject.html">Data.Either.Inject</a></li><li><a href="Data.Either.Nested.html">Data.Either.Nested</a></li><li><a href="Data.Enum.html">Data.Enum</a></li><li><a href="Data.Enum.Gen.html">Data.Enum.Gen</a></li><li><a href="Data.Enum.Generic.html">Data.Enum.Generic</a></li><li><a href="Data.Eq.html">Data.Eq</a></li><li><a href="Data.Eq.Generic.html">Data.Eq.Generic</a></li><li><a href="Data.Equivalence.html">Data.Equivalence</a></li><li><a href="Data.EuclideanRing.html">Data.EuclideanRing</a></li><li><a href="Data.Exists.html">Data.Exists</a></li><li><a href="Data.FastVect.Common.html">Data.FastVect.Common</a></li><li><a href="Data.FastVect.Common.Matrix.html">Data.FastVect.Common.Matrix</a></li><li><a href="Data.FastVect.FastVect.html">Data.FastVect.FastVect</a></li><li><a href="Data.FastVect.FastVect.Matrix.html">Data.FastVect.FastVect.Matrix</a></li><li><a href="Data.FastVect.MinLenVect.html">Data.FastVect.MinLenVect</a></li><li><a href="Data.FastVect.Sparse.Read.html">Data.FastVect.Sparse.Read</a></li><li><a href="Data.FastVect.Sparse.Write.html">Data.FastVect.Sparse.Write</a></li><li><a href="Data.Field.html">Data.Field</a></li><li><a href="Data.Filterable.html">Data.Filterable</a></li><li><a href="Data.Foldable.html">Data.Foldable</a></li><li><a href="Data.FoldableWithIndex.html">Data.FoldableWithIndex</a></li><li><a href="Data.Function.html">Data.Function</a></li><li><a href="Data.Function.Uncurried.html">Data.Function.Uncurried</a></li><li><a href="Data.Functor.html">Data.Functor</a></li><li><a href="Data.Functor.App.html">Data.Functor.App</a></li><li><a href="Data.Functor.Clown.html">Data.Functor.Clown</a></li><li><a href="Data.Functor.Compose.html">Data.Functor.Compose</a></li><li><a href="Data.Functor.Contravariant.html">Data.Functor.Contravariant</a></li><li><a href="Data.Functor.Coproduct.html">Data.Functor.Coproduct</a></li><li><a href="Data.Functor.Coproduct.Inject.html">Data.Functor.Coproduct.Inject</a></li><li><a href="Data.Functor.Coproduct.Nested.html">Data.Functor.Coproduct.Nested</a></li><li><a href="Data.Functor.Costar.html">Data.Functor.Costar</a></li><li><a href="Data.Functor.Flip.html">Data.Functor.Flip</a></li><li><a href="Data.Functor.Invariant.html">Data.Functor.Invariant</a></li><li><a href="Data.Functor.Joker.html">Data.Functor.Joker</a></li><li><a href="Data.Functor.Product.html">Data.Functor.Product</a></li><li><a href="Data.Functor.Product.Nested.html">Data.Functor.Product.Nested</a></li><li><a href="Data.Functor.Product2.html">Data.Functor.Product2</a></li><li><a href="Data.Functor.Variant.html">Data.Functor.Variant</a></li><li><a href="Data.FunctorWithIndex.html">Data.FunctorWithIndex</a></li><li><a href="Data.Generic.Rep.html">Data.Generic.Rep</a></li><li><a href="Data.HeytingAlgebra.html">Data.HeytingAlgebra</a></li><li><a href="Data.HeytingAlgebra.Generic.html">Data.HeytingAlgebra.Generic</a></li><li><a href="Data.Identity.html">Data.Identity</a></li><li><a href="Data.Int.html">Data.Int</a></li><li><a href="Data.Int.Bits.html">Data.Int.Bits</a></li><li><a href="Data.Interval.html">Data.Interval</a></li><li><a href="Data.Interval.Duration.html">Data.Interval.Duration</a></li><li><a href="Data.Interval.Duration.Iso.html">Data.Interval.Duration.Iso</a></li><li><a href="Data.JSDate.html">Data.JSDate</a></li><li><a href="Data.Lazy.html">Data.Lazy</a></li><li><a href="Data.List.html">Data.List</a></li><li><a href="Data.List.Internal.html">Data.List.Internal</a></li><li><a href="Data.List.Lazy.html">Data.List.Lazy</a></li><li><a href="Data.List.Lazy.NonEmpty.html">Data.List.Lazy.NonEmpty</a></li><li><a href="Data.List.Lazy.Types.html">Data.List.Lazy.Types</a></li><li><a href="Data.List.NonEmpty.html">Data.List.NonEmpty</a></li><li><a href="Data.List.Partial.html">Data.List.Partial</a></li><li><a href="Data.List.Types.html">Data.List.Types</a></li><li><a href="Data.List.ZipList.html">Data.List.ZipList</a></li><li><a href="Data.Map.html">Data.Map</a></li><li><a href="Data.Map.Gen.html">Data.Map.Gen</a></li><li><a href="Data.Map.Internal.html">Data.Map.Internal</a></li><li><a href="Data.Maybe.html">Data.Maybe</a></li><li><a href="Data.Maybe.First.html">Data.Maybe.First</a></li><li><a href="Data.Maybe.Last.html">Data.Maybe.Last</a></li><li><a href="Data.MediaType.html">Data.MediaType</a></li><li><a href="Data.MediaType.Common.html">Data.MediaType.Common</a></li><li><a href="Data.Monoid.html">Data.Monoid</a></li><li><a href="Data.Monoid.Additive.html">Data.Monoid.Additive</a></li><li><a href="Data.Monoid.Alternate.html">Data.Monoid.Alternate</a></li><li><a href="Data.Monoid.Conj.html">Data.Monoid.Conj</a></li><li><a href="Data.Monoid.Disj.html">Data.Monoid.Disj</a></li><li><a href="Data.Monoid.Dual.html">Data.Monoid.Dual</a></li><li><a href="Data.Monoid.Endo.html">Data.Monoid.Endo</a></li><li><a href="Data.Monoid.Generic.html">Data.Monoid.Generic</a></li><li><a href="Data.Monoid.Multiplicative.html">Data.Monoid.Multiplicative</a></li><li><a href="Data.NaturalTransformation.html">Data.NaturalTransformation</a></li><li><a href="Data.Newtype.html">Data.Newtype</a></li><li><a href="Data.NonEmpty.html">Data.NonEmpty</a></li><li><a href="Data.Nullable.html">Data.Nullable</a></li><li><a href="Data.Number.html">Data.Number</a></li><li><a href="Data.Number.Approximate.html">Data.Number.Approximate</a></li><li><a href="Data.Number.Format.html">Data.Number.Format</a></li><li><a href="Data.Op.html">Data.Op</a></li><li><a href="Data.Ord.html">Data.Ord</a></li><li><a href="Data.Ord.Down.html">Data.Ord.Down</a></li><li><a href="Data.Ord.Generic.html">Data.Ord.Generic</a></li><li><a href="Data.Ord.Max.html">Data.Ord.Max</a></li><li><a href="Data.Ord.Min.html">Data.Ord.Min</a></li><li><a href="Data.Ordering.html">Data.Ordering</a></li><li><a href="Data.Posix.html">Data.Posix</a></li><li><a href="Data.Posix.Signal.html">Data.Posix.Signal</a></li><li><a href="Data.Predicate.html">Data.Predicate</a></li><li><a href="Data.Profunctor.html">Data.Profunctor</a></li><li><a href="Data.Profunctor.Choice.html">Data.Profunctor.Choice</a></li><li><a href="Data.Profunctor.Closed.html">Data.Profunctor.Closed</a></li><li><a href="Data.Profunctor.Cochoice.html">Data.Profunctor.Cochoice</a></li><li><a href="Data.Profunctor.Costrong.html">Data.Profunctor.Costrong</a></li><li><a href="Data.Profunctor.Join.html">Data.Profunctor.Join</a></li><li><a href="Data.Profunctor.Split.html">Data.Profunctor.Split</a></li><li><a href="Data.Profunctor.Star.html">Data.Profunctor.Star</a></li><li><a href="Data.Profunctor.Strong.html">Data.Profunctor.Strong</a></li><li><a href="Data.Reflectable.html">Data.Reflectable</a></li><li><a href="Data.Ring.html">Data.Ring</a></li><li><a href="Data.Ring.Generic.html">Data.Ring.Generic</a></li><li><a href="Data.Semigroup.html">Data.Semigroup</a></li><li><a href="Data.Semigroup.First.html">Data.Semigroup.First</a></li><li><a href="Data.Semigroup.Foldable.html">Data.Semigroup.Foldable</a></li><li><a href="Data.Semigroup.Generic.html">Data.Semigroup.Generic</a></li><li><a href="Data.Semigroup.Last.html">Data.Semigroup.Last</a></li><li><a href="Data.Semigroup.Traversable.html">Data.Semigroup.Traversable</a></li><li><a href="Data.Semiring.html">Data.Semiring</a></li><li><a href="Data.Semiring.Generic.html">Data.Semiring.Generic</a></li><li><a href="Data.Set.html">Data.Set</a></li><li><a href="Data.Set.NonEmpty.html">Data.Set.NonEmpty</a></li><li><a href="Data.Show.html">Data.Show</a></li><li><a href="Data.Show.Generic.html">Data.Show.Generic</a></li><li><a href="Data.String.html">Data.String</a></li><li><a href="Data.String.CaseInsensitive.html">Data.String.CaseInsensitive</a></li><li><a href="Data.String.CodePoints.html">Data.String.CodePoints</a></li><li><a href="Data.String.CodeUnits.html">Data.String.CodeUnits</a></li><li><a href="Data.String.Common.html">Data.String.Common</a></li><li><a href="Data.String.Gen.html">Data.String.Gen</a></li><li><a href="Data.String.NonEmpty.html">Data.String.NonEmpty</a></li><li><a href="Data.String.NonEmpty.CaseInsensitive.html">Data.String.NonEmpty.CaseInsensitive</a></li><li><a href="Data.String.NonEmpty.CodePoints.html">Data.String.NonEmpty.CodePoints</a></li><li><a href="Data.String.NonEmpty.CodeUnits.html">Data.String.NonEmpty.CodeUnits</a></li><li><a href="Data.String.NonEmpty.Internal.html">Data.String.NonEmpty.Internal</a></li><li><a href="Data.String.Pattern.html">Data.String.Pattern</a></li><li><a href="Data.String.Regex.html">Data.String.Regex</a></li><li><a href="Data.String.Regex.Flags.html">Data.String.Regex.Flags</a></li><li><a href="Data.String.Regex.Unsafe.html">Data.String.Regex.Unsafe</a></li><li><a href="Data.String.Unsafe.html">Data.String.Unsafe</a></li><li><a href="Data.Symbol.html">Data.Symbol</a></li><li><a href="Data.Time.html">Data.Time</a></li><li><a href="Data.Time.Component.html">Data.Time.Component</a></li><li><a href="Data.Time.Component.Gen.html">Data.Time.Component.Gen</a></li><li><a href="Data.Time.Duration.html">Data.Time.Duration</a></li><li><a href="Data.Time.Duration.Gen.html">Data.Time.Duration.Gen</a></li><li><a href="Data.Time.Gen.html">Data.Time.Gen</a></li><li><a href="Data.Traversable.html">Data.Traversable</a></li><li><a href="Data.Traversable.Accum.html">Data.Traversable.Accum</a></li><li><a href="Data.Traversable.Accum.Internal.html">Data.Traversable.Accum.Internal</a></li><li><a href="Data.TraversableWithIndex.html">Data.TraversableWithIndex</a></li><li><a href="Data.Tuple.html">Data.Tuple</a></li><li><a href="Data.Tuple.Nested.html">Data.Tuple.Nested</a></li><li><a href="Data.Unfoldable.html">Data.Unfoldable</a></li><li><a href="Data.Unfoldable1.html">Data.Unfoldable1</a></li><li><a href="Data.Unit.html">Data.Unit</a></li><li><a href="Data.Variant.html">Data.Variant</a></li><li><a href="Data.Variant.Internal.html">Data.Variant.Internal</a></li><li><a href="Data.Void.html">Data.Void</a></li><li><a href="Data.Witherable.html">Data.Witherable</a></li><li><a href="Data.Yoneda.html">Data.Yoneda</a></li><li><a href="Effect.html">Effect</a></li><li><a href="Effect.AVar.html">Effect.AVar</a></li><li><a href="Effect.Aff.html">Effect.Aff</a></li><li><a href="Effect.Aff.AVar.html">Effect.Aff.AVar</a></li><li><a href="Effect.Aff.Class.html">Effect.Aff.Class</a></li><li><a href="Effect.Aff.Compat.html">Effect.Aff.Compat</a></li><li><a href="Effect.Class.html">Effect.Class</a></li><li><a href="Effect.Class.Console.html">Effect.Class.Console</a></li><li><a href="Effect.Console.html">Effect.Console</a></li><li><a href="Effect.Exception.html">Effect.Exception</a></li><li><a href="Effect.Exception.Unsafe.html">Effect.Exception.Unsafe</a></li><li><a href="Effect.Now.html">Effect.Now</a></li><li><a href="Effect.Ref.html">Effect.Ref</a></li><li><a href="Effect.Timer.html">Effect.Timer</a></li><li><a href="Effect.Uncurried.html">Effect.Uncurried</a></li><li><a href="Effect.Unsafe.html">Effect.Unsafe</a></li><li><a href="FRP.Behavior.html">FRP.Behavior</a></li><li><a href="FRP.Behavior.Keyboard.html">FRP.Behavior.Keyboard</a></li><li><a href="FRP.Behavior.Mouse.html">FRP.Behavior.Mouse</a></li><li><a href="FRP.Behavior.Time.html">FRP.Behavior.Time</a></li><li><a href="FRP.Event.html">FRP.Event</a></li><li><a href="FRP.Event.AnimationFrame.html">FRP.Event.AnimationFrame</a></li><li><a href="FRP.Event.Class.html">FRP.Event.Class</a></li><li><a href="FRP.Event.Keyboard.html">FRP.Event.Keyboard</a></li><li><a href="FRP.Event.Mouse.html">FRP.Event.Mouse</a></li><li><a href="FRP.Event.Time.html">FRP.Event.Time</a></li><li><a href="FRP.Event.VBus.html">FRP.Event.VBus</a></li><li><a href="Foreign.html">Foreign</a></li><li><a href="Foreign.Index.html">Foreign.Index</a></li><li><a href="Foreign.Keys.html">Foreign.Keys</a></li><li><a href="Foreign.Object.html">Foreign.Object</a></li><li><a href="Foreign.Object.Gen.html">Foreign.Object.Gen</a></li><li><a href="Foreign.Object.ST.html">Foreign.Object.ST</a></li><li><a href="Foreign.Object.ST.Unsafe.html">Foreign.Object.ST.Unsafe</a></li><li><a href="Foreign.Object.Unsafe.html">Foreign.Object.Unsafe</a></li><li><a href="Heterogeneous.Folding.html">Heterogeneous.Folding</a></li><li><a href="Heterogeneous.Mapping.html">Heterogeneous.Mapping</a></li><li><a href="Node.Buffer.html">Node.Buffer</a></li><li><a href="Node.Buffer.Class.html">Node.Buffer.Class</a></li><li><a href="Node.Buffer.Constants.html">Node.Buffer.Constants</a></li><li><a href="Node.Buffer.Immutable.html">Node.Buffer.Immutable</a></li><li><a href="Node.Buffer.ST.html">Node.Buffer.ST</a></li><li><a href="Node.Buffer.Types.html">Node.Buffer.Types</a></li><li><a href="Node.Encoding.html">Node.Encoding</a></li><li><a href="Node.EventEmitter.html">Node.EventEmitter</a></li><li><a href="Node.EventEmitter.UtilTypes.html">Node.EventEmitter.UtilTypes</a></li><li><a href="Node.FS.html">Node.FS</a></li><li><a href="Node.FS.Aff.html">Node.FS.Aff</a></li><li><a href="Node.FS.Async.html">Node.FS.Async</a></li><li><a href="Node.FS.Constants.html">Node.FS.Constants</a></li><li><a href="Node.FS.Perms.html">Node.FS.Perms</a></li><li><a href="Node.FS.Stats.html">Node.FS.Stats</a></li><li><a href="Node.FS.Stream.html">Node.FS.Stream</a></li><li><a href="Node.FS.Sync.html">Node.FS.Sync</a></li><li><a href="Node.Path.html">Node.Path</a></li><li><a href="Node.Platform.html">Node.Platform</a></li><li><a href="Node.Process.html">Node.Process</a></li><li><a href="Node.Stream.html">Node.Stream</a></li><li><a href="Node.Stream.Aff.html">Node.Stream.Aff</a></li><li><a href="Node.Symbol.html">Node.Symbol</a></li><li><a href="Partial.html">Partial</a></li><li><a href="Partial.Unsafe.html">Partial.Unsafe</a></li><li><a href="Performance.Minibench.html">Performance.Minibench</a></li><li><a href="Pipes.html">Pipes</a></li><li><a href="Pipes.Core.html">Pipes.Core</a></li><li><a href="Pipes.Internal.html">Pipes.Internal</a></li><li><a href="Pipes.ListT.html">Pipes.ListT</a></li><li><a href="Pipes.Prelude.html">Pipes.Prelude</a></li><li><a href="Prelude.html">Prelude</a></li><li><a href="Prim.html">Prim</a></li><li><a href="Prim.Boolean.html">Prim.Boolean</a></li><li><a href="Prim.Coerce.html">Prim.Coerce</a></li><li><a href="Prim.Int.html">Prim.Int</a></li><li><a href="Prim.Ordering.html">Prim.Ordering</a></li><li><a href="Prim.Row.html">Prim.Row</a></li><li><a href="Prim.RowList.html">Prim.RowList</a></li><li><a href="Prim.Symbol.html">Prim.Symbol</a></li><li><a href="Prim.TypeError.html">Prim.TypeError</a></li><li><a href="Record.html">Record</a></li><li><a href="Record.Builder.html">Record.Builder</a></li><li><a href="Record.Studio.html">Record.Studio</a></li><li><a href="Record.Studio.Keys.html">Record.Studio.Keys</a></li><li><a href="Record.Studio.Map.html">Record.Studio.Map</a></li><li><a href="Record.Studio.MapKind.html">Record.Studio.MapKind</a></li><li><a href="Record.Studio.MapUniform.html">Record.Studio.MapUniform</a></li><li><a href="Record.Studio.Merge.html">Record.Studio.Merge</a></li><li><a href="Record.Studio.SameKeys.html">Record.Studio.SameKeys</a></li><li><a href="Record.Studio.Sequence.html">Record.Studio.Sequence</a></li><li><a href="Record.Studio.Shrink.html">Record.Studio.Shrink</a></li><li><a href="Record.Studio.SingletonRecord.html">Record.Studio.SingletonRecord</a></li><li><a href="Record.Unsafe.html">Record.Unsafe</a></li><li><a href="Record.Unsafe.Union.html">Record.Unsafe.Union</a></li><li><a href="Safe.Coerce.html">Safe.Coerce</a></li><li><a href="Spago.Generated.BuildInfo.html">Spago.Generated.BuildInfo</a></li><li><a href="Test.Spec.html">Test.Spec</a></li><li><a href="Test.Spec.Assertions.html">Test.Spec.Assertions</a></li><li><a href="Test.Spec.Assertions.String.html">Test.Spec.Assertions.String</a></li><li><a href="Test.Spec.Config.html">Test.Spec.Config</a></li><li><a href="Test.Spec.Console.html">Test.Spec.Console</a></li><li><a href="Test.Spec.Reporter.html">Test.Spec.Reporter</a></li><li><a href="Test.Spec.Reporter.Base.html">Test.Spec.Reporter.Base</a></li><li><a href="Test.Spec.Reporter.Console.html">Test.Spec.Reporter.Console</a></li><li><a href="Test.Spec.Reporter.Dot.html">Test.Spec.Reporter.Dot</a></li><li><a href="Test.Spec.Reporter.Spec.html">Test.Spec.Reporter.Spec</a></li><li><a href="Test.Spec.Reporter.Tap.html">Test.Spec.Reporter.Tap</a></li><li><a href="Test.Spec.Reporter.TeamCity.html">Test.Spec.Reporter.TeamCity</a></li><li><a href="Test.Spec.Result.html">Test.Spec.Result</a></li><li><a href="Test.Spec.Runner.html">Test.Spec.Runner</a></li><li><a href="Test.Spec.Runner.Event.html">Test.Spec.Runner.Event</a></li><li><a href="Test.Spec.Speed.html">Test.Spec.Speed</a></li><li><a href="Test.Spec.Style.html">Test.Spec.Style</a></li><li><a href="Test.Spec.Summary.html">Test.Spec.Summary</a></li><li><a href="Test.Spec.Tree.html">Test.Spec.Tree</a></li><li><a href="Type.Data.Boolean.html">Type.Data.Boolean</a></li><li><a href="Type.Data.Ordering.html">Type.Data.Ordering</a></li><li><a href="Type.Data.Symbol.html">Type.Data.Symbol</a></li><li><a href="Type.Equality.html">Type.Equality</a></li><li><a href="Type.Function.html">Type.Function</a></li><li><a href="Type.Prelude.html">Type.Prelude</a></li><li><a href="Type.Proxy.html">Type.Proxy</a></li><li><a href="Type.Row.html">Type.Row</a></li><li><a href="Type.Row.Homogeneous.html">Type.Row.Homogeneous</a></li><li><a href="Type.RowList.html">Type.RowList</a></li><li><a href="Uncurried.RWSE.html">Uncurried.RWSE</a></li><li><a href="Uncurried.RWSET.html">Uncurried.RWSET</a></li><li><a href="Uncurried.Reader.html">Uncurried.Reader</a></li><li><a href="Uncurried.ReaderT.html">Uncurried.ReaderT</a></li><li><a href="Uncurried.State.html">Uncurried.State</a></li><li><a href="Uncurried.StateT.html">Uncurried.StateT</a></li><li><a href="Uncurried.Writer.html">Uncurried.Writer</a></li><li><a href="Uncurried.WriterT.html">Uncurried.WriterT</a></li><li><a href="Unsafe.Coerce.html">Unsafe.Coerce</a></li><li><a href="Unsafe.Reference.html">Unsafe.Reference</a></li><li><a href="Web.DOM.html">Web.DOM</a></li><li><a href="Web.DOM.CharacterData.html">Web.DOM.CharacterData</a></li><li><a href="Web.DOM.ChildNode.html">Web.DOM.ChildNode</a></li><li><a href="Web.DOM.Comment.html">Web.DOM.Comment</a></li><li><a href="Web.DOM.DOMTokenList.html">Web.DOM.DOMTokenList</a></li><li><a href="Web.DOM.Document.html">Web.DOM.Document</a></li><li><a href="Web.DOM.DocumentFragment.html">Web.DOM.DocumentFragment</a></li><li><a href="Web.DOM.DocumentType.html">Web.DOM.DocumentType</a></li><li><a href="Web.DOM.Element.html">Web.DOM.Element</a></li><li><a href="Web.DOM.HTMLCollection.html">Web.DOM.HTMLCollection</a></li><li><a href="Web.DOM.Internal.Types.html">Web.DOM.Internal.Types</a></li><li><a href="Web.DOM.MutationObserver.html">Web.DOM.MutationObserver</a></li><li><a href="Web.DOM.MutationRecord.html">Web.DOM.MutationRecord</a></li><li><a href="Web.DOM.Node.html">Web.DOM.Node</a></li><li><a href="Web.DOM.NodeList.html">Web.DOM.NodeList</a></li><li><a href="Web.DOM.NodeType.html">Web.DOM.NodeType</a></li><li><a href="Web.DOM.NonDocumentTypeChildNode.html">Web.DOM.NonDocumentTypeChildNode</a></li><li><a href="Web.DOM.NonElementParentNode.html">Web.DOM.NonElementParentNode</a></li><li><a href="Web.DOM.ParentNode.html">Web.DOM.ParentNode</a></li><li><a href="Web.DOM.ProcessingInstruction.html">Web.DOM.ProcessingInstruction</a></li><li><a href="Web.DOM.ShadowRoot.html">Web.DOM.ShadowRoot</a></li><li><a href="Web.DOM.Text.html">Web.DOM.Text</a></li><li><a href="Web.Event.CustomEvent.html">Web.Event.CustomEvent</a></li><li><a href="Web.Event.Event.html">Web.Event.Event</a></li><li><a href="Web.Event.EventPhase.html">Web.Event.EventPhase</a></li><li><a href="Web.Event.EventTarget.html">Web.Event.EventTarget</a></li><li><a href="Web.Event.Internal.Types.html">Web.Event.Internal.Types</a></li><li><a href="Web.File.Blob.html">Web.File.Blob</a></li><li><a href="Web.File.File.html">Web.File.File</a></li><li><a href="Web.File.FileList.html">Web.File.FileList</a></li><li><a href="Web.File.FileReader.html">Web.File.FileReader</a></li><li><a href="Web.File.FileReader.ReadyState.html">Web.File.FileReader.ReadyState</a></li><li><a href="Web.File.Url.html">Web.File.Url</a></li><li><a href="Web.HTML.html">Web.HTML</a></li><li><a href="Web.HTML.Common.html">Web.HTML.Common</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.html">Web.HTML.Event.BeforeUnloadEvent</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.EventTypes.html">Web.HTML.Event.BeforeUnloadEvent.EventTypes</a></li><li><a href="Web.HTML.Event.DataTransfer.html">Web.HTML.Event.DataTransfer</a></li><li><a href="Web.HTML.Event.DataTransfer.DataTransferItem.html">Web.HTML.Event.DataTransfer.DataTransferItem</a></li><li><a href="Web.HTML.Event.DragEvent.html">Web.HTML.Event.DragEvent</a></li><li><a href="Web.HTML.Event.DragEvent.EventTypes.html">Web.HTML.Event.DragEvent.EventTypes</a></li><li><a href="Web.HTML.Event.ErrorEvent.html">Web.HTML.Event.ErrorEvent</a></li><li><a href="Web.HTML.Event.EventTypes.html">Web.HTML.Event.EventTypes</a></li><li><a href="Web.HTML.Event.HashChangeEvent.html">Web.HTML.Event.HashChangeEvent</a></li><li><a href="Web.HTML.Event.HashChangeEvent.EventTypes.html">Web.HTML.Event.HashChangeEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.html">Web.HTML.Event.PageTransitionEvent</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.EventTypes.html">Web.HTML.Event.PageTransitionEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PopStateEvent.html">Web.HTML.Event.PopStateEvent</a></li><li><a href="Web.HTML.Event.PopStateEvent.EventTypes.html">Web.HTML.Event.PopStateEvent.EventTypes</a></li><li><a href="Web.HTML.Event.TrackEvent.html">Web.HTML.Event.TrackEvent</a></li><li><a href="Web.HTML.Event.TrackEvent.EventTypes.html">Web.HTML.Event.TrackEvent.EventTypes</a></li><li><a href="Web.HTML.HTMLAnchorElement.html">Web.HTML.HTMLAnchorElement</a></li><li><a href="Web.HTML.HTMLAreaElement.html">Web.HTML.HTMLAreaElement</a></li><li><a href="Web.HTML.HTMLAudioElement.html">Web.HTML.HTMLAudioElement</a></li><li><a href="Web.HTML.HTMLBRElement.html">Web.HTML.HTMLBRElement</a></li><li><a href="Web.HTML.HTMLBaseElement.html">Web.HTML.HTMLBaseElement</a></li><li><a href="Web.HTML.HTMLBodyElement.html">Web.HTML.HTMLBodyElement</a></li><li><a href="Web.HTML.HTMLButtonElement.html">Web.HTML.HTMLButtonElement</a></li><li><a href="Web.HTML.HTMLCanvasElement.html">Web.HTML.HTMLCanvasElement</a></li><li><a href="Web.HTML.HTMLDListElement.html">Web.HTML.HTMLDListElement</a></li><li><a href="Web.HTML.HTMLDataElement.html">Web.HTML.HTMLDataElement</a></li><li><a href="Web.HTML.HTMLDataListElement.html">Web.HTML.HTMLDataListElement</a></li><li><a href="Web.HTML.HTMLDivElement.html">Web.HTML.HTMLDivElement</a></li><li><a href="Web.HTML.HTMLDocument.html">Web.HTML.HTMLDocument</a></li><li><a href="Web.HTML.HTMLDocument.ReadyState.html">Web.HTML.HTMLDocument.ReadyState</a></li><li><a href="Web.HTML.HTMLDocument.VisibilityState.html">Web.HTML.HTMLDocument.VisibilityState</a></li><li><a href="Web.HTML.HTMLElement.html">Web.HTML.HTMLElement</a></li><li><a href="Web.HTML.HTMLEmbedElement.html">Web.HTML.HTMLEmbedElement</a></li><li><a href="Web.HTML.HTMLFieldSetElement.html">Web.HTML.HTMLFieldSetElement</a></li><li><a href="Web.HTML.HTMLFormElement.html">Web.HTML.HTMLFormElement</a></li><li><a href="Web.HTML.HTMLHRElement.html">Web.HTML.HTMLHRElement</a></li><li><a href="Web.HTML.HTMLHeadElement.html">Web.HTML.HTMLHeadElement</a></li><li><a href="Web.HTML.HTMLHeadingElement.html">Web.HTML.HTMLHeadingElement</a></li><li><a href="Web.HTML.HTMLHtmlElement.html">Web.HTML.HTMLHtmlElement</a></li><li><a href="Web.HTML.HTMLHyperlinkElementUtils.html">Web.HTML.HTMLHyperlinkElementUtils</a></li><li><a href="Web.HTML.HTMLIFrameElement.html">Web.HTML.HTMLIFrameElement</a></li><li><a href="Web.HTML.HTMLImageElement.html">Web.HTML.HTMLImageElement</a></li><li><a href="Web.HTML.HTMLImageElement.CORSMode.html">Web.HTML.HTMLImageElement.CORSMode</a></li><li><a href="Web.HTML.HTMLImageElement.DecodingHint.html">Web.HTML.HTMLImageElement.DecodingHint</a></li><li><a href="Web.HTML.HTMLImageElement.Laziness.html">Web.HTML.HTMLImageElement.Laziness</a></li><li><a href="Web.HTML.HTMLInputElement.html">Web.HTML.HTMLInputElement</a></li><li><a href="Web.HTML.HTMLKeygenElement.html">Web.HTML.HTMLKeygenElement</a></li><li><a href="Web.HTML.HTMLLIElement.html">Web.HTML.HTMLLIElement</a></li><li><a href="Web.HTML.HTMLLabelElement.html">Web.HTML.HTMLLabelElement</a></li><li><a href="Web.HTML.HTMLLegendElement.html">Web.HTML.HTMLLegendElement</a></li><li><a href="Web.HTML.HTMLLinkElement.html">Web.HTML.HTMLLinkElement</a></li><li><a href="Web.HTML.HTMLMapElement.html">Web.HTML.HTMLMapElement</a></li><li><a href="Web.HTML.HTMLMediaElement.html">Web.HTML.HTMLMediaElement</a></li><li><a href="Web.HTML.HTMLMediaElement.CanPlayType.html">Web.HTML.HTMLMediaElement.CanPlayType</a></li><li><a href="Web.HTML.HTMLMediaElement.NetworkState.html">Web.HTML.HTMLMediaElement.NetworkState</a></li><li><a href="Web.HTML.HTMLMediaElement.ReadyState.html">Web.HTML.HTMLMediaElement.ReadyState</a></li><li><a href="Web.HTML.HTMLMetaElement.html">Web.HTML.HTMLMetaElement</a></li><li><a href="Web.HTML.HTMLMeterElement.html">Web.HTML.HTMLMeterElement</a></li><li><a href="Web.HTML.HTMLModElement.html">Web.HTML.HTMLModElement</a></li><li><a href="Web.HTML.HTMLOListElement.html">Web.HTML.HTMLOListElement</a></li><li><a href="Web.HTML.HTMLObjectElement.html">Web.HTML.HTMLObjectElement</a></li><li><a href="Web.HTML.HTMLOptGroupElement.html">Web.HTML.HTMLOptGroupElement</a></li><li><a href="Web.HTML.HTMLOptionElement.html">Web.HTML.HTMLOptionElement</a></li><li><a href="Web.HTML.HTMLOutputElement.html">Web.HTML.HTMLOutputElement</a></li><li><a href="Web.HTML.HTMLParagraphElement.html">Web.HTML.HTMLParagraphElement</a></li><li><a href="Web.HTML.HTMLParamElement.html">Web.HTML.HTMLParamElement</a></li><li><a href="Web.HTML.HTMLPreElement.html">Web.HTML.HTMLPreElement</a></li><li><a href="Web.HTML.HTMLProgressElement.html">Web.HTML.HTMLProgressElement</a></li><li><a href="Web.HTML.HTMLQuoteElement.html">Web.HTML.HTMLQuoteElement</a></li><li><a href="Web.HTML.HTMLScriptElement.html">Web.HTML.HTMLScriptElement</a></li><li><a href="Web.HTML.HTMLSelectElement.html">Web.HTML.HTMLSelectElement</a></li><li><a href="Web.HTML.HTMLSourceElement.html">Web.HTML.HTMLSourceElement</a></li><li><a href="Web.HTML.HTMLSpanElement.html">Web.HTML.HTMLSpanElement</a></li><li><a href="Web.HTML.HTMLStyleElement.html">Web.HTML.HTMLStyleElement</a></li><li><a href="Web.HTML.HTMLTableCaptionElement.html">Web.HTML.HTMLTableCaptionElement</a></li><li><a href="Web.HTML.HTMLTableCellElement.html">Web.HTML.HTMLTableCellElement</a></li><li><a href="Web.HTML.HTMLTableColElement.html">Web.HTML.HTMLTableColElement</a></li><li><a href="Web.HTML.HTMLTableDataCellElement.html">Web.HTML.HTMLTableDataCellElement</a></li><li><a href="Web.HTML.HTMLTableElement.html">Web.HTML.HTMLTableElement</a></li><li><a href="Web.HTML.HTMLTableHeaderCellElement.html">Web.HTML.HTMLTableHeaderCellElement</a></li><li><a href="Web.HTML.HTMLTableRowElement.html">Web.HTML.HTMLTableRowElement</a></li><li><a href="Web.HTML.HTMLTableSectionElement.html">Web.HTML.HTMLTableSectionElement</a></li><li><a href="Web.HTML.HTMLTemplateElement.html">Web.HTML.HTMLTemplateElement</a></li><li><a href="Web.HTML.HTMLTextAreaElement.html">Web.HTML.HTMLTextAreaElement</a></li><li><a href="Web.HTML.HTMLTimeElement.html">Web.HTML.HTMLTimeElement</a></li><li><a href="Web.HTML.HTMLTitleElement.html">Web.HTML.HTMLTitleElement</a></li><li><a href="Web.HTML.HTMLTrackElement.html">Web.HTML.HTMLTrackElement</a></li><li><a href="Web.HTML.HTMLTrackElement.ReadyState.html">Web.HTML.HTMLTrackElement.ReadyState</a></li><li><a href="Web.HTML.HTMLUListElement.html">Web.HTML.HTMLUListElement</a></li><li><a href="Web.HTML.HTMLVideoElement.html">Web.HTML.HTMLVideoElement</a></li><li><a href="Web.HTML.History.html">Web.HTML.History</a></li><li><a href="Web.HTML.Location.html">Web.HTML.Location</a></li><li><a href="Web.HTML.Navigator.html">Web.HTML.Navigator</a></li><li><a href="Web.HTML.SelectionMode.html">Web.HTML.SelectionMode</a></li><li><a href="Web.HTML.ValidityState.html">Web.HTML.ValidityState</a></li><li><a href="Web.HTML.Window.html">Web.HTML.Window</a></li><li><a href="Web.Internal.FFI.html">Web.Internal.FFI</a></li><li><a href="Web.Storage.Event.StorageEvent.html">Web.Storage.Event.StorageEvent</a></li><li><a href="Web.Storage.Storage.html">Web.Storage.Storage</a></li><li><a href="Web.UIEvent.CompositionEvent.html">Web.UIEvent.CompositionEvent</a></li><li><a href="Web.UIEvent.CompositionEvent.EventTypes.html">Web.UIEvent.CompositionEvent.EventTypes</a></li><li><a href="Web.UIEvent.EventTypes.html">Web.UIEvent.EventTypes</a></li><li><a href="Web.UIEvent.FocusEvent.html">Web.UIEvent.FocusEvent</a></li><li><a href="Web.UIEvent.FocusEvent.EventTypes.html">Web.UIEvent.FocusEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.html">Web.UIEvent.InputEvent</a></li><li><a href="Web.UIEvent.InputEvent.EventTypes.html">Web.UIEvent.InputEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.InputType.html">Web.UIEvent.InputEvent.InputType</a></li><li><a href="Web.UIEvent.KeyboardEvent.html">Web.UIEvent.KeyboardEvent</a></li><li><a href="Web.UIEvent.KeyboardEvent.EventTypes.html">Web.UIEvent.KeyboardEvent.EventTypes</a></li><li><a href="Web.UIEvent.MouseEvent.html">Web.UIEvent.MouseEvent</a></li><li><a href="Web.UIEvent.MouseEvent.EventTypes.html">Web.UIEvent.MouseEvent.EventTypes</a></li><li><a href="Web.UIEvent.UIEvent.html">Web.UIEvent.UIEvent</a></li><li><a href="Web.UIEvent.WheelEvent.html">Web.UIEvent.WheelEvent</a></li><li><a href="Web.UIEvent.WheelEvent.EventTypes.html">Web.UIEvent.WheelEvent.EventTypes</a></li></ul></div></main></div><div class="footer clearfix"><p>Generated by purs 0.15.15 [development build; commit: UNKNOWN]</p></div><!-- Docs search index. --><script type="text/javascript" src="./docs-search-app.js"></script><script type="text/javascript">window.DocsSearchTypeIndex = {};window.DocsSearchIndex = {};</script></body></html>
generated-docs/html/Control.Applicative.htmldeleted−1427
@@ -1,1427 +0,0 @@
2−<html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>PureScript: Control.Applicative</title><link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:300,400,400i,700,700i" type="text/css" rel="stylesheet"><style type="text/css">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
5− * 1. Set default font family to sans-serif.
6− * 2. Prevent iOS text size adjust after orientation change, without disabling
11− font-family: sans-serif; /* 1 */
12− -ms-text-size-adjust: 100%; /* 2 */
13− -webkit-text-size-adjust: 100%; /* 2 */
17− * Remove default margin.
24−/* HTML5 display definitions
25− ========================================================================== */
28− * Correct `block` display not defined for any HTML5 element in IE 8/9.
29− * Correct `block` display not defined for `details` or `summary` in IE 10/11
31− * Correct `block` display not defined for `main` in IE 11.
51− * 1. Correct `inline-block` display not defined in IE 8/9.
52− * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
59− display: inline-block; /* 1 */
60− vertical-align: baseline; /* 2 */
64− * Prevent modern browsers from displaying `audio` without controls.
65− * Remove excess height in iOS 5 devices.
68−audio:not([controls]) {
74− * Address `[hidden]` styling not present in IE 8/9/10.
75− * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
84− ========================================================================== */
87− * Remove the gray background color from active links in IE 10.
91− background-color: transparent;
95− * Improve readability when focused and also mouse hovered in all browsers.
103−/* Text-level semantics
104− ========================================================================== */
107− * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
111− border-bottom: 1px dotted;
115− * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
124− * Address styling not present in Safari and Chrome.
132− * Address variable `h1` font-size and margin within `section` and `article`
133− * contexts in Firefox 4+, Safari, and Chrome.
142− * Address styling not present in IE 8/9.
151− * Address inconsistent and variable font size in all browsers.
159− * Prevent `sub` and `sup` affecting `line-height` in all browsers.
167− vertical-align: baseline;
179− ========================================================================== */
182− * Remove border when inside `a` element in IE 8/9/10.
190− * Correct overflow not hidden in IE 9/10/11.
198− ========================================================================== */
201− * Address margin not present in IE 8/9 and Safari.
209− * Address differences between Firefox and other browsers.
213− -moz-box-sizing: content-box;
214− box-sizing: content-box;
219− * Contain overflow in all browsers.
227− * Address odd `em`-unit font size rendering in all browsers.
234− font-family: monospace, monospace;
239− ========================================================================== */
242− * Known limitation: by default, Chrome and Safari on OS X allow very limited
243− * styling of `select`, unless a `border` property is set.
247− * 1. Correct color not being inherited.
248− * Known issue: affects color of disabled elements.
249− * 2. Correct font properties not being inherited.
250− * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
258− color: inherit; /* 1 */
259− font: inherit; /* 2 */
264− * Address `overflow` set to `hidden` in IE 8/9/10/11.
272− * Address inconsistent `text-transform` inheritance for `button` and `select`.
273− * All other form control elements do not inherit `text-transform` values.
274− * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
275− * Correct `select` style inheritance in Firefox.
280− text-transform: none;
284− * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
285− * and `video` controls.
286− * 2. Correct inability to style clickable `input` types in iOS.
287− * 3. Improve usability and consistency of cursor style between image-type
288− * `input` and others.
292−html input[type="button"], /* 1 */
294−input[type="submit"] {
295− -webkit-appearance: button; /* 2 */
296− cursor: pointer; /* 3 */
300− * Re-set default cursor for disabled elements.
304−html input[disabled] {
309− * Remove inner padding and border in Firefox 4+.
312−button::-moz-focus-inner,
313−input::-moz-focus-inner {
319− * Address Firefox 4+ setting `line-height` on `input` using `!important` in
320− * the UA stylesheet.
324− line-height: normal;
328− * It's recommended that you don't attempt to style these elements.
329− * Firefox's implementation doesn't respect box-sizing, padding, or width.
331− * 1. Address box sizing set to `content-box` in IE 8/9/10.
332− * 2. Remove excess padding in IE 8/9/10.
335−input[type="checkbox"],
336−input[type="radio"] {
337− box-sizing: border-box; /* 1 */
342− * Fix the cursor style for Chrome's increment/decrement buttons. For certain
343− * `font-size` values of the `input`, it causes the cursor style of the
344− * decrement button to change from `default` to `text`.
347−input[type="number"]::-webkit-inner-spin-button,
348−input[type="number"]::-webkit-outer-spin-button {
353− * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
354− * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
355− * (include `-moz` to future-proof).
358−input[type="search"] {
359− -webkit-appearance: textfield; /* 1 */
360− -moz-box-sizing: content-box;
361− -webkit-box-sizing: content-box; /* 2 */
362− box-sizing: content-box;
366− * Remove inner padding and search cancel button in Safari and Chrome on OS X.
367− * Safari (but not Chrome) clips the cancel button when the search input has
368− * padding (and `textfield` appearance).
371−input[type="search"]::-webkit-search-cancel-button,
372−input[type="search"]::-webkit-search-decoration {
373− -webkit-appearance: none;
377− * Define consistent border, margin, and padding.
381− border: 1px solid #c0c0c0;
383− padding: 0.35em 0.625em 0.75em;
387− * 1. Correct `color` not being inherited in IE 8/9/10/11.
388− * 2. Remove padding so people aren't caught out if they zero out fieldsets.
397− * Remove default vertical scrollbar in IE 8/9/10/11.
405− * Don't inherit the `font-weight` (applied by a rule above).
406− * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
414− ========================================================================== */
417− * Remove most spacing between table cells.
421− border-collapse: collapse;
429−</style><style type="text/css">/** ************************************************************************* *
430− ** CSS for HTML docs (e.g. Pursuit)
434− ** This CSS file is structured into several sections, from general to
435− ** specific, and (mostly) alphabetically within the sections.
437− ** Several global element styles are used. This is not encouraged and should
438− ** be kept to a minimum. If you want to add new styles you'll most likely
439− ** want to add a new CSS component. See the Components section for examples.
441− ** CSS components use three simple naming ideas from the BEM system:
442− ** - Block: `.my-component`
443− ** - Element: `.my-component__item`
444− ** - Modifier: `.my-component.my-component--highlighted`
447− ** <div .my-component>
448− ** <div .my-component__item>
449− ** <div .my-component__item>
451− ** <div .my-component.my-component--highlighted>
452− ** <div .my-component__item>
453− ** <div .my-component__item>
455− ** Components can be nested.
460− ** Typographic choices for sizes, line-heights and margins are based on a
461− ** musical major third scale (4:5). This gives us a way to find numbers
462− ** and relationships between them that are perceived as harmonic.
464− ** To make use of this modular scale, use a ratio of the form
466− ** where n ∈ ℤ, -6 ≤ n ≤ 8.
470− ** This CSS is generated by less. To compile it:
472− ** npm install [-g] less
473− ** lessc app/static/pursuit.less > app/static/pursuit.css
475− ** ************************************************************************* */
476−/* Section: Variables
477− * ========================================================================== */
478−/* Section: Document Styles
479− * ========================================================================== */
481− color-scheme: light dark;
484− box-sizing: border-box;
485− /* This overflow rule prevents everything from shifting slightly to the side
486− when moving from a page which isn't large enough to generate a scrollbar
493− box-sizing: inherit;
496− background-color: #ffffff;
498− font-family: "Roboto", sans-serif;
502−@media (prefers-color-scheme: dark) {
504− background-color: #141417;
508−@media (min-width: 38em) {
513−/* Section: Utility Classes
514− * ========================================================================== */
526−/* Content hidden like this will still be read by a screen reader */
536− * ========================================================================== */
543− padding-right: 20px;
551− margin-bottom: 3.08em;
554− margin-bottom: 2.44em;
556−@media (min-width: 52em) {
559− padding-right: 30px;
572−@media (min-width: 66em) {
578− * Based on http://www.lwis.net/journal/2008/02/08/pure-css-sticky-footer/
579− * Except we don't support IE6
580− * -------------------------------------------------------------------------- */
585−.everything-except-footer {
587− padding-bottom: 3em;
595− background-color: #1d222d;
598−@media (prefers-color-scheme: dark) {
600− background-color: #1d222d;
607−/* Section: Element Styles
609− * Have as few of these as possible and keep them general, because they will
610− * influence every component hereafter.
611− * ========================================================================== */
613− background-color: #f1f5f9;
615−@media (prefers-color-scheme: dark) {
617− background-color: #232327;
623− text-decoration: none;
626−@media (prefers-color-scheme: dark) {
634− text-decoration: none;
636−@media (prefers-color-scheme: dark) {
643− background-color: #f1f5f9;
646− font-family: "Roboto Mono", monospace;
649−@media (prefers-color-scheme: dark) {
652− background-color: #232327;
658− background-color: #dfe8f1;
660−@media (prefers-color-scheme: dark) {
663− background-color: #2f2f34;
669− white-space: pre-wrap;
670− word-wrap: break-word;
674− letter-spacing: -0.2em;
678− font-weight: normal;
682− letter-spacing: 0.33em;
687−@media (prefers-color-scheme: dark) {
695− padding: 1em 1.25rem;
696− /* Using rem here to align with lists etc. */
702− background-color: transparent;
709− line-height: inherit;
721− letter-spacing: -0.5px;
723− margin-top: 1.563rem;
724− margin-bottom: 1.25rem;
726−@media (min-width: 52em) {
729− margin-top: 5.96rem;
734− font-weight: normal;
736− margin-top: 3.052rem;
737− margin-bottom: 1rem;
741− font-weight: normal;
743− margin-top: 2.441rem;
744− margin-bottom: 1rem;
748− font-weight: normal;
749− margin-top: 2.441rem;
750− margin-bottom: 1rem;
763− background-color: #cccccc;
765−@media (prefers-color-scheme: dark) {
767− background-color: #43434e;
777− margin-bottom: 1rem;
780− border-bottom: 1px solid #cccccc;
781− border-collapse: collapse;
784− margin-bottom: 1rem;
787−@media (prefers-color-scheme: dark) {
789− border-bottom-color: #43434e;
795− padding: 0.41em 0.51em;
798− border-top: 1px solid #cccccc;
800−@media (prefers-color-scheme: dark) {
802− border-top-color: #43434e;
814− list-style-type: none;
816− margin-bottom: 1rem;
821− padding-left: 1.25em;
827− display: inline-block;
828− margin-left: -1.25em;
831−@media (prefers-color-scheme: dark) {
836−/* Tying this tightly to ul at the moment because it's a slight variation thereof */
837−ul.ul--search li::before {
840− transform: rotate(-45deg);
844− margin-bottom: 1rem;
845− padding-left: 1.25em;
851−/* Section: Components
852− * ========================================================================== */
854− * -------------------------------------------------------------------------- */
858− display: inline-block;
859− background-color: #000000;
860− border-radius: 1.3em;
869−@media (prefers-color-scheme: dark) {
871− background-color: #dedede;
875−.badge.badge--package {
876− background-color: #c4953a;
877− letter-spacing: -0.1em;
879−@media (prefers-color-scheme: dark) {
880− .badge.badge--package {
881− background-color: #d8ac55;
884−.badge.badge--module {
885− background-color: #75B134;
887−/* Component: Declarations
888− * -------------------------------------------------------------------------- */
891− padding-bottom: 0.328em;
892− margin-bottom: 0.262em;
902−.decl__anchor:visited {
907−@media (prefers-color-scheme: dark) {
909− .decl__anchor:visited {
913−.decl__anchor:hover {
916−@media (prefers-color-scheme: dark) {
917− .decl__anchor:hover {
922− background-color: transparent;
924− border-top: 1px solid #cccccc;
925− border-bottom: 1px solid #cccccc;
928−@media (prefers-color-scheme: dark) {
930− border-top-color: #43434e;
931− border-bottom-color: #43434e;
934−.decl__signature code {
937− padding-left: 2.441em;
938− text-indent: -2.441em;
939− white-space: normal;
942− font-family: "Roboto", sans-serif;
944− font-weight: normal;
946−/* See https://stackoverflow.com/a/32162038
947− Content licensed under CC BY-SA 3.0
949−.decl__role_hover[title] {
950− /* Remove line that appears under abbr element */
951− border-bottom: none;
952− text-decoration: none;
953− /* Ensure cursor doesn't change to question mark */
956−.decl__role_nominal::after {
959−.decl__role_phantom::after {
963− border-bottom: 1px solid #cccccc;
965−@media (prefers-color-scheme: dark) {
967− border-bottom-color: #43434e;
970−:target .decl__signature,
971−:target .decl__signature code {
972− /* We want the background to be transparent, even when the parent is a target */
973− background-color: transparent;
975−.decl__body .keyword,
976−.decl__body .syntax {
979−@media (prefers-color-scheme: dark) {
980− .decl__body .keyword,
981− .decl__body .syntax {
985−.decl__child_comments {
987− margin-bottom: 1rem;
989−/* Component: Dependency Link
990− * -------------------------------------------------------------------------- */
992− /* Currently no root styles, but keep the class as a namespace */
995− display: inline-block;
996− margin-right: 0.41em;
1000− display: inline-block;
1004−@media (prefers-color-scheme: dark) {
1005− .deplink__version {
1009−/* Component: Grouped List
1010− * -------------------------------------------------------------------------- */
1012− border-top: 1px solid #cccccc;
1013− margin: 0 0 2.44em 0;
1015−@media (prefers-color-scheme: dark) {
1017− border-top-color: #43434e;
1020−.grouped-list__title {
1024− letter-spacing: 1px;
1025− margin: 0.8em 0 -0.1em 0;
1026− text-transform: uppercase;
1028−@media (prefers-color-scheme: dark) {
1029− .grouped-list__title {
1030− border-top-color: #a0a0a0;
1033−.grouped-list__item {
1036−/* Component: Message
1037− * -------------------------------------------------------------------------- */
1040− border-radius: 5px;
1041− padding: 1em !important;
1043−.message.message--error {
1044− background-color: #fff0f0;
1045− border-color: #c85050;
1047−@media (prefers-color-scheme: dark) {
1048− .message.message--error {
1049− background-color: #6b0e0e;
1050− border-color: #c85050;
1053−.message.message--not-available {
1054− background-color: #f0f096;
1055− border-color: #e3e33d;
1057−@media (prefers-color-scheme: dark) {
1058− .message.message--not-available {
1059− background-color: #56560b;
1060− border-color: #b0b017;
1063−/* Component: Multi Col
1064− * Multiple columns side by side
1065− * -------------------------------------------------------------------------- */
1067− margin-bottom: 2.44em;
1071− padding-right: 1em;
1072− position: relative;
1075−@media (min-width: 38em) and (max-width: 51.999999em) {
1080− .multi-col__col:nth-child(2n+3) {
1084−@media (min-width: 52em) {
1089− .multi-col__col:nth-child(3n+4) {
1093−/* Component: Page Title
1094− * -------------------------------------------------------------------------- */
1096− margin: 4.77em 0 1.56em;
1097− padding-bottom: 1.25em;
1098− position: relative;
1100−.page-title__title {
1101− margin: 0 0 0 -0.05em;
1102− /* Visually align on left edge */
1104−.page-title__label {
1105− position: relative;
1109− letter-spacing: 1px;
1110− margin-bottom: -0.8em;
1111− text-transform: uppercase;
1114−@media (prefers-color-scheme: dark) {
1115− .page-title__label {
1119−/* Component: Top Banner
1120− * -------------------------------------------------------------------------- */
1122− background-color: #1d222d;
1124− font-weight: normal;
1126−@media (prefers-color-scheme: dark) {
1128− background-color: #1d222d;
1133−.top-banner__logo:visited {
1141−@media (prefers-color-scheme: dark) {
1143− .top-banner__logo:visited {
1147−.top-banner__logo:hover {
1149− text-decoration: none;
1152− margin-bottom: 1.25em;
1154−.top-banner__form input {
1155− border: 1px solid #1d222d;
1156− border-radius: 3px;
1157− background-color: #ffffff;
1161− padding: 0.21em 0.512em;
1164−@media (prefers-color-scheme: dark) {
1165− .top-banner__form input {
1166− border-color: #1d222d;
1167− background-color: #141417;
1171−.top-banner__actions {
1175−.top-banner__actions__item {
1176− display: inline-block;
1179− padding-left: 1.25em;
1181−.top-banner__actions__item:first-child {
1184−.top-banner__actions__item a,
1185−.top-banner__actions__item a:visited {
1188−@media (prefers-color-scheme: dark) {
1189− .top-banner__actions__item a,
1190− .top-banner__actions__item a:visited {
1194−.top-banner__actions__item a:hover {
1197−@media (prefers-color-scheme: dark) {
1198− .top-banner__actions__item a:hover {
1202−@media (min-width: 38em) {
1203− .top-banner__logo {
1207− .top-banner__form {
1213− .top-banner__actions {
1218−/* Component: Search Results
1219− * -------------------------------------------------------------------------- */
1220−.result.result--empty {
1225− margin-bottom: 0.2rem;
1228− margin-left: -0.1em;
1230−.result__body > *:first-child {
1231− margin-top: 0!important;
1233−.result__body > *:last-child {
1234− margin-bottom: 0!important;
1236−.result__signature {
1237− background-color: transparent;
1239− border-top: 1px solid #cccccc;
1240− border-bottom: 1px solid #cccccc;
1241− padding: 0.328em 0;
1243−@media (prefers-color-scheme: dark) {
1244− .result__signature {
1245− border-top-color: #43434e;
1246− border-bottom-color: #43434e;
1249−.result__signature code {
1251− padding-left: 2.441em;
1252− text-indent: -2.441em;
1253− white-space: normal;
1256− margin-top: 0.2rem;
1258−.result__actions__item {
1261−.result__actions__item + .result__actions__item {
1262− margin-left: 0.65em;
1264−/* Component: Version Selector
1265− * -------------------------------------------------------------------------- */
1267− margin-bottom: 0.8em;
1269−@media (min-width: 38em) {
1270− .version-selector {
1271− position: absolute;
1278− * These styles should be cleaned up
1279− * ========================================================================== */
1280−/* Help paragraphs */
1285− /* FIXME: target with class */
1288−/* Section: Markdown
1289− * Github rendered README
1290− * ========================================================================== */
1293− Useful for narrow screens, such as mobiles. Documentation often contains URLs
1294− which would otherwise force the page to become wider, and force creation of
1295− horizontal scrollbars. Yuck.
1297− word-wrap: break-word;
1299−.markdown-body > *:first-child {
1300− margin-top: 0 !important;
1302−.markdown-body > *:last-child {
1303− margin-bottom: 0 !important;
1305−.markdown-body a:not([href]) {
1307− text-decoration: none;
1309−.markdown-body blockquote {
1313− border-left: 0.25em solid #ddd;
1315−@media (prefers-color-scheme: dark) {
1316− .markdown-body blockquote {
1317− border-left-color: #444;
1320−.markdown-body blockquote > :first-child {
1323−.markdown-body blockquote > :last-child {
1326−.markdown-body .anchor {
1327− /* We hide the anchor because the link doesn't point to a valid location */
1330−.markdown-body .pl-k {
1334−@media (prefers-color-scheme: dark) {
1335− .markdown-body .pl-k {
1339−.markdown-body .pl-c1,
1340−.markdown-body .pl-en {
1341− /* Not really sure what this is */
1344−.markdown-body .pl-s {
1345− /* String literals */
1348−.markdown-body .pl-cce {
1349− /* String literal escape sequences */
1352−.markdown-body .pl-smi {
1353− /* type variables? */
1356−</style></head><body><div class="everything-except-footer"><div class="top-banner clearfix"><div class="container clearfix"><div style="float: left; font-size: 2.44em; font-weight: 300; line-height: 90px; margin: 0">PureScript API documentation</div><div class="top-banner__actions"><div class="top-banner__actions__item"><a href="index.html">Index</a></div></div></div></div><main class="container clearfix" role="main"><div class="page-title clearfix"><div class="page-title__label">Module</div><h1 class="page-title__title">Control.Applicative</h1></div><div class="col col--main"><div class="decl" id="t:Applicative"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Applicative">#</a><span>Applicative</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <span class="syntax">(</span><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> f<span class="syntax">)</span> <span class="syntax"><=</span> <a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> f <span class="keyword">where</span></code></pre><p>The <code>Applicative</code> type class extends the <code>Apply</code> type class
1357−with a <code>pure</code> function, which can be used to create values of type <code>f a</code>
1358−from values of type <code>a</code>.</p>
1359−<p>Where <code>Apply</code> provides the ability to lift functions of two or
1360−more arguments to functions whose arguments are wrapped using <code>f</code>, and
1361−<code>Functor</code> provides the ability to lift functions of one
1362−argument, <code>pure</code> can be seen as the function which lifts functions of
1363−<em>zero</em> arguments. That is, <code>Applicative</code> functors support a lifting
1364−operation for any number of function arguments.</p>
1365−<p>Instances must satisfy the following laws in addition to the <code>Apply</code>
1368−<li>Identity: <code>(pure identity) <*> v = v</code></li>
1369−<li>Composition: <code>pure (<<<) <*> f <*> g <*> h = f <*> (g <*> h)</code></li>
1370−<li>Homomorphism: <code>(pure f) <*> (pure x) = pure (f x)</code></li>
1371−<li>Interchange: <code>u <*> (pure y) = (pure (_ $ y)) <*> u</code></li>
1373−<h4>Members</h4><ul><li id="v:pure"><code><a href="Control.Applicative.html#v:pure" title="Control.Applicative.pure"><span class="ident">pure</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a<span class="syntax">.</span> a <span class="syntax">-></span> f a</code></li></ul><h4>Instances</h4><ul><li id="v:applicativeFn"><code><a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> <span class="syntax">(</span><a href="Prim.html#t:Function" title="Prim.Function"><span class="ctor">Function</span></a> r<span class="syntax">)</span></code></li><li id="v:applicativeArray"><code><a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li><li id="v:applicativeProxy"><code><a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> <a href="Type.Proxy.html#t:Proxy" title="Type.Proxy.Proxy"><span class="ctor">Proxy</span></a></code></li></ul></div></div><div class="decl" id="v:liftA1"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:liftA1">#</a><span>liftA1</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Applicative.html#v:liftA1" title="Control.Applicative.liftA1"><span class="ident">liftA1</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>f <span class="syntax"></span>a <span class="syntax"></span>b<span class="syntax">.</span> <a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> f <span class="syntax">=></span> <span class="syntax">(</span>a <span class="syntax">-></span> b<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b</code></pre><p><code>liftA1</code> provides a default implementation of <code>(<$>)</code> for any
1374−<code>Applicative</code> functor, without using <code>(<$>)</code> as provided
1375−by the <code>Functor</code>-<code>Applicative</code> superclass
1377−<p><code>liftA1</code> can therefore be used to write <code>Functor</code> instances
1379−<pre class="purescript"><code>instance functorF :: Functor F where
1382−</div></div><div class="decl" id="v:unless"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:unless">#</a><span>unless</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Applicative.html#v:unless" title="Control.Applicative.unless"><span class="ident">unless</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>m<span class="syntax">.</span> <a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> m <span class="syntax">=></span> <a href="Prim.html#t:Boolean" title="Prim.Boolean"><span class="ctor">Boolean</span></a> <span class="syntax">-></span> m <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a> <span class="syntax">-></span> m <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a></code></pre><p>Perform an applicative action unless a condition is true.</p>
1383−</div></div><div class="decl" id="v:when"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:when">#</a><span>when</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Applicative.html#v:when" title="Control.Applicative.when"><span class="ident">when</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>m<span class="syntax">.</span> <a href="Control.Applicative.html#t:Applicative" title="Control.Applicative.Applicative"><span class="ctor">Applicative</span></a> m <span class="syntax">=></span> <a href="Prim.html#t:Boolean" title="Prim.Boolean"><span class="ctor">Boolean</span></a> <span class="syntax">-></span> m <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a> <span class="syntax">-></span> m <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a></code></pre><p>Perform an applicative action when a condition is true.</p>
1384−</div></div><h2 class="re-exports">Re-exports from <a href="Control.Apply.html">Control.Apply</a></h2><div class="decl" id="t:Apply"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Apply">#</a><span>Apply</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Applicative.html#t:Apply" title="Control.Applicative.Apply"><span class="ctor">Apply</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <span class="syntax">(</span><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> f<span class="syntax">)</span> <span class="syntax"><=</span> <a href="Control.Applicative.html#t:Apply" title="Control.Applicative.Apply"><span class="ctor">Apply</span></a> f <span class="keyword">where</span></code></pre><p>The <code>Apply</code> class provides the <code>(<*>)</code> which is used to apply a function
1385−to an argument under a type constructor.</p>
1386−<p><code>Apply</code> can be used to lift functions of two or more arguments to work on
1387−values wrapped with the type constructor <code>f</code>. It might also be understood
1388−in terms of the <code>lift2</code> function:</p>
1389−<pre class="purescript"><code>lift2 :: forall f a b c. Apply f => (a -> b -> c) -> f a -> f b -> f c
1390−lift2 f a b = f <$> a <*> b
1392−<p><code>(<*>)</code> is recovered from <code>lift2</code> as <code>lift2 ($)</code>. That is, <code>(<*>)</code> lifts
1393−the function application operator <code>($)</code> to arguments wrapped with the
1394−type constructor <code>f</code>.</p>
1395−<p>Put differently...</p>
1397− functionTakingNArguments <$> computationProducingArg1
1398− <*> computationProducingArg2
1400− <*> computationProducingArgN
1402−<p>Instances must satisfy the following law in addition to the <code>Functor</code>
1405−<li>Associative composition: <code>(<<<) <$> f <*> g <*> h = f <*> (g <*> h)</code></li>
1407−<p>Formally, <code>Apply</code> represents a strong lax semi-monoidal endofunctor.</p>
1408−<h4>Members</h4><ul><li id="v:apply"><code><a href="Control.Applicative.html#v:apply" title="Control.Applicative.apply"><span class="ident">apply</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b<span class="syntax">.</span> f <span class="syntax">(</span>a <span class="syntax">-></span> b<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b</code></li></ul><h4>Instances</h4><ul><li id="v:applyFn"><code><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> <span class="syntax">(</span><a href="Prim.html#t:Function" title="Prim.Function"><span class="ctor">Function</span></a> r<span class="syntax">)</span></code></li><li id="v:applyArray"><code><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li><li id="v:applyProxy"><code><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> <a href="Type.Proxy.html#t:Proxy" title="Type.Proxy.Proxy"><span class="ctor">Proxy</span></a></code></li></ul></div></div><div class="decl" id="v:(<*>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<*>)">#</a><span>(<*>)</span> </h3><div class="decl__body"><p>Operator alias for Control.Apply.apply <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(<*)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<*)">#</a><span>(<*)</span> </h3><div class="decl__body"><p>Operator alias for Control.Apply.applyFirst <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(*>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(*>)">#</a><span>(*>)</span> </h3><div class="decl__body"><p>Operator alias for Control.Apply.applySecond <em>(left-associative / precedence 4)</em></p></div></div><h2 class="re-exports">Re-exports from <a href="Data.Functor.html">Data.Functor</a></h2><div class="decl" id="t:Functor"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Functor">#</a><span>Functor</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Applicative.html#t:Functor" title="Control.Applicative.Functor"><span class="ctor">Functor</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <a href="Control.Applicative.html#t:Functor" title="Control.Applicative.Functor"><span class="ctor">Functor</span></a> f <span class="keyword">where</span></code></pre><p>A <code>Functor</code> is a type constructor which supports a mapping operation
1409−<code>map</code>.</p>
1410−<p><code>map</code> can be used to turn functions <code>a -> b</code> into functions
1411−<code>f a -> f b</code> whose argument and return types use the type constructor <code>f</code>
1412−to represent some computational context.</p>
1413−<p>Instances must satisfy the following laws:</p>
1415−<li>Identity: <code>map identity = identity</code></li>
1416−<li>Composition: <code>map (f <<< g) = map f <<< map g</code></li>
1418−<h4>Members</h4><ul><li id="v:map"><code><a href="Control.Applicative.html#v:map" title="Control.Applicative.map"><span class="ident">map</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b<span class="syntax">.</span> <span class="syntax">(</span>a <span class="syntax">-></span> b<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b</code></li></ul><h4>Instances</h4><ul><li id="v:functorFn"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <span class="syntax">(</span><a href="Prim.html#t:Function" title="Prim.Function"><span class="ctor">Function</span></a> r<span class="syntax">)</span></code></li><li id="v:functorArray"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li><li id="v:functorProxy"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <a href="Type.Proxy.html#t:Proxy" title="Type.Proxy.Proxy"><span class="ctor">Proxy</span></a></code></li></ul></div></div><div class="decl" id="v:void"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:void">#</a><span>void</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Applicative.html#v:void" title="Control.Applicative.void"><span class="ident">void</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>f <span class="syntax"></span>a<span class="syntax">.</span> <a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> f <span class="syntax">=></span> f a <span class="syntax">-></span> f <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a></code></pre><p>The <code>void</code> function is used to ignore the type wrapped by a
1419−<code>Functor</code>, replacing it with <code>Unit</code> and keeping only the type
1420−information provided by the type constructor itself.</p>
1421−<p><code>void</code> is often useful when using <code>do</code> notation to change the return type
1422−of a monadic computation:</p>
1423−<pre class="purescript"><code>main = forE 1 10 \n -> void do
1427−</div></div><div class="decl" id="v:(<$>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<$>)">#</a><span>(<$>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.map <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(<$)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<$)">#</a><span>(<$)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.voidRight <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(<#>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<#>)">#</a><span>(<#>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.mapFlipped <em>(left-associative / precedence 1)</em></p></div></div><div class="decl" id="v:($>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:($>)">#</a><span>($>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.voidLeft <em>(left-associative / precedence 4)</em></p></div></div></div><div class="col col--aside"><h3>Modules</h3><ul><li><a href="Ansi.Codes.html">Ansi.Codes</a></li><li><a href="Ansi.Output.html">Ansi.Output</a></li><li><a href="Bolson.Control.html">Bolson.Control</a></li><li><a href="Bolson.Core.html">Bolson.Core</a></li><li><a href="Control.Alt.html">Control.Alt</a></li><li><a href="Control.Alternative.html">Control.Alternative</a></li><li><a href="Control.Applicative.html">Control.Applicative</a></li><li><a href="Control.Apply.html">Control.Apply</a></li><li><a href="Control.Biapplicative.html">Control.Biapplicative</a></li><li><a href="Control.Biapply.html">Control.Biapply</a></li><li><a href="Control.Bind.html">Control.Bind</a></li><li><a href="Control.Category.html">Control.Category</a></li><li><a href="Control.Comonad.html">Control.Comonad</a></li><li><a href="Control.Comonad.Cofree.html">Control.Comonad.Cofree</a></li><li><a href="Control.Comonad.Cofree.Class.html">Control.Comonad.Cofree.Class</a></li><li><a href="Control.Comonad.Env.html">Control.Comonad.Env</a></li><li><a href="Control.Comonad.Env.Class.html">Control.Comonad.Env.Class</a></li><li><a href="Control.Comonad.Env.Trans.html">Control.Comonad.Env.Trans</a></li><li><a href="Control.Comonad.Store.html">Control.Comonad.Store</a></li><li><a href="Control.Comonad.Store.Class.html">Control.Comonad.Store.Class</a></li><li><a href="Control.Comonad.Store.Trans.html">Control.Comonad.Store.Trans</a></li><li><a href="Control.Comonad.Traced.html">Control.Comonad.Traced</a></li><li><a href="Control.Comonad.Traced.Class.html">Control.Comonad.Traced.Class</a></li><li><a href="Control.Comonad.Traced.Trans.html">Control.Comonad.Traced.Trans</a></li><li><a href="Control.Comonad.Trans.Class.html">Control.Comonad.Trans.Class</a></li><li><a href="Control.Extend.html">Control.Extend</a></li><li><a href="Control.Lazy.html">Control.Lazy</a></li><li><a href="Control.Monad.html">Control.Monad</a></li><li><a href="Control.Monad.Cont.html">Control.Monad.Cont</a></li><li><a href="Control.Monad.Cont.Class.html">Control.Monad.Cont.Class</a></li><li><a href="Control.Monad.Cont.Trans.html">Control.Monad.Cont.Trans</a></li><li><a href="Control.Monad.Error.Class.html">Control.Monad.Error.Class</a></li><li><a href="Control.Monad.Except.html">Control.Monad.Except</a></li><li><a href="Control.Monad.Except.Trans.html">Control.Monad.Except.Trans</a></li><li><a href="Control.Monad.Fork.Class.html">Control.Monad.Fork.Class</a></li><li><a href="Control.Monad.Free.html">Control.Monad.Free</a></li><li><a href="Control.Monad.Free.Class.html">Control.Monad.Free.Class</a></li><li><a href="Control.Monad.Gen.html">Control.Monad.Gen</a></li><li><a href="Control.Monad.Gen.Class.html">Control.Monad.Gen.Class</a></li><li><a href="Control.Monad.Gen.Common.html">Control.Monad.Gen.Common</a></li><li><a href="Control.Monad.Identity.Trans.html">Control.Monad.Identity.Trans</a></li><li><a href="Control.Monad.List.Trans.html">Control.Monad.List.Trans</a></li><li><a href="Control.Monad.Maybe.Trans.html">Control.Monad.Maybe.Trans</a></li><li><a href="Control.Monad.Morph.html">Control.Monad.Morph</a></li><li><a href="Control.Monad.RWS.html">Control.Monad.RWS</a></li><li><a href="Control.Monad.RWS.Trans.html">Control.Monad.RWS.Trans</a></li><li><a href="Control.Monad.Reader.html">Control.Monad.Reader</a></li><li><a href="Control.Monad.Reader.Class.html">Control.Monad.Reader.Class</a></li><li><a href="Control.Monad.Reader.Trans.html">Control.Monad.Reader.Trans</a></li><li><a href="Control.Monad.Rec.Class.html">Control.Monad.Rec.Class</a></li><li><a href="Control.Monad.ST.html">Control.Monad.ST</a></li><li><a href="Control.Monad.ST.Class.html">Control.Monad.ST.Class</a></li><li><a href="Control.Monad.ST.Global.html">Control.Monad.ST.Global</a></li><li><a href="Control.Monad.ST.Internal.html">Control.Monad.ST.Internal</a></li><li><a href="Control.Monad.ST.Ref.html">Control.Monad.ST.Ref</a></li><li><a href="Control.Monad.ST.Uncurried.html">Control.Monad.ST.Uncurried</a></li><li><a href="Control.Monad.State.html">Control.Monad.State</a></li><li><a href="Control.Monad.State.Class.html">Control.Monad.State.Class</a></li><li><a href="Control.Monad.State.Trans.html">Control.Monad.State.Trans</a></li><li><a href="Control.Monad.Trampoline.html">Control.Monad.Trampoline</a></li><li><a href="Control.Monad.Trans.Class.html">Control.Monad.Trans.Class</a></li><li><a href="Control.Monad.Writer.html">Control.Monad.Writer</a></li><li><a href="Control.Monad.Writer.Class.html">Control.Monad.Writer.Class</a></li><li><a href="Control.Monad.Writer.Trans.html">Control.Monad.Writer.Trans</a></li><li><a href="Control.MonadPlus.html">Control.MonadPlus</a></li><li><a href="Control.Parallel.html">Control.Parallel</a></li><li><a href="Control.Parallel.Class.html">Control.Parallel.Class</a></li><li><a href="Control.Plus.html">Control.Plus</a></li><li><a href="Control.Semigroupoid.html">Control.Semigroupoid</a></li><li><a href="Data.Array.html">Data.Array</a></li><li><a href="Data.Array.NonEmpty.html">Data.Array.NonEmpty</a></li><li><a href="Data.Array.NonEmpty.Internal.html">Data.Array.NonEmpty.Internal</a></li><li><a href="Data.Array.Partial.html">Data.Array.Partial</a></li><li><a href="Data.Array.ST.html">Data.Array.ST</a></li><li><a href="Data.Array.ST.Iterator.html">Data.Array.ST.Iterator</a></li><li><a href="Data.Array.ST.Partial.html">Data.Array.ST.Partial</a></li><li><a href="Data.ArrayBuffer.Types.html">Data.ArrayBuffer.Types</a></li><li><a href="Data.Bifoldable.html">Data.Bifoldable</a></li><li><a href="Data.Bifunctor.html">Data.Bifunctor</a></li><li><a href="Data.Bifunctor.Join.html">Data.Bifunctor.Join</a></li><li><a href="Data.Bitraversable.html">Data.Bitraversable</a></li><li><a href="Data.Boolean.html">Data.Boolean</a></li><li><a href="Data.BooleanAlgebra.html">Data.BooleanAlgebra</a></li><li><a href="Data.Bounded.html">Data.Bounded</a></li><li><a href="Data.Bounded.Generic.html">Data.Bounded.Generic</a></li><li><a href="Data.CatList.html">Data.CatList</a></li><li><a href="Data.CatQueue.html">Data.CatQueue</a></li><li><a href="Data.Char.html">Data.Char</a></li><li><a href="Data.Char.Gen.html">Data.Char.Gen</a></li><li><a href="Data.CommutativeRing.html">Data.CommutativeRing</a></li><li><a href="Data.Compactable.html">Data.Compactable</a></li><li><a href="Data.Comparison.html">Data.Comparison</a></li><li><a href="Data.Const.html">Data.Const</a></li><li><a href="Data.Coyoneda.html">Data.Coyoneda</a></li><li><a href="Data.Date.html">Data.Date</a></li><li><a href="Data.Date.Component.html">Data.Date.Component</a></li><li><a href="Data.Date.Component.Gen.html">Data.Date.Component.Gen</a></li><li><a href="Data.Date.Gen.html">Data.Date.Gen</a></li><li><a href="Data.DateTime.html">Data.DateTime</a></li><li><a href="Data.DateTime.Gen.html">Data.DateTime.Gen</a></li><li><a href="Data.DateTime.Instant.html">Data.DateTime.Instant</a></li><li><a href="Data.Decidable.html">Data.Decidable</a></li><li><a href="Data.Decide.html">Data.Decide</a></li><li><a href="Data.Distributive.html">Data.Distributive</a></li><li><a href="Data.Divide.html">Data.Divide</a></li><li><a href="Data.Divisible.html">Data.Divisible</a></li><li><a href="Data.DivisionRing.html">Data.DivisionRing</a></li><li><a href="Data.Either.html">Data.Either</a></li><li><a href="Data.Either.Inject.html">Data.Either.Inject</a></li><li><a href="Data.Either.Nested.html">Data.Either.Nested</a></li><li><a href="Data.Enum.html">Data.Enum</a></li><li><a href="Data.Enum.Gen.html">Data.Enum.Gen</a></li><li><a href="Data.Enum.Generic.html">Data.Enum.Generic</a></li><li><a href="Data.Eq.html">Data.Eq</a></li><li><a href="Data.Eq.Generic.html">Data.Eq.Generic</a></li><li><a href="Data.Equivalence.html">Data.Equivalence</a></li><li><a href="Data.EuclideanRing.html">Data.EuclideanRing</a></li><li><a href="Data.Exists.html">Data.Exists</a></li><li><a href="Data.FastVect.Common.html">Data.FastVect.Common</a></li><li><a href="Data.FastVect.Common.Matrix.html">Data.FastVect.Common.Matrix</a></li><li><a href="Data.FastVect.FastVect.html">Data.FastVect.FastVect</a></li><li><a href="Data.FastVect.FastVect.Matrix.html">Data.FastVect.FastVect.Matrix</a></li><li><a href="Data.FastVect.MinLenVect.html">Data.FastVect.MinLenVect</a></li><li><a href="Data.FastVect.Sparse.Read.html">Data.FastVect.Sparse.Read</a></li><li><a href="Data.FastVect.Sparse.Write.html">Data.FastVect.Sparse.Write</a></li><li><a href="Data.Field.html">Data.Field</a></li><li><a href="Data.Filterable.html">Data.Filterable</a></li><li><a href="Data.Foldable.html">Data.Foldable</a></li><li><a href="Data.FoldableWithIndex.html">Data.FoldableWithIndex</a></li><li><a href="Data.Function.html">Data.Function</a></li><li><a href="Data.Function.Uncurried.html">Data.Function.Uncurried</a></li><li><a href="Data.Functor.html">Data.Functor</a></li><li><a href="Data.Functor.App.html">Data.Functor.App</a></li><li><a href="Data.Functor.Clown.html">Data.Functor.Clown</a></li><li><a href="Data.Functor.Compose.html">Data.Functor.Compose</a></li><li><a href="Data.Functor.Contravariant.html">Data.Functor.Contravariant</a></li><li><a href="Data.Functor.Coproduct.html">Data.Functor.Coproduct</a></li><li><a href="Data.Functor.Coproduct.Inject.html">Data.Functor.Coproduct.Inject</a></li><li><a href="Data.Functor.Coproduct.Nested.html">Data.Functor.Coproduct.Nested</a></li><li><a href="Data.Functor.Costar.html">Data.Functor.Costar</a></li><li><a href="Data.Functor.Flip.html">Data.Functor.Flip</a></li><li><a href="Data.Functor.Invariant.html">Data.Functor.Invariant</a></li><li><a href="Data.Functor.Joker.html">Data.Functor.Joker</a></li><li><a href="Data.Functor.Product.html">Data.Functor.Product</a></li><li><a href="Data.Functor.Product.Nested.html">Data.Functor.Product.Nested</a></li><li><a href="Data.Functor.Product2.html">Data.Functor.Product2</a></li><li><a href="Data.Functor.Variant.html">Data.Functor.Variant</a></li><li><a href="Data.FunctorWithIndex.html">Data.FunctorWithIndex</a></li><li><a href="Data.Generic.Rep.html">Data.Generic.Rep</a></li><li><a href="Data.HeytingAlgebra.html">Data.HeytingAlgebra</a></li><li><a href="Data.HeytingAlgebra.Generic.html">Data.HeytingAlgebra.Generic</a></li><li><a href="Data.Identity.html">Data.Identity</a></li><li><a href="Data.Int.html">Data.Int</a></li><li><a href="Data.Int.Bits.html">Data.Int.Bits</a></li><li><a href="Data.Interval.html">Data.Interval</a></li><li><a href="Data.Interval.Duration.html">Data.Interval.Duration</a></li><li><a href="Data.Interval.Duration.Iso.html">Data.Interval.Duration.Iso</a></li><li><a href="Data.JSDate.html">Data.JSDate</a></li><li><a href="Data.Lazy.html">Data.Lazy</a></li><li><a href="Data.List.html">Data.List</a></li><li><a href="Data.List.Internal.html">Data.List.Internal</a></li><li><a href="Data.List.Lazy.html">Data.List.Lazy</a></li><li><a href="Data.List.Lazy.NonEmpty.html">Data.List.Lazy.NonEmpty</a></li><li><a href="Data.List.Lazy.Types.html">Data.List.Lazy.Types</a></li><li><a href="Data.List.NonEmpty.html">Data.List.NonEmpty</a></li><li><a href="Data.List.Partial.html">Data.List.Partial</a></li><li><a href="Data.List.Types.html">Data.List.Types</a></li><li><a href="Data.List.ZipList.html">Data.List.ZipList</a></li><li><a href="Data.Map.html">Data.Map</a></li><li><a href="Data.Map.Gen.html">Data.Map.Gen</a></li><li><a href="Data.Map.Internal.html">Data.Map.Internal</a></li><li><a href="Data.Maybe.html">Data.Maybe</a></li><li><a href="Data.Maybe.First.html">Data.Maybe.First</a></li><li><a href="Data.Maybe.Last.html">Data.Maybe.Last</a></li><li><a href="Data.MediaType.html">Data.MediaType</a></li><li><a href="Data.MediaType.Common.html">Data.MediaType.Common</a></li><li><a href="Data.Monoid.html">Data.Monoid</a></li><li><a href="Data.Monoid.Additive.html">Data.Monoid.Additive</a></li><li><a href="Data.Monoid.Alternate.html">Data.Monoid.Alternate</a></li><li><a href="Data.Monoid.Conj.html">Data.Monoid.Conj</a></li><li><a href="Data.Monoid.Disj.html">Data.Monoid.Disj</a></li><li><a href="Data.Monoid.Dual.html">Data.Monoid.Dual</a></li><li><a href="Data.Monoid.Endo.html">Data.Monoid.Endo</a></li><li><a href="Data.Monoid.Generic.html">Data.Monoid.Generic</a></li><li><a href="Data.Monoid.Multiplicative.html">Data.Monoid.Multiplicative</a></li><li><a href="Data.NaturalTransformation.html">Data.NaturalTransformation</a></li><li><a href="Data.Newtype.html">Data.Newtype</a></li><li><a href="Data.NonEmpty.html">Data.NonEmpty</a></li><li><a href="Data.Nullable.html">Data.Nullable</a></li><li><a href="Data.Number.html">Data.Number</a></li><li><a href="Data.Number.Approximate.html">Data.Number.Approximate</a></li><li><a href="Data.Number.Format.html">Data.Number.Format</a></li><li><a href="Data.Op.html">Data.Op</a></li><li><a href="Data.Ord.html">Data.Ord</a></li><li><a href="Data.Ord.Down.html">Data.Ord.Down</a></li><li><a href="Data.Ord.Generic.html">Data.Ord.Generic</a></li><li><a href="Data.Ord.Max.html">Data.Ord.Max</a></li><li><a href="Data.Ord.Min.html">Data.Ord.Min</a></li><li><a href="Data.Ordering.html">Data.Ordering</a></li><li><a href="Data.Posix.html">Data.Posix</a></li><li><a href="Data.Posix.Signal.html">Data.Posix.Signal</a></li><li><a href="Data.Predicate.html">Data.Predicate</a></li><li><a href="Data.Profunctor.html">Data.Profunctor</a></li><li><a href="Data.Profunctor.Choice.html">Data.Profunctor.Choice</a></li><li><a href="Data.Profunctor.Closed.html">Data.Profunctor.Closed</a></li><li><a href="Data.Profunctor.Cochoice.html">Data.Profunctor.Cochoice</a></li><li><a href="Data.Profunctor.Costrong.html">Data.Profunctor.Costrong</a></li><li><a href="Data.Profunctor.Join.html">Data.Profunctor.Join</a></li><li><a href="Data.Profunctor.Split.html">Data.Profunctor.Split</a></li><li><a href="Data.Profunctor.Star.html">Data.Profunctor.Star</a></li><li><a href="Data.Profunctor.Strong.html">Data.Profunctor.Strong</a></li><li><a href="Data.Reflectable.html">Data.Reflectable</a></li><li><a href="Data.Ring.html">Data.Ring</a></li><li><a href="Data.Ring.Generic.html">Data.Ring.Generic</a></li><li><a href="Data.Semigroup.html">Data.Semigroup</a></li><li><a href="Data.Semigroup.First.html">Data.Semigroup.First</a></li><li><a href="Data.Semigroup.Foldable.html">Data.Semigroup.Foldable</a></li><li><a href="Data.Semigroup.Generic.html">Data.Semigroup.Generic</a></li><li><a href="Data.Semigroup.Last.html">Data.Semigroup.Last</a></li><li><a href="Data.Semigroup.Traversable.html">Data.Semigroup.Traversable</a></li><li><a href="Data.Semiring.html">Data.Semiring</a></li><li><a href="Data.Semiring.Generic.html">Data.Semiring.Generic</a></li><li><a href="Data.Set.html">Data.Set</a></li><li><a href="Data.Set.NonEmpty.html">Data.Set.NonEmpty</a></li><li><a href="Data.Show.html">Data.Show</a></li><li><a href="Data.Show.Generic.html">Data.Show.Generic</a></li><li><a href="Data.String.html">Data.String</a></li><li><a href="Data.String.CaseInsensitive.html">Data.String.CaseInsensitive</a></li><li><a href="Data.String.CodePoints.html">Data.String.CodePoints</a></li><li><a href="Data.String.CodeUnits.html">Data.String.CodeUnits</a></li><li><a href="Data.String.Common.html">Data.String.Common</a></li><li><a href="Data.String.Gen.html">Data.String.Gen</a></li><li><a href="Data.String.NonEmpty.html">Data.String.NonEmpty</a></li><li><a href="Data.String.NonEmpty.CaseInsensitive.html">Data.String.NonEmpty.CaseInsensitive</a></li><li><a href="Data.String.NonEmpty.CodePoints.html">Data.String.NonEmpty.CodePoints</a></li><li><a href="Data.String.NonEmpty.CodeUnits.html">Data.String.NonEmpty.CodeUnits</a></li><li><a href="Data.String.NonEmpty.Internal.html">Data.String.NonEmpty.Internal</a></li><li><a href="Data.String.Pattern.html">Data.String.Pattern</a></li><li><a href="Data.String.Regex.html">Data.String.Regex</a></li><li><a href="Data.String.Regex.Flags.html">Data.String.Regex.Flags</a></li><li><a href="Data.String.Regex.Unsafe.html">Data.String.Regex.Unsafe</a></li><li><a href="Data.String.Unsafe.html">Data.String.Unsafe</a></li><li><a href="Data.Symbol.html">Data.Symbol</a></li><li><a href="Data.Time.html">Data.Time</a></li><li><a href="Data.Time.Component.html">Data.Time.Component</a></li><li><a href="Data.Time.Component.Gen.html">Data.Time.Component.Gen</a></li><li><a href="Data.Time.Duration.html">Data.Time.Duration</a></li><li><a href="Data.Time.Duration.Gen.html">Data.Time.Duration.Gen</a></li><li><a href="Data.Time.Gen.html">Data.Time.Gen</a></li><li><a href="Data.Traversable.html">Data.Traversable</a></li><li><a href="Data.Traversable.Accum.html">Data.Traversable.Accum</a></li><li><a href="Data.Traversable.Accum.Internal.html">Data.Traversable.Accum.Internal</a></li><li><a href="Data.TraversableWithIndex.html">Data.TraversableWithIndex</a></li><li><a href="Data.Tuple.html">Data.Tuple</a></li><li><a href="Data.Tuple.Nested.html">Data.Tuple.Nested</a></li><li><a href="Data.Unfoldable.html">Data.Unfoldable</a></li><li><a href="Data.Unfoldable1.html">Data.Unfoldable1</a></li><li><a href="Data.Unit.html">Data.Unit</a></li><li><a href="Data.Variant.html">Data.Variant</a></li><li><a href="Data.Variant.Internal.html">Data.Variant.Internal</a></li><li><a href="Data.Void.html">Data.Void</a></li><li><a href="Data.Witherable.html">Data.Witherable</a></li><li><a href="Data.Yoneda.html">Data.Yoneda</a></li><li><a href="Effect.html">Effect</a></li><li><a href="Effect.AVar.html">Effect.AVar</a></li><li><a href="Effect.Aff.html">Effect.Aff</a></li><li><a href="Effect.Aff.AVar.html">Effect.Aff.AVar</a></li><li><a href="Effect.Aff.Class.html">Effect.Aff.Class</a></li><li><a href="Effect.Aff.Compat.html">Effect.Aff.Compat</a></li><li><a href="Effect.Class.html">Effect.Class</a></li><li><a href="Effect.Class.Console.html">Effect.Class.Console</a></li><li><a href="Effect.Console.html">Effect.Console</a></li><li><a href="Effect.Exception.html">Effect.Exception</a></li><li><a href="Effect.Exception.Unsafe.html">Effect.Exception.Unsafe</a></li><li><a href="Effect.Now.html">Effect.Now</a></li><li><a href="Effect.Ref.html">Effect.Ref</a></li><li><a href="Effect.Timer.html">Effect.Timer</a></li><li><a href="Effect.Uncurried.html">Effect.Uncurried</a></li><li><a href="Effect.Unsafe.html">Effect.Unsafe</a></li><li><a href="FRP.Behavior.html">FRP.Behavior</a></li><li><a href="FRP.Behavior.Keyboard.html">FRP.Behavior.Keyboard</a></li><li><a href="FRP.Behavior.Mouse.html">FRP.Behavior.Mouse</a></li><li><a href="FRP.Behavior.Time.html">FRP.Behavior.Time</a></li><li><a href="FRP.Event.html">FRP.Event</a></li><li><a href="FRP.Event.AnimationFrame.html">FRP.Event.AnimationFrame</a></li><li><a href="FRP.Event.Class.html">FRP.Event.Class</a></li><li><a href="FRP.Event.Keyboard.html">FRP.Event.Keyboard</a></li><li><a href="FRP.Event.Mouse.html">FRP.Event.Mouse</a></li><li><a href="FRP.Event.Time.html">FRP.Event.Time</a></li><li><a href="FRP.Event.VBus.html">FRP.Event.VBus</a></li><li><a href="Foreign.html">Foreign</a></li><li><a href="Foreign.Index.html">Foreign.Index</a></li><li><a href="Foreign.Keys.html">Foreign.Keys</a></li><li><a href="Foreign.Object.html">Foreign.Object</a></li><li><a href="Foreign.Object.Gen.html">Foreign.Object.Gen</a></li><li><a href="Foreign.Object.ST.html">Foreign.Object.ST</a></li><li><a href="Foreign.Object.ST.Unsafe.html">Foreign.Object.ST.Unsafe</a></li><li><a href="Foreign.Object.Unsafe.html">Foreign.Object.Unsafe</a></li><li><a href="Heterogeneous.Folding.html">Heterogeneous.Folding</a></li><li><a href="Heterogeneous.Mapping.html">Heterogeneous.Mapping</a></li><li><a href="Node.Buffer.html">Node.Buffer</a></li><li><a href="Node.Buffer.Class.html">Node.Buffer.Class</a></li><li><a href="Node.Buffer.Constants.html">Node.Buffer.Constants</a></li><li><a href="Node.Buffer.Immutable.html">Node.Buffer.Immutable</a></li><li><a href="Node.Buffer.ST.html">Node.Buffer.ST</a></li><li><a href="Node.Buffer.Types.html">Node.Buffer.Types</a></li><li><a href="Node.Encoding.html">Node.Encoding</a></li><li><a href="Node.EventEmitter.html">Node.EventEmitter</a></li><li><a href="Node.EventEmitter.UtilTypes.html">Node.EventEmitter.UtilTypes</a></li><li><a href="Node.FS.html">Node.FS</a></li><li><a href="Node.FS.Aff.html">Node.FS.Aff</a></li><li><a href="Node.FS.Async.html">Node.FS.Async</a></li><li><a href="Node.FS.Constants.html">Node.FS.Constants</a></li><li><a href="Node.FS.Perms.html">Node.FS.Perms</a></li><li><a href="Node.FS.Stats.html">Node.FS.Stats</a></li><li><a href="Node.FS.Stream.html">Node.FS.Stream</a></li><li><a href="Node.FS.Sync.html">Node.FS.Sync</a></li><li><a href="Node.Path.html">Node.Path</a></li><li><a href="Node.Platform.html">Node.Platform</a></li><li><a href="Node.Process.html">Node.Process</a></li><li><a href="Node.Stream.html">Node.Stream</a></li><li><a href="Node.Stream.Aff.html">Node.Stream.Aff</a></li><li><a href="Node.Symbol.html">Node.Symbol</a></li><li><a href="Partial.html">Partial</a></li><li><a href="Partial.Unsafe.html">Partial.Unsafe</a></li><li><a href="Performance.Minibench.html">Performance.Minibench</a></li><li><a href="Pipes.html">Pipes</a></li><li><a href="Pipes.Core.html">Pipes.Core</a></li><li><a href="Pipes.Internal.html">Pipes.Internal</a></li><li><a href="Pipes.ListT.html">Pipes.ListT</a></li><li><a href="Pipes.Prelude.html">Pipes.Prelude</a></li><li><a href="Prelude.html">Prelude</a></li><li><a href="Prim.html">Prim</a></li><li><a href="Prim.Boolean.html">Prim.Boolean</a></li><li><a href="Prim.Coerce.html">Prim.Coerce</a></li><li><a href="Prim.Int.html">Prim.Int</a></li><li><a href="Prim.Ordering.html">Prim.Ordering</a></li><li><a href="Prim.Row.html">Prim.Row</a></li><li><a href="Prim.RowList.html">Prim.RowList</a></li><li><a href="Prim.Symbol.html">Prim.Symbol</a></li><li><a href="Prim.TypeError.html">Prim.TypeError</a></li><li><a href="Record.html">Record</a></li><li><a href="Record.Builder.html">Record.Builder</a></li><li><a href="Record.Studio.html">Record.Studio</a></li><li><a href="Record.Studio.Keys.html">Record.Studio.Keys</a></li><li><a href="Record.Studio.Map.html">Record.Studio.Map</a></li><li><a href="Record.Studio.MapKind.html">Record.Studio.MapKind</a></li><li><a href="Record.Studio.MapUniform.html">Record.Studio.MapUniform</a></li><li><a href="Record.Studio.Merge.html">Record.Studio.Merge</a></li><li><a href="Record.Studio.SameKeys.html">Record.Studio.SameKeys</a></li><li><a href="Record.Studio.Sequence.html">Record.Studio.Sequence</a></li><li><a href="Record.Studio.Shrink.html">Record.Studio.Shrink</a></li><li><a href="Record.Studio.SingletonRecord.html">Record.Studio.SingletonRecord</a></li><li><a href="Record.Unsafe.html">Record.Unsafe</a></li><li><a href="Record.Unsafe.Union.html">Record.Unsafe.Union</a></li><li><a href="Safe.Coerce.html">Safe.Coerce</a></li><li><a href="Spago.Generated.BuildInfo.html">Spago.Generated.BuildInfo</a></li><li><a href="Test.Spec.html">Test.Spec</a></li><li><a href="Test.Spec.Assertions.html">Test.Spec.Assertions</a></li><li><a href="Test.Spec.Assertions.String.html">Test.Spec.Assertions.String</a></li><li><a href="Test.Spec.Config.html">Test.Spec.Config</a></li><li><a href="Test.Spec.Console.html">Test.Spec.Console</a></li><li><a href="Test.Spec.Reporter.html">Test.Spec.Reporter</a></li><li><a href="Test.Spec.Reporter.Base.html">Test.Spec.Reporter.Base</a></li><li><a href="Test.Spec.Reporter.Console.html">Test.Spec.Reporter.Console</a></li><li><a href="Test.Spec.Reporter.Dot.html">Test.Spec.Reporter.Dot</a></li><li><a href="Test.Spec.Reporter.Spec.html">Test.Spec.Reporter.Spec</a></li><li><a href="Test.Spec.Reporter.Tap.html">Test.Spec.Reporter.Tap</a></li><li><a href="Test.Spec.Reporter.TeamCity.html">Test.Spec.Reporter.TeamCity</a></li><li><a href="Test.Spec.Result.html">Test.Spec.Result</a></li><li><a href="Test.Spec.Runner.html">Test.Spec.Runner</a></li><li><a href="Test.Spec.Runner.Event.html">Test.Spec.Runner.Event</a></li><li><a href="Test.Spec.Speed.html">Test.Spec.Speed</a></li><li><a href="Test.Spec.Style.html">Test.Spec.Style</a></li><li><a href="Test.Spec.Summary.html">Test.Spec.Summary</a></li><li><a href="Test.Spec.Tree.html">Test.Spec.Tree</a></li><li><a href="Type.Data.Boolean.html">Type.Data.Boolean</a></li><li><a href="Type.Data.Ordering.html">Type.Data.Ordering</a></li><li><a href="Type.Data.Symbol.html">Type.Data.Symbol</a></li><li><a href="Type.Equality.html">Type.Equality</a></li><li><a href="Type.Function.html">Type.Function</a></li><li><a href="Type.Prelude.html">Type.Prelude</a></li><li><a href="Type.Proxy.html">Type.Proxy</a></li><li><a href="Type.Row.html">Type.Row</a></li><li><a href="Type.Row.Homogeneous.html">Type.Row.Homogeneous</a></li><li><a href="Type.RowList.html">Type.RowList</a></li><li><a href="Uncurried.RWSE.html">Uncurried.RWSE</a></li><li><a href="Uncurried.RWSET.html">Uncurried.RWSET</a></li><li><a href="Uncurried.Reader.html">Uncurried.Reader</a></li><li><a href="Uncurried.ReaderT.html">Uncurried.ReaderT</a></li><li><a href="Uncurried.State.html">Uncurried.State</a></li><li><a href="Uncurried.StateT.html">Uncurried.StateT</a></li><li><a href="Uncurried.Writer.html">Uncurried.Writer</a></li><li><a href="Uncurried.WriterT.html">Uncurried.WriterT</a></li><li><a href="Unsafe.Coerce.html">Unsafe.Coerce</a></li><li><a href="Unsafe.Reference.html">Unsafe.Reference</a></li><li><a href="Web.DOM.html">Web.DOM</a></li><li><a href="Web.DOM.CharacterData.html">Web.DOM.CharacterData</a></li><li><a href="Web.DOM.ChildNode.html">Web.DOM.ChildNode</a></li><li><a href="Web.DOM.Comment.html">Web.DOM.Comment</a></li><li><a href="Web.DOM.DOMTokenList.html">Web.DOM.DOMTokenList</a></li><li><a href="Web.DOM.Document.html">Web.DOM.Document</a></li><li><a href="Web.DOM.DocumentFragment.html">Web.DOM.DocumentFragment</a></li><li><a href="Web.DOM.DocumentType.html">Web.DOM.DocumentType</a></li><li><a href="Web.DOM.Element.html">Web.DOM.Element</a></li><li><a href="Web.DOM.HTMLCollection.html">Web.DOM.HTMLCollection</a></li><li><a href="Web.DOM.Internal.Types.html">Web.DOM.Internal.Types</a></li><li><a href="Web.DOM.MutationObserver.html">Web.DOM.MutationObserver</a></li><li><a href="Web.DOM.MutationRecord.html">Web.DOM.MutationRecord</a></li><li><a href="Web.DOM.Node.html">Web.DOM.Node</a></li><li><a href="Web.DOM.NodeList.html">Web.DOM.NodeList</a></li><li><a href="Web.DOM.NodeType.html">Web.DOM.NodeType</a></li><li><a href="Web.DOM.NonDocumentTypeChildNode.html">Web.DOM.NonDocumentTypeChildNode</a></li><li><a href="Web.DOM.NonElementParentNode.html">Web.DOM.NonElementParentNode</a></li><li><a href="Web.DOM.ParentNode.html">Web.DOM.ParentNode</a></li><li><a href="Web.DOM.ProcessingInstruction.html">Web.DOM.ProcessingInstruction</a></li><li><a href="Web.DOM.ShadowRoot.html">Web.DOM.ShadowRoot</a></li><li><a href="Web.DOM.Text.html">Web.DOM.Text</a></li><li><a href="Web.Event.CustomEvent.html">Web.Event.CustomEvent</a></li><li><a href="Web.Event.Event.html">Web.Event.Event</a></li><li><a href="Web.Event.EventPhase.html">Web.Event.EventPhase</a></li><li><a href="Web.Event.EventTarget.html">Web.Event.EventTarget</a></li><li><a href="Web.Event.Internal.Types.html">Web.Event.Internal.Types</a></li><li><a href="Web.File.Blob.html">Web.File.Blob</a></li><li><a href="Web.File.File.html">Web.File.File</a></li><li><a href="Web.File.FileList.html">Web.File.FileList</a></li><li><a href="Web.File.FileReader.html">Web.File.FileReader</a></li><li><a href="Web.File.FileReader.ReadyState.html">Web.File.FileReader.ReadyState</a></li><li><a href="Web.File.Url.html">Web.File.Url</a></li><li><a href="Web.HTML.html">Web.HTML</a></li><li><a href="Web.HTML.Common.html">Web.HTML.Common</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.html">Web.HTML.Event.BeforeUnloadEvent</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.EventTypes.html">Web.HTML.Event.BeforeUnloadEvent.EventTypes</a></li><li><a href="Web.HTML.Event.DataTransfer.html">Web.HTML.Event.DataTransfer</a></li><li><a href="Web.HTML.Event.DataTransfer.DataTransferItem.html">Web.HTML.Event.DataTransfer.DataTransferItem</a></li><li><a href="Web.HTML.Event.DragEvent.html">Web.HTML.Event.DragEvent</a></li><li><a href="Web.HTML.Event.DragEvent.EventTypes.html">Web.HTML.Event.DragEvent.EventTypes</a></li><li><a href="Web.HTML.Event.ErrorEvent.html">Web.HTML.Event.ErrorEvent</a></li><li><a href="Web.HTML.Event.EventTypes.html">Web.HTML.Event.EventTypes</a></li><li><a href="Web.HTML.Event.HashChangeEvent.html">Web.HTML.Event.HashChangeEvent</a></li><li><a href="Web.HTML.Event.HashChangeEvent.EventTypes.html">Web.HTML.Event.HashChangeEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.html">Web.HTML.Event.PageTransitionEvent</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.EventTypes.html">Web.HTML.Event.PageTransitionEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PopStateEvent.html">Web.HTML.Event.PopStateEvent</a></li><li><a href="Web.HTML.Event.PopStateEvent.EventTypes.html">Web.HTML.Event.PopStateEvent.EventTypes</a></li><li><a href="Web.HTML.Event.TrackEvent.html">Web.HTML.Event.TrackEvent</a></li><li><a href="Web.HTML.Event.TrackEvent.EventTypes.html">Web.HTML.Event.TrackEvent.EventTypes</a></li><li><a href="Web.HTML.HTMLAnchorElement.html">Web.HTML.HTMLAnchorElement</a></li><li><a href="Web.HTML.HTMLAreaElement.html">Web.HTML.HTMLAreaElement</a></li><li><a href="Web.HTML.HTMLAudioElement.html">Web.HTML.HTMLAudioElement</a></li><li><a href="Web.HTML.HTMLBRElement.html">Web.HTML.HTMLBRElement</a></li><li><a href="Web.HTML.HTMLBaseElement.html">Web.HTML.HTMLBaseElement</a></li><li><a href="Web.HTML.HTMLBodyElement.html">Web.HTML.HTMLBodyElement</a></li><li><a href="Web.HTML.HTMLButtonElement.html">Web.HTML.HTMLButtonElement</a></li><li><a href="Web.HTML.HTMLCanvasElement.html">Web.HTML.HTMLCanvasElement</a></li><li><a href="Web.HTML.HTMLDListElement.html">Web.HTML.HTMLDListElement</a></li><li><a href="Web.HTML.HTMLDataElement.html">Web.HTML.HTMLDataElement</a></li><li><a href="Web.HTML.HTMLDataListElement.html">Web.HTML.HTMLDataListElement</a></li><li><a href="Web.HTML.HTMLDivElement.html">Web.HTML.HTMLDivElement</a></li><li><a href="Web.HTML.HTMLDocument.html">Web.HTML.HTMLDocument</a></li><li><a href="Web.HTML.HTMLDocument.ReadyState.html">Web.HTML.HTMLDocument.ReadyState</a></li><li><a href="Web.HTML.HTMLDocument.VisibilityState.html">Web.HTML.HTMLDocument.VisibilityState</a></li><li><a href="Web.HTML.HTMLElement.html">Web.HTML.HTMLElement</a></li><li><a href="Web.HTML.HTMLEmbedElement.html">Web.HTML.HTMLEmbedElement</a></li><li><a href="Web.HTML.HTMLFieldSetElement.html">Web.HTML.HTMLFieldSetElement</a></li><li><a href="Web.HTML.HTMLFormElement.html">Web.HTML.HTMLFormElement</a></li><li><a href="Web.HTML.HTMLHRElement.html">Web.HTML.HTMLHRElement</a></li><li><a href="Web.HTML.HTMLHeadElement.html">Web.HTML.HTMLHeadElement</a></li><li><a href="Web.HTML.HTMLHeadingElement.html">Web.HTML.HTMLHeadingElement</a></li><li><a href="Web.HTML.HTMLHtmlElement.html">Web.HTML.HTMLHtmlElement</a></li><li><a href="Web.HTML.HTMLHyperlinkElementUtils.html">Web.HTML.HTMLHyperlinkElementUtils</a></li><li><a href="Web.HTML.HTMLIFrameElement.html">Web.HTML.HTMLIFrameElement</a></li><li><a href="Web.HTML.HTMLImageElement.html">Web.HTML.HTMLImageElement</a></li><li><a href="Web.HTML.HTMLImageElement.CORSMode.html">Web.HTML.HTMLImageElement.CORSMode</a></li><li><a href="Web.HTML.HTMLImageElement.DecodingHint.html">Web.HTML.HTMLImageElement.DecodingHint</a></li><li><a href="Web.HTML.HTMLImageElement.Laziness.html">Web.HTML.HTMLImageElement.Laziness</a></li><li><a href="Web.HTML.HTMLInputElement.html">Web.HTML.HTMLInputElement</a></li><li><a href="Web.HTML.HTMLKeygenElement.html">Web.HTML.HTMLKeygenElement</a></li><li><a href="Web.HTML.HTMLLIElement.html">Web.HTML.HTMLLIElement</a></li><li><a href="Web.HTML.HTMLLabelElement.html">Web.HTML.HTMLLabelElement</a></li><li><a href="Web.HTML.HTMLLegendElement.html">Web.HTML.HTMLLegendElement</a></li><li><a href="Web.HTML.HTMLLinkElement.html">Web.HTML.HTMLLinkElement</a></li><li><a href="Web.HTML.HTMLMapElement.html">Web.HTML.HTMLMapElement</a></li><li><a href="Web.HTML.HTMLMediaElement.html">Web.HTML.HTMLMediaElement</a></li><li><a href="Web.HTML.HTMLMediaElement.CanPlayType.html">Web.HTML.HTMLMediaElement.CanPlayType</a></li><li><a href="Web.HTML.HTMLMediaElement.NetworkState.html">Web.HTML.HTMLMediaElement.NetworkState</a></li><li><a href="Web.HTML.HTMLMediaElement.ReadyState.html">Web.HTML.HTMLMediaElement.ReadyState</a></li><li><a href="Web.HTML.HTMLMetaElement.html">Web.HTML.HTMLMetaElement</a></li><li><a href="Web.HTML.HTMLMeterElement.html">Web.HTML.HTMLMeterElement</a></li><li><a href="Web.HTML.HTMLModElement.html">Web.HTML.HTMLModElement</a></li><li><a href="Web.HTML.HTMLOListElement.html">Web.HTML.HTMLOListElement</a></li><li><a href="Web.HTML.HTMLObjectElement.html">Web.HTML.HTMLObjectElement</a></li><li><a href="Web.HTML.HTMLOptGroupElement.html">Web.HTML.HTMLOptGroupElement</a></li><li><a href="Web.HTML.HTMLOptionElement.html">Web.HTML.HTMLOptionElement</a></li><li><a href="Web.HTML.HTMLOutputElement.html">Web.HTML.HTMLOutputElement</a></li><li><a href="Web.HTML.HTMLParagraphElement.html">Web.HTML.HTMLParagraphElement</a></li><li><a href="Web.HTML.HTMLParamElement.html">Web.HTML.HTMLParamElement</a></li><li><a href="Web.HTML.HTMLPreElement.html">Web.HTML.HTMLPreElement</a></li><li><a href="Web.HTML.HTMLProgressElement.html">Web.HTML.HTMLProgressElement</a></li><li><a href="Web.HTML.HTMLQuoteElement.html">Web.HTML.HTMLQuoteElement</a></li><li><a href="Web.HTML.HTMLScriptElement.html">Web.HTML.HTMLScriptElement</a></li><li><a href="Web.HTML.HTMLSelectElement.html">Web.HTML.HTMLSelectElement</a></li><li><a href="Web.HTML.HTMLSourceElement.html">Web.HTML.HTMLSourceElement</a></li><li><a href="Web.HTML.HTMLSpanElement.html">Web.HTML.HTMLSpanElement</a></li><li><a href="Web.HTML.HTMLStyleElement.html">Web.HTML.HTMLStyleElement</a></li><li><a href="Web.HTML.HTMLTableCaptionElement.html">Web.HTML.HTMLTableCaptionElement</a></li><li><a href="Web.HTML.HTMLTableCellElement.html">Web.HTML.HTMLTableCellElement</a></li><li><a href="Web.HTML.HTMLTableColElement.html">Web.HTML.HTMLTableColElement</a></li><li><a href="Web.HTML.HTMLTableDataCellElement.html">Web.HTML.HTMLTableDataCellElement</a></li><li><a href="Web.HTML.HTMLTableElement.html">Web.HTML.HTMLTableElement</a></li><li><a href="Web.HTML.HTMLTableHeaderCellElement.html">Web.HTML.HTMLTableHeaderCellElement</a></li><li><a href="Web.HTML.HTMLTableRowElement.html">Web.HTML.HTMLTableRowElement</a></li><li><a href="Web.HTML.HTMLTableSectionElement.html">Web.HTML.HTMLTableSectionElement</a></li><li><a href="Web.HTML.HTMLTemplateElement.html">Web.HTML.HTMLTemplateElement</a></li><li><a href="Web.HTML.HTMLTextAreaElement.html">Web.HTML.HTMLTextAreaElement</a></li><li><a href="Web.HTML.HTMLTimeElement.html">Web.HTML.HTMLTimeElement</a></li><li><a href="Web.HTML.HTMLTitleElement.html">Web.HTML.HTMLTitleElement</a></li><li><a href="Web.HTML.HTMLTrackElement.html">Web.HTML.HTMLTrackElement</a></li><li><a href="Web.HTML.HTMLTrackElement.ReadyState.html">Web.HTML.HTMLTrackElement.ReadyState</a></li><li><a href="Web.HTML.HTMLUListElement.html">Web.HTML.HTMLUListElement</a></li><li><a href="Web.HTML.HTMLVideoElement.html">Web.HTML.HTMLVideoElement</a></li><li><a href="Web.HTML.History.html">Web.HTML.History</a></li><li><a href="Web.HTML.Location.html">Web.HTML.Location</a></li><li><a href="Web.HTML.Navigator.html">Web.HTML.Navigator</a></li><li><a href="Web.HTML.SelectionMode.html">Web.HTML.SelectionMode</a></li><li><a href="Web.HTML.ValidityState.html">Web.HTML.ValidityState</a></li><li><a href="Web.HTML.Window.html">Web.HTML.Window</a></li><li><a href="Web.Internal.FFI.html">Web.Internal.FFI</a></li><li><a href="Web.Storage.Event.StorageEvent.html">Web.Storage.Event.StorageEvent</a></li><li><a href="Web.Storage.Storage.html">Web.Storage.Storage</a></li><li><a href="Web.UIEvent.CompositionEvent.html">Web.UIEvent.CompositionEvent</a></li><li><a href="Web.UIEvent.CompositionEvent.EventTypes.html">Web.UIEvent.CompositionEvent.EventTypes</a></li><li><a href="Web.UIEvent.EventTypes.html">Web.UIEvent.EventTypes</a></li><li><a href="Web.UIEvent.FocusEvent.html">Web.UIEvent.FocusEvent</a></li><li><a href="Web.UIEvent.FocusEvent.EventTypes.html">Web.UIEvent.FocusEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.html">Web.UIEvent.InputEvent</a></li><li><a href="Web.UIEvent.InputEvent.EventTypes.html">Web.UIEvent.InputEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.InputType.html">Web.UIEvent.InputEvent.InputType</a></li><li><a href="Web.UIEvent.KeyboardEvent.html">Web.UIEvent.KeyboardEvent</a></li><li><a href="Web.UIEvent.KeyboardEvent.EventTypes.html">Web.UIEvent.KeyboardEvent.EventTypes</a></li><li><a href="Web.UIEvent.MouseEvent.html">Web.UIEvent.MouseEvent</a></li><li><a href="Web.UIEvent.MouseEvent.EventTypes.html">Web.UIEvent.MouseEvent.EventTypes</a></li><li><a href="Web.UIEvent.UIEvent.html">Web.UIEvent.UIEvent</a></li><li><a href="Web.UIEvent.WheelEvent.html">Web.UIEvent.WheelEvent</a></li><li><a href="Web.UIEvent.WheelEvent.EventTypes.html">Web.UIEvent.WheelEvent.EventTypes</a></li></ul></div></main></div><div class="footer clearfix"><p>Generated by purs 0.15.15 [development build; commit: UNKNOWN]</p></div><!-- Docs search index. --><script type="text/javascript" src="./docs-search-app.js"></script><script type="text/javascript">window.DocsSearchTypeIndex = {};window.DocsSearchIndex = {};</script></body></html>
generated-docs/html/Control.Apply.htmldeleted−1412
@@ -1,1412 +0,0 @@
2−<html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>PureScript: Control.Apply</title><link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:300,400,400i,700,700i" type="text/css" rel="stylesheet"><style type="text/css">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
5− * 1. Set default font family to sans-serif.
6− * 2. Prevent iOS text size adjust after orientation change, without disabling
11− font-family: sans-serif; /* 1 */
12− -ms-text-size-adjust: 100%; /* 2 */
13− -webkit-text-size-adjust: 100%; /* 2 */
17− * Remove default margin.
24−/* HTML5 display definitions
25− ========================================================================== */
28− * Correct `block` display not defined for any HTML5 element in IE 8/9.
29− * Correct `block` display not defined for `details` or `summary` in IE 10/11
31− * Correct `block` display not defined for `main` in IE 11.
51− * 1. Correct `inline-block` display not defined in IE 8/9.
52− * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
59− display: inline-block; /* 1 */
60− vertical-align: baseline; /* 2 */
64− * Prevent modern browsers from displaying `audio` without controls.
65− * Remove excess height in iOS 5 devices.
68−audio:not([controls]) {
74− * Address `[hidden]` styling not present in IE 8/9/10.
75− * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
84− ========================================================================== */
87− * Remove the gray background color from active links in IE 10.
91− background-color: transparent;
95− * Improve readability when focused and also mouse hovered in all browsers.
103−/* Text-level semantics
104− ========================================================================== */
107− * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
111− border-bottom: 1px dotted;
115− * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
124− * Address styling not present in Safari and Chrome.
132− * Address variable `h1` font-size and margin within `section` and `article`
133− * contexts in Firefox 4+, Safari, and Chrome.
142− * Address styling not present in IE 8/9.
151− * Address inconsistent and variable font size in all browsers.
159− * Prevent `sub` and `sup` affecting `line-height` in all browsers.
167− vertical-align: baseline;
179− ========================================================================== */
182− * Remove border when inside `a` element in IE 8/9/10.
190− * Correct overflow not hidden in IE 9/10/11.
198− ========================================================================== */
201− * Address margin not present in IE 8/9 and Safari.
209− * Address differences between Firefox and other browsers.
213− -moz-box-sizing: content-box;
214− box-sizing: content-box;
219− * Contain overflow in all browsers.
227− * Address odd `em`-unit font size rendering in all browsers.
234− font-family: monospace, monospace;
239− ========================================================================== */
242− * Known limitation: by default, Chrome and Safari on OS X allow very limited
243− * styling of `select`, unless a `border` property is set.
247− * 1. Correct color not being inherited.
248− * Known issue: affects color of disabled elements.
249− * 2. Correct font properties not being inherited.
250− * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
258− color: inherit; /* 1 */
259− font: inherit; /* 2 */
264− * Address `overflow` set to `hidden` in IE 8/9/10/11.
272− * Address inconsistent `text-transform` inheritance for `button` and `select`.
273− * All other form control elements do not inherit `text-transform` values.
274− * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
275− * Correct `select` style inheritance in Firefox.
280− text-transform: none;
284− * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
285− * and `video` controls.
286− * 2. Correct inability to style clickable `input` types in iOS.
287− * 3. Improve usability and consistency of cursor style between image-type
288− * `input` and others.
292−html input[type="button"], /* 1 */
294−input[type="submit"] {
295− -webkit-appearance: button; /* 2 */
296− cursor: pointer; /* 3 */
300− * Re-set default cursor for disabled elements.
304−html input[disabled] {
309− * Remove inner padding and border in Firefox 4+.
312−button::-moz-focus-inner,
313−input::-moz-focus-inner {
319− * Address Firefox 4+ setting `line-height` on `input` using `!important` in
320− * the UA stylesheet.
324− line-height: normal;
328− * It's recommended that you don't attempt to style these elements.
329− * Firefox's implementation doesn't respect box-sizing, padding, or width.
331− * 1. Address box sizing set to `content-box` in IE 8/9/10.
332− * 2. Remove excess padding in IE 8/9/10.
335−input[type="checkbox"],
336−input[type="radio"] {
337− box-sizing: border-box; /* 1 */
342− * Fix the cursor style for Chrome's increment/decrement buttons. For certain
343− * `font-size` values of the `input`, it causes the cursor style of the
344− * decrement button to change from `default` to `text`.
347−input[type="number"]::-webkit-inner-spin-button,
348−input[type="number"]::-webkit-outer-spin-button {
353− * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
354− * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
355− * (include `-moz` to future-proof).
358−input[type="search"] {
359− -webkit-appearance: textfield; /* 1 */
360− -moz-box-sizing: content-box;
361− -webkit-box-sizing: content-box; /* 2 */
362− box-sizing: content-box;
366− * Remove inner padding and search cancel button in Safari and Chrome on OS X.
367− * Safari (but not Chrome) clips the cancel button when the search input has
368− * padding (and `textfield` appearance).
371−input[type="search"]::-webkit-search-cancel-button,
372−input[type="search"]::-webkit-search-decoration {
373− -webkit-appearance: none;
377− * Define consistent border, margin, and padding.
381− border: 1px solid #c0c0c0;
383− padding: 0.35em 0.625em 0.75em;
387− * 1. Correct `color` not being inherited in IE 8/9/10/11.
388− * 2. Remove padding so people aren't caught out if they zero out fieldsets.
397− * Remove default vertical scrollbar in IE 8/9/10/11.
405− * Don't inherit the `font-weight` (applied by a rule above).
406− * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
414− ========================================================================== */
417− * Remove most spacing between table cells.
421− border-collapse: collapse;
429−</style><style type="text/css">/** ************************************************************************* *
430− ** CSS for HTML docs (e.g. Pursuit)
434− ** This CSS file is structured into several sections, from general to
435− ** specific, and (mostly) alphabetically within the sections.
437− ** Several global element styles are used. This is not encouraged and should
438− ** be kept to a minimum. If you want to add new styles you'll most likely
439− ** want to add a new CSS component. See the Components section for examples.
441− ** CSS components use three simple naming ideas from the BEM system:
442− ** - Block: `.my-component`
443− ** - Element: `.my-component__item`
444− ** - Modifier: `.my-component.my-component--highlighted`
447− ** <div .my-component>
448− ** <div .my-component__item>
449− ** <div .my-component__item>
451− ** <div .my-component.my-component--highlighted>
452− ** <div .my-component__item>
453− ** <div .my-component__item>
455− ** Components can be nested.
460− ** Typographic choices for sizes, line-heights and margins are based on a
461− ** musical major third scale (4:5). This gives us a way to find numbers
462− ** and relationships between them that are perceived as harmonic.
464− ** To make use of this modular scale, use a ratio of the form
466− ** where n ∈ ℤ, -6 ≤ n ≤ 8.
470− ** This CSS is generated by less. To compile it:
472− ** npm install [-g] less
473− ** lessc app/static/pursuit.less > app/static/pursuit.css
475− ** ************************************************************************* */
476−/* Section: Variables
477− * ========================================================================== */
478−/* Section: Document Styles
479− * ========================================================================== */
481− color-scheme: light dark;
484− box-sizing: border-box;
485− /* This overflow rule prevents everything from shifting slightly to the side
486− when moving from a page which isn't large enough to generate a scrollbar
493− box-sizing: inherit;
496− background-color: #ffffff;
498− font-family: "Roboto", sans-serif;
502−@media (prefers-color-scheme: dark) {
504− background-color: #141417;
508−@media (min-width: 38em) {
513−/* Section: Utility Classes
514− * ========================================================================== */
526−/* Content hidden like this will still be read by a screen reader */
536− * ========================================================================== */
543− padding-right: 20px;
551− margin-bottom: 3.08em;
554− margin-bottom: 2.44em;
556−@media (min-width: 52em) {
559− padding-right: 30px;
572−@media (min-width: 66em) {
578− * Based on http://www.lwis.net/journal/2008/02/08/pure-css-sticky-footer/
579− * Except we don't support IE6
580− * -------------------------------------------------------------------------- */
585−.everything-except-footer {
587− padding-bottom: 3em;
595− background-color: #1d222d;
598−@media (prefers-color-scheme: dark) {
600− background-color: #1d222d;
607−/* Section: Element Styles
609− * Have as few of these as possible and keep them general, because they will
610− * influence every component hereafter.
611− * ========================================================================== */
613− background-color: #f1f5f9;
615−@media (prefers-color-scheme: dark) {
617− background-color: #232327;
623− text-decoration: none;
626−@media (prefers-color-scheme: dark) {
634− text-decoration: none;
636−@media (prefers-color-scheme: dark) {
643− background-color: #f1f5f9;
646− font-family: "Roboto Mono", monospace;
649−@media (prefers-color-scheme: dark) {
652− background-color: #232327;
658− background-color: #dfe8f1;
660−@media (prefers-color-scheme: dark) {
663− background-color: #2f2f34;
669− white-space: pre-wrap;
670− word-wrap: break-word;
674− letter-spacing: -0.2em;
678− font-weight: normal;
682− letter-spacing: 0.33em;
687−@media (prefers-color-scheme: dark) {
695− padding: 1em 1.25rem;
696− /* Using rem here to align with lists etc. */
702− background-color: transparent;
709− line-height: inherit;
721− letter-spacing: -0.5px;
723− margin-top: 1.563rem;
724− margin-bottom: 1.25rem;
726−@media (min-width: 52em) {
729− margin-top: 5.96rem;
734− font-weight: normal;
736− margin-top: 3.052rem;
737− margin-bottom: 1rem;
741− font-weight: normal;
743− margin-top: 2.441rem;
744− margin-bottom: 1rem;
748− font-weight: normal;
749− margin-top: 2.441rem;
750− margin-bottom: 1rem;
763− background-color: #cccccc;
765−@media (prefers-color-scheme: dark) {
767− background-color: #43434e;
777− margin-bottom: 1rem;
780− border-bottom: 1px solid #cccccc;
781− border-collapse: collapse;
784− margin-bottom: 1rem;
787−@media (prefers-color-scheme: dark) {
789− border-bottom-color: #43434e;
795− padding: 0.41em 0.51em;
798− border-top: 1px solid #cccccc;
800−@media (prefers-color-scheme: dark) {
802− border-top-color: #43434e;
814− list-style-type: none;
816− margin-bottom: 1rem;
821− padding-left: 1.25em;
827− display: inline-block;
828− margin-left: -1.25em;
831−@media (prefers-color-scheme: dark) {
836−/* Tying this tightly to ul at the moment because it's a slight variation thereof */
837−ul.ul--search li::before {
840− transform: rotate(-45deg);
844− margin-bottom: 1rem;
845− padding-left: 1.25em;
851−/* Section: Components
852− * ========================================================================== */
854− * -------------------------------------------------------------------------- */
858− display: inline-block;
859− background-color: #000000;
860− border-radius: 1.3em;
869−@media (prefers-color-scheme: dark) {
871− background-color: #dedede;
875−.badge.badge--package {
876− background-color: #c4953a;
877− letter-spacing: -0.1em;
879−@media (prefers-color-scheme: dark) {
880− .badge.badge--package {
881− background-color: #d8ac55;
884−.badge.badge--module {
885− background-color: #75B134;
887−/* Component: Declarations
888− * -------------------------------------------------------------------------- */
891− padding-bottom: 0.328em;
892− margin-bottom: 0.262em;
902−.decl__anchor:visited {
907−@media (prefers-color-scheme: dark) {
909− .decl__anchor:visited {
913−.decl__anchor:hover {
916−@media (prefers-color-scheme: dark) {
917− .decl__anchor:hover {
922− background-color: transparent;
924− border-top: 1px solid #cccccc;
925− border-bottom: 1px solid #cccccc;
928−@media (prefers-color-scheme: dark) {
930− border-top-color: #43434e;
931− border-bottom-color: #43434e;
934−.decl__signature code {
937− padding-left: 2.441em;
938− text-indent: -2.441em;
939− white-space: normal;
942− font-family: "Roboto", sans-serif;
944− font-weight: normal;
946−/* See https://stackoverflow.com/a/32162038
947− Content licensed under CC BY-SA 3.0
949−.decl__role_hover[title] {
950− /* Remove line that appears under abbr element */
951− border-bottom: none;
952− text-decoration: none;
953− /* Ensure cursor doesn't change to question mark */
956−.decl__role_nominal::after {
959−.decl__role_phantom::after {
963− border-bottom: 1px solid #cccccc;
965−@media (prefers-color-scheme: dark) {
967− border-bottom-color: #43434e;
970−:target .decl__signature,
971−:target .decl__signature code {
972− /* We want the background to be transparent, even when the parent is a target */
973− background-color: transparent;
975−.decl__body .keyword,
976−.decl__body .syntax {
979−@media (prefers-color-scheme: dark) {
980− .decl__body .keyword,
981− .decl__body .syntax {
985−.decl__child_comments {
987− margin-bottom: 1rem;
989−/* Component: Dependency Link
990− * -------------------------------------------------------------------------- */
992− /* Currently no root styles, but keep the class as a namespace */
995− display: inline-block;
996− margin-right: 0.41em;
1000− display: inline-block;
1004−@media (prefers-color-scheme: dark) {
1005− .deplink__version {
1009−/* Component: Grouped List
1010− * -------------------------------------------------------------------------- */
1012− border-top: 1px solid #cccccc;
1013− margin: 0 0 2.44em 0;
1015−@media (prefers-color-scheme: dark) {
1017− border-top-color: #43434e;
1020−.grouped-list__title {
1024− letter-spacing: 1px;
1025− margin: 0.8em 0 -0.1em 0;
1026− text-transform: uppercase;
1028−@media (prefers-color-scheme: dark) {
1029− .grouped-list__title {
1030− border-top-color: #a0a0a0;
1033−.grouped-list__item {
1036−/* Component: Message
1037− * -------------------------------------------------------------------------- */
1040− border-radius: 5px;
1041− padding: 1em !important;
1043−.message.message--error {
1044− background-color: #fff0f0;
1045− border-color: #c85050;
1047−@media (prefers-color-scheme: dark) {
1048− .message.message--error {
1049− background-color: #6b0e0e;
1050− border-color: #c85050;
1053−.message.message--not-available {
1054− background-color: #f0f096;
1055− border-color: #e3e33d;
1057−@media (prefers-color-scheme: dark) {
1058− .message.message--not-available {
1059− background-color: #56560b;
1060− border-color: #b0b017;
1063−/* Component: Multi Col
1064− * Multiple columns side by side
1065− * -------------------------------------------------------------------------- */
1067− margin-bottom: 2.44em;
1071− padding-right: 1em;
1072− position: relative;
1075−@media (min-width: 38em) and (max-width: 51.999999em) {
1080− .multi-col__col:nth-child(2n+3) {
1084−@media (min-width: 52em) {
1089− .multi-col__col:nth-child(3n+4) {
1093−/* Component: Page Title
1094− * -------------------------------------------------------------------------- */
1096− margin: 4.77em 0 1.56em;
1097− padding-bottom: 1.25em;
1098− position: relative;
1100−.page-title__title {
1101− margin: 0 0 0 -0.05em;
1102− /* Visually align on left edge */
1104−.page-title__label {
1105− position: relative;
1109− letter-spacing: 1px;
1110− margin-bottom: -0.8em;
1111− text-transform: uppercase;
1114−@media (prefers-color-scheme: dark) {
1115− .page-title__label {
1119−/* Component: Top Banner
1120− * -------------------------------------------------------------------------- */
1122− background-color: #1d222d;
1124− font-weight: normal;
1126−@media (prefers-color-scheme: dark) {
1128− background-color: #1d222d;
1133−.top-banner__logo:visited {
1141−@media (prefers-color-scheme: dark) {
1143− .top-banner__logo:visited {
1147−.top-banner__logo:hover {
1149− text-decoration: none;
1152− margin-bottom: 1.25em;
1154−.top-banner__form input {
1155− border: 1px solid #1d222d;
1156− border-radius: 3px;
1157− background-color: #ffffff;
1161− padding: 0.21em 0.512em;
1164−@media (prefers-color-scheme: dark) {
1165− .top-banner__form input {
1166− border-color: #1d222d;
1167− background-color: #141417;
1171−.top-banner__actions {
1175−.top-banner__actions__item {
1176− display: inline-block;
1179− padding-left: 1.25em;
1181−.top-banner__actions__item:first-child {
1184−.top-banner__actions__item a,
1185−.top-banner__actions__item a:visited {
1188−@media (prefers-color-scheme: dark) {
1189− .top-banner__actions__item a,
1190− .top-banner__actions__item a:visited {
1194−.top-banner__actions__item a:hover {
1197−@media (prefers-color-scheme: dark) {
1198− .top-banner__actions__item a:hover {
1202−@media (min-width: 38em) {
1203− .top-banner__logo {
1207− .top-banner__form {
1213− .top-banner__actions {
1218−/* Component: Search Results
1219− * -------------------------------------------------------------------------- */
1220−.result.result--empty {
1225− margin-bottom: 0.2rem;
1228− margin-left: -0.1em;
1230−.result__body > *:first-child {
1231− margin-top: 0!important;
1233−.result__body > *:last-child {
1234− margin-bottom: 0!important;
1236−.result__signature {
1237− background-color: transparent;
1239− border-top: 1px solid #cccccc;
1240− border-bottom: 1px solid #cccccc;
1241− padding: 0.328em 0;
1243−@media (prefers-color-scheme: dark) {
1244− .result__signature {
1245− border-top-color: #43434e;
1246− border-bottom-color: #43434e;
1249−.result__signature code {
1251− padding-left: 2.441em;
1252− text-indent: -2.441em;
1253− white-space: normal;
1256− margin-top: 0.2rem;
1258−.result__actions__item {
1261−.result__actions__item + .result__actions__item {
1262− margin-left: 0.65em;
1264−/* Component: Version Selector
1265− * -------------------------------------------------------------------------- */
1267− margin-bottom: 0.8em;
1269−@media (min-width: 38em) {
1270− .version-selector {
1271− position: absolute;
1278− * These styles should be cleaned up
1279− * ========================================================================== */
1280−/* Help paragraphs */
1285− /* FIXME: target with class */
1288−/* Section: Markdown
1289− * Github rendered README
1290− * ========================================================================== */
1293− Useful for narrow screens, such as mobiles. Documentation often contains URLs
1294− which would otherwise force the page to become wider, and force creation of
1295− horizontal scrollbars. Yuck.
1297− word-wrap: break-word;
1299−.markdown-body > *:first-child {
1300− margin-top: 0 !important;
1302−.markdown-body > *:last-child {
1303− margin-bottom: 0 !important;
1305−.markdown-body a:not([href]) {
1307− text-decoration: none;
1309−.markdown-body blockquote {
1313− border-left: 0.25em solid #ddd;
1315−@media (prefers-color-scheme: dark) {
1316− .markdown-body blockquote {
1317− border-left-color: #444;
1320−.markdown-body blockquote > :first-child {
1323−.markdown-body blockquote > :last-child {
1326−.markdown-body .anchor {
1327− /* We hide the anchor because the link doesn't point to a valid location */
1330−.markdown-body .pl-k {
1334−@media (prefers-color-scheme: dark) {
1335− .markdown-body .pl-k {
1339−.markdown-body .pl-c1,
1340−.markdown-body .pl-en {
1341− /* Not really sure what this is */
1344−.markdown-body .pl-s {
1345− /* String literals */
1348−.markdown-body .pl-cce {
1349− /* String literal escape sequences */
1352−.markdown-body .pl-smi {
1353− /* type variables? */
1356−</style></head><body><div class="everything-except-footer"><div class="top-banner clearfix"><div class="container clearfix"><div style="float: left; font-size: 2.44em; font-weight: 300; line-height: 90px; margin: 0">PureScript API documentation</div><div class="top-banner__actions"><div class="top-banner__actions__item"><a href="index.html">Index</a></div></div></div></div><main class="container clearfix" role="main"><div class="page-title clearfix"><div class="page-title__label">Module</div><h1 class="page-title__title">Control.Apply</h1></div><div class="col col--main"><div class="decl" id="t:Apply"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Apply">#</a><span>Apply</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <span class="syntax">(</span><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> f<span class="syntax">)</span> <span class="syntax"><=</span> <a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> f <span class="keyword">where</span></code></pre><p>The <code>Apply</code> class provides the <code>(<*>)</code> which is used to apply a function
1357−to an argument under a type constructor.</p>
1358−<p><code>Apply</code> can be used to lift functions of two or more arguments to work on
1359−values wrapped with the type constructor <code>f</code>. It might also be understood
1360−in terms of the <code>lift2</code> function:</p>
1361−<pre class="purescript"><code>lift2 :: forall f a b c. Apply f => (a -> b -> c) -> f a -> f b -> f c
1362−lift2 f a b = f <$> a <*> b
1364−<p><code>(<*>)</code> is recovered from <code>lift2</code> as <code>lift2 ($)</code>. That is, <code>(<*>)</code> lifts
1365−the function application operator <code>($)</code> to arguments wrapped with the
1366−type constructor <code>f</code>.</p>
1367−<p>Put differently...</p>
1369− functionTakingNArguments <$> computationProducingArg1
1370− <*> computationProducingArg2
1372− <*> computationProducingArgN
1374−<p>Instances must satisfy the following law in addition to the <code>Functor</code>
1377−<li>Associative composition: <code>(<<<) <$> f <*> g <*> h = f <*> (g <*> h)</code></li>
1379−<p>Formally, <code>Apply</code> represents a strong lax semi-monoidal endofunctor.</p>
1380−<h4>Members</h4><ul><li id="v:apply"><code><a href="Control.Apply.html#v:apply" title="Control.Apply.apply"><span class="ident">apply</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b<span class="syntax">.</span> f <span class="syntax">(</span>a <span class="syntax">-></span> b<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b</code></li></ul><h4>Instances</h4><ul><li id="v:applyFn"><code><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> <span class="syntax">(</span><a href="Prim.html#t:Function" title="Prim.Function"><span class="ctor">Function</span></a> r<span class="syntax">)</span></code></li><li id="v:applyArray"><code><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li><li id="v:applyProxy"><code><a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> <a href="Type.Proxy.html#t:Proxy" title="Type.Proxy.Proxy"><span class="ctor">Proxy</span></a></code></li></ul></div></div><div class="decl" id="v:(<*>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<*>)">#</a><span>(<*>)</span> </h3><div class="decl__body"><p>Operator alias for Control.Apply.apply <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:applyFirst"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:applyFirst">#</a><span>applyFirst</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Apply.html#v:applyFirst" title="Control.Apply.applyFirst"><span class="ident">applyFirst</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b <span class="syntax"></span>f<span class="syntax">.</span> <a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> f <span class="syntax">=></span> f a <span class="syntax">-></span> f b <span class="syntax">-></span> f a</code></pre><p>Combine two effectful actions, keeping only the result of the first.</p>
1381−</div></div><div class="decl" id="v:(<*)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<*)">#</a><span>(<*)</span> </h3><div class="decl__body"><p>Operator alias for Control.Apply.applyFirst <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:applySecond"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:applySecond">#</a><span>applySecond</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Apply.html#v:applySecond" title="Control.Apply.applySecond"><span class="ident">applySecond</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b <span class="syntax"></span>f<span class="syntax">.</span> <a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> f <span class="syntax">=></span> f a <span class="syntax">-></span> f b <span class="syntax">-></span> f b</code></pre><p>Combine two effectful actions, keeping only the result of the second.</p>
1382−</div></div><div class="decl" id="v:(*>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(*>)">#</a><span>(*>)</span> </h3><div class="decl__body"><p>Operator alias for Control.Apply.applySecond <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:lift2"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:lift2">#</a><span>lift2</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Apply.html#v:lift2" title="Control.Apply.lift2"><span class="ident">lift2</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b <span class="syntax"></span>c <span class="syntax"></span>f<span class="syntax">.</span> <a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> f <span class="syntax">=></span> <span class="syntax">(</span>a <span class="syntax">-></span> b <span class="syntax">-></span> c<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b <span class="syntax">-></span> f c</code></pre><p>Lift a function of two arguments to a function which accepts and returns
1383−values wrapped with the type constructor <code>f</code>.</p>
1384−<pre class="purescript"><code>lift2 add (Just 1) (Just 2) == Just 3
1385−lift2 add Nothing (Just 2) == Nothing
1387−</div></div><div class="decl" id="v:lift3"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:lift3">#</a><span>lift3</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Apply.html#v:lift3" title="Control.Apply.lift3"><span class="ident">lift3</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b <span class="syntax"></span>c <span class="syntax"></span>d <span class="syntax"></span>f<span class="syntax">.</span> <a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> f <span class="syntax">=></span> <span class="syntax">(</span>a <span class="syntax">-></span> b <span class="syntax">-></span> c <span class="syntax">-></span> d<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b <span class="syntax">-></span> f c <span class="syntax">-></span> f d</code></pre><p>Lift a function of three arguments to a function which accepts and returns
1388−values wrapped with the type constructor <code>f</code>.</p>
1389−</div></div><div class="decl" id="v:lift4"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:lift4">#</a><span>lift4</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Apply.html#v:lift4" title="Control.Apply.lift4"><span class="ident">lift4</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b <span class="syntax"></span>c <span class="syntax"></span>d <span class="syntax"></span>e <span class="syntax"></span>f<span class="syntax">.</span> <a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> f <span class="syntax">=></span> <span class="syntax">(</span>a <span class="syntax">-></span> b <span class="syntax">-></span> c <span class="syntax">-></span> d <span class="syntax">-></span> e<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b <span class="syntax">-></span> f c <span class="syntax">-></span> f d <span class="syntax">-></span> f e</code></pre><p>Lift a function of four arguments to a function which accepts and returns
1390−values wrapped with the type constructor <code>f</code>.</p>
1391−</div></div><div class="decl" id="v:lift5"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:lift5">#</a><span>lift5</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Apply.html#v:lift5" title="Control.Apply.lift5"><span class="ident">lift5</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b <span class="syntax"></span>c <span class="syntax"></span>d <span class="syntax"></span>e <span class="syntax"></span>f <span class="syntax"></span>g<span class="syntax">.</span> <a href="Control.Apply.html#t:Apply" title="Control.Apply.Apply"><span class="ctor">Apply</span></a> f <span class="syntax">=></span> <span class="syntax">(</span>a <span class="syntax">-></span> b <span class="syntax">-></span> c <span class="syntax">-></span> d <span class="syntax">-></span> e <span class="syntax">-></span> g<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b <span class="syntax">-></span> f c <span class="syntax">-></span> f d <span class="syntax">-></span> f e <span class="syntax">-></span> f g</code></pre><p>Lift a function of five arguments to a function which accepts and returns
1392−values wrapped with the type constructor <code>f</code>.</p>
1393−</div></div><h2 class="re-exports">Re-exports from <a href="Data.Functor.html">Data.Functor</a></h2><div class="decl" id="t:Functor"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Functor">#</a><span>Functor</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Apply.html#t:Functor" title="Control.Apply.Functor"><span class="ctor">Functor</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <a href="Control.Apply.html#t:Functor" title="Control.Apply.Functor"><span class="ctor">Functor</span></a> f <span class="keyword">where</span></code></pre><p>A <code>Functor</code> is a type constructor which supports a mapping operation
1394−<code>map</code>.</p>
1395−<p><code>map</code> can be used to turn functions <code>a -> b</code> into functions
1396−<code>f a -> f b</code> whose argument and return types use the type constructor <code>f</code>
1397−to represent some computational context.</p>
1398−<p>Instances must satisfy the following laws:</p>
1400−<li>Identity: <code>map identity = identity</code></li>
1401−<li>Composition: <code>map (f <<< g) = map f <<< map g</code></li>
1403−<h4>Members</h4><ul><li id="v:map"><code><a href="Control.Apply.html#v:map" title="Control.Apply.map"><span class="ident">map</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b<span class="syntax">.</span> <span class="syntax">(</span>a <span class="syntax">-></span> b<span class="syntax">)</span> <span class="syntax">-></span> f a <span class="syntax">-></span> f b</code></li></ul><h4>Instances</h4><ul><li id="v:functorFn"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <span class="syntax">(</span><a href="Prim.html#t:Function" title="Prim.Function"><span class="ctor">Function</span></a> r<span class="syntax">)</span></code></li><li id="v:functorArray"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <a href="Prim.html#t:Array" title="Prim.Array"><span class="ctor">Array</span></a></code></li><li id="v:functorProxy"><code><a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> <a href="Type.Proxy.html#t:Proxy" title="Type.Proxy.Proxy"><span class="ctor">Proxy</span></a></code></li></ul></div></div><div class="decl" id="v:void"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:void">#</a><span>void</span> </h3><div class="decl__body"><pre class="decl__signature"><code><a href="Control.Apply.html#v:void" title="Control.Apply.void"><span class="ident">void</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>f <span class="syntax"></span>a<span class="syntax">.</span> <a href="Data.Functor.html#t:Functor" title="Data.Functor.Functor"><span class="ctor">Functor</span></a> f <span class="syntax">=></span> f a <span class="syntax">-></span> f <a href="Data.Unit.html#t:Unit" title="Data.Unit.Unit"><span class="ctor">Unit</span></a></code></pre><p>The <code>void</code> function is used to ignore the type wrapped by a
1404−<code>Functor</code>, replacing it with <code>Unit</code> and keeping only the type
1405−information provided by the type constructor itself.</p>
1406−<p><code>void</code> is often useful when using <code>do</code> notation to change the return type
1407−of a monadic computation:</p>
1408−<pre class="purescript"><code>main = forE 1 10 \n -> void do
1412−</div></div><div class="decl" id="v:(<$>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<$>)">#</a><span>(<$>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.map <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(<$)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<$)">#</a><span>(<$)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.voidRight <em>(left-associative / precedence 4)</em></p></div></div><div class="decl" id="v:(<#>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:(<#>)">#</a><span>(<#>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.mapFlipped <em>(left-associative / precedence 1)</em></p></div></div><div class="decl" id="v:($>)"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#v:($>)">#</a><span>($>)</span> </h3><div class="decl__body"><p>Operator alias for Data.Functor.voidLeft <em>(left-associative / precedence 4)</em></p></div></div></div><div class="col col--aside"><h3>Modules</h3><ul><li><a href="Ansi.Codes.html">Ansi.Codes</a></li><li><a href="Ansi.Output.html">Ansi.Output</a></li><li><a href="Bolson.Control.html">Bolson.Control</a></li><li><a href="Bolson.Core.html">Bolson.Core</a></li><li><a href="Control.Alt.html">Control.Alt</a></li><li><a href="Control.Alternative.html">Control.Alternative</a></li><li><a href="Control.Applicative.html">Control.Applicative</a></li><li><a href="Control.Apply.html">Control.Apply</a></li><li><a href="Control.Biapplicative.html">Control.Biapplicative</a></li><li><a href="Control.Biapply.html">Control.Biapply</a></li><li><a href="Control.Bind.html">Control.Bind</a></li><li><a href="Control.Category.html">Control.Category</a></li><li><a href="Control.Comonad.html">Control.Comonad</a></li><li><a href="Control.Comonad.Cofree.html">Control.Comonad.Cofree</a></li><li><a href="Control.Comonad.Cofree.Class.html">Control.Comonad.Cofree.Class</a></li><li><a href="Control.Comonad.Env.html">Control.Comonad.Env</a></li><li><a href="Control.Comonad.Env.Class.html">Control.Comonad.Env.Class</a></li><li><a href="Control.Comonad.Env.Trans.html">Control.Comonad.Env.Trans</a></li><li><a href="Control.Comonad.Store.html">Control.Comonad.Store</a></li><li><a href="Control.Comonad.Store.Class.html">Control.Comonad.Store.Class</a></li><li><a href="Control.Comonad.Store.Trans.html">Control.Comonad.Store.Trans</a></li><li><a href="Control.Comonad.Traced.html">Control.Comonad.Traced</a></li><li><a href="Control.Comonad.Traced.Class.html">Control.Comonad.Traced.Class</a></li><li><a href="Control.Comonad.Traced.Trans.html">Control.Comonad.Traced.Trans</a></li><li><a href="Control.Comonad.Trans.Class.html">Control.Comonad.Trans.Class</a></li><li><a href="Control.Extend.html">Control.Extend</a></li><li><a href="Control.Lazy.html">Control.Lazy</a></li><li><a href="Control.Monad.html">Control.Monad</a></li><li><a href="Control.Monad.Cont.html">Control.Monad.Cont</a></li><li><a href="Control.Monad.Cont.Class.html">Control.Monad.Cont.Class</a></li><li><a href="Control.Monad.Cont.Trans.html">Control.Monad.Cont.Trans</a></li><li><a href="Control.Monad.Error.Class.html">Control.Monad.Error.Class</a></li><li><a href="Control.Monad.Except.html">Control.Monad.Except</a></li><li><a href="Control.Monad.Except.Trans.html">Control.Monad.Except.Trans</a></li><li><a href="Control.Monad.Fork.Class.html">Control.Monad.Fork.Class</a></li><li><a href="Control.Monad.Free.html">Control.Monad.Free</a></li><li><a href="Control.Monad.Free.Class.html">Control.Monad.Free.Class</a></li><li><a href="Control.Monad.Gen.html">Control.Monad.Gen</a></li><li><a href="Control.Monad.Gen.Class.html">Control.Monad.Gen.Class</a></li><li><a href="Control.Monad.Gen.Common.html">Control.Monad.Gen.Common</a></li><li><a href="Control.Monad.Identity.Trans.html">Control.Monad.Identity.Trans</a></li><li><a href="Control.Monad.List.Trans.html">Control.Monad.List.Trans</a></li><li><a href="Control.Monad.Maybe.Trans.html">Control.Monad.Maybe.Trans</a></li><li><a href="Control.Monad.Morph.html">Control.Monad.Morph</a></li><li><a href="Control.Monad.RWS.html">Control.Monad.RWS</a></li><li><a href="Control.Monad.RWS.Trans.html">Control.Monad.RWS.Trans</a></li><li><a href="Control.Monad.Reader.html">Control.Monad.Reader</a></li><li><a href="Control.Monad.Reader.Class.html">Control.Monad.Reader.Class</a></li><li><a href="Control.Monad.Reader.Trans.html">Control.Monad.Reader.Trans</a></li><li><a href="Control.Monad.Rec.Class.html">Control.Monad.Rec.Class</a></li><li><a href="Control.Monad.ST.html">Control.Monad.ST</a></li><li><a href="Control.Monad.ST.Class.html">Control.Monad.ST.Class</a></li><li><a href="Control.Monad.ST.Global.html">Control.Monad.ST.Global</a></li><li><a href="Control.Monad.ST.Internal.html">Control.Monad.ST.Internal</a></li><li><a href="Control.Monad.ST.Ref.html">Control.Monad.ST.Ref</a></li><li><a href="Control.Monad.ST.Uncurried.html">Control.Monad.ST.Uncurried</a></li><li><a href="Control.Monad.State.html">Control.Monad.State</a></li><li><a href="Control.Monad.State.Class.html">Control.Monad.State.Class</a></li><li><a href="Control.Monad.State.Trans.html">Control.Monad.State.Trans</a></li><li><a href="Control.Monad.Trampoline.html">Control.Monad.Trampoline</a></li><li><a href="Control.Monad.Trans.Class.html">Control.Monad.Trans.Class</a></li><li><a href="Control.Monad.Writer.html">Control.Monad.Writer</a></li><li><a href="Control.Monad.Writer.Class.html">Control.Monad.Writer.Class</a></li><li><a href="Control.Monad.Writer.Trans.html">Control.Monad.Writer.Trans</a></li><li><a href="Control.MonadPlus.html">Control.MonadPlus</a></li><li><a href="Control.Parallel.html">Control.Parallel</a></li><li><a href="Control.Parallel.Class.html">Control.Parallel.Class</a></li><li><a href="Control.Plus.html">Control.Plus</a></li><li><a href="Control.Semigroupoid.html">Control.Semigroupoid</a></li><li><a href="Data.Array.html">Data.Array</a></li><li><a href="Data.Array.NonEmpty.html">Data.Array.NonEmpty</a></li><li><a href="Data.Array.NonEmpty.Internal.html">Data.Array.NonEmpty.Internal</a></li><li><a href="Data.Array.Partial.html">Data.Array.Partial</a></li><li><a href="Data.Array.ST.html">Data.Array.ST</a></li><li><a href="Data.Array.ST.Iterator.html">Data.Array.ST.Iterator</a></li><li><a href="Data.Array.ST.Partial.html">Data.Array.ST.Partial</a></li><li><a href="Data.ArrayBuffer.Types.html">Data.ArrayBuffer.Types</a></li><li><a href="Data.Bifoldable.html">Data.Bifoldable</a></li><li><a href="Data.Bifunctor.html">Data.Bifunctor</a></li><li><a href="Data.Bifunctor.Join.html">Data.Bifunctor.Join</a></li><li><a href="Data.Bitraversable.html">Data.Bitraversable</a></li><li><a href="Data.Boolean.html">Data.Boolean</a></li><li><a href="Data.BooleanAlgebra.html">Data.BooleanAlgebra</a></li><li><a href="Data.Bounded.html">Data.Bounded</a></li><li><a href="Data.Bounded.Generic.html">Data.Bounded.Generic</a></li><li><a href="Data.CatList.html">Data.CatList</a></li><li><a href="Data.CatQueue.html">Data.CatQueue</a></li><li><a href="Data.Char.html">Data.Char</a></li><li><a href="Data.Char.Gen.html">Data.Char.Gen</a></li><li><a href="Data.CommutativeRing.html">Data.CommutativeRing</a></li><li><a href="Data.Compactable.html">Data.Compactable</a></li><li><a href="Data.Comparison.html">Data.Comparison</a></li><li><a href="Data.Const.html">Data.Const</a></li><li><a href="Data.Coyoneda.html">Data.Coyoneda</a></li><li><a href="Data.Date.html">Data.Date</a></li><li><a href="Data.Date.Component.html">Data.Date.Component</a></li><li><a href="Data.Date.Component.Gen.html">Data.Date.Component.Gen</a></li><li><a href="Data.Date.Gen.html">Data.Date.Gen</a></li><li><a href="Data.DateTime.html">Data.DateTime</a></li><li><a href="Data.DateTime.Gen.html">Data.DateTime.Gen</a></li><li><a href="Data.DateTime.Instant.html">Data.DateTime.Instant</a></li><li><a href="Data.Decidable.html">Data.Decidable</a></li><li><a href="Data.Decide.html">Data.Decide</a></li><li><a href="Data.Distributive.html">Data.Distributive</a></li><li><a href="Data.Divide.html">Data.Divide</a></li><li><a href="Data.Divisible.html">Data.Divisible</a></li><li><a href="Data.DivisionRing.html">Data.DivisionRing</a></li><li><a href="Data.Either.html">Data.Either</a></li><li><a href="Data.Either.Inject.html">Data.Either.Inject</a></li><li><a href="Data.Either.Nested.html">Data.Either.Nested</a></li><li><a href="Data.Enum.html">Data.Enum</a></li><li><a href="Data.Enum.Gen.html">Data.Enum.Gen</a></li><li><a href="Data.Enum.Generic.html">Data.Enum.Generic</a></li><li><a href="Data.Eq.html">Data.Eq</a></li><li><a href="Data.Eq.Generic.html">Data.Eq.Generic</a></li><li><a href="Data.Equivalence.html">Data.Equivalence</a></li><li><a href="Data.EuclideanRing.html">Data.EuclideanRing</a></li><li><a href="Data.Exists.html">Data.Exists</a></li><li><a href="Data.FastVect.Common.html">Data.FastVect.Common</a></li><li><a href="Data.FastVect.Common.Matrix.html">Data.FastVect.Common.Matrix</a></li><li><a href="Data.FastVect.FastVect.html">Data.FastVect.FastVect</a></li><li><a href="Data.FastVect.FastVect.Matrix.html">Data.FastVect.FastVect.Matrix</a></li><li><a href="Data.FastVect.MinLenVect.html">Data.FastVect.MinLenVect</a></li><li><a href="Data.FastVect.Sparse.Read.html">Data.FastVect.Sparse.Read</a></li><li><a href="Data.FastVect.Sparse.Write.html">Data.FastVect.Sparse.Write</a></li><li><a href="Data.Field.html">Data.Field</a></li><li><a href="Data.Filterable.html">Data.Filterable</a></li><li><a href="Data.Foldable.html">Data.Foldable</a></li><li><a href="Data.FoldableWithIndex.html">Data.FoldableWithIndex</a></li><li><a href="Data.Function.html">Data.Function</a></li><li><a href="Data.Function.Uncurried.html">Data.Function.Uncurried</a></li><li><a href="Data.Functor.html">Data.Functor</a></li><li><a href="Data.Functor.App.html">Data.Functor.App</a></li><li><a href="Data.Functor.Clown.html">Data.Functor.Clown</a></li><li><a href="Data.Functor.Compose.html">Data.Functor.Compose</a></li><li><a href="Data.Functor.Contravariant.html">Data.Functor.Contravariant</a></li><li><a href="Data.Functor.Coproduct.html">Data.Functor.Coproduct</a></li><li><a href="Data.Functor.Coproduct.Inject.html">Data.Functor.Coproduct.Inject</a></li><li><a href="Data.Functor.Coproduct.Nested.html">Data.Functor.Coproduct.Nested</a></li><li><a href="Data.Functor.Costar.html">Data.Functor.Costar</a></li><li><a href="Data.Functor.Flip.html">Data.Functor.Flip</a></li><li><a href="Data.Functor.Invariant.html">Data.Functor.Invariant</a></li><li><a href="Data.Functor.Joker.html">Data.Functor.Joker</a></li><li><a href="Data.Functor.Product.html">Data.Functor.Product</a></li><li><a href="Data.Functor.Product.Nested.html">Data.Functor.Product.Nested</a></li><li><a href="Data.Functor.Product2.html">Data.Functor.Product2</a></li><li><a href="Data.Functor.Variant.html">Data.Functor.Variant</a></li><li><a href="Data.FunctorWithIndex.html">Data.FunctorWithIndex</a></li><li><a href="Data.Generic.Rep.html">Data.Generic.Rep</a></li><li><a href="Data.HeytingAlgebra.html">Data.HeytingAlgebra</a></li><li><a href="Data.HeytingAlgebra.Generic.html">Data.HeytingAlgebra.Generic</a></li><li><a href="Data.Identity.html">Data.Identity</a></li><li><a href="Data.Int.html">Data.Int</a></li><li><a href="Data.Int.Bits.html">Data.Int.Bits</a></li><li><a href="Data.Interval.html">Data.Interval</a></li><li><a href="Data.Interval.Duration.html">Data.Interval.Duration</a></li><li><a href="Data.Interval.Duration.Iso.html">Data.Interval.Duration.Iso</a></li><li><a href="Data.JSDate.html">Data.JSDate</a></li><li><a href="Data.Lazy.html">Data.Lazy</a></li><li><a href="Data.List.html">Data.List</a></li><li><a href="Data.List.Internal.html">Data.List.Internal</a></li><li><a href="Data.List.Lazy.html">Data.List.Lazy</a></li><li><a href="Data.List.Lazy.NonEmpty.html">Data.List.Lazy.NonEmpty</a></li><li><a href="Data.List.Lazy.Types.html">Data.List.Lazy.Types</a></li><li><a href="Data.List.NonEmpty.html">Data.List.NonEmpty</a></li><li><a href="Data.List.Partial.html">Data.List.Partial</a></li><li><a href="Data.List.Types.html">Data.List.Types</a></li><li><a href="Data.List.ZipList.html">Data.List.ZipList</a></li><li><a href="Data.Map.html">Data.Map</a></li><li><a href="Data.Map.Gen.html">Data.Map.Gen</a></li><li><a href="Data.Map.Internal.html">Data.Map.Internal</a></li><li><a href="Data.Maybe.html">Data.Maybe</a></li><li><a href="Data.Maybe.First.html">Data.Maybe.First</a></li><li><a href="Data.Maybe.Last.html">Data.Maybe.Last</a></li><li><a href="Data.MediaType.html">Data.MediaType</a></li><li><a href="Data.MediaType.Common.html">Data.MediaType.Common</a></li><li><a href="Data.Monoid.html">Data.Monoid</a></li><li><a href="Data.Monoid.Additive.html">Data.Monoid.Additive</a></li><li><a href="Data.Monoid.Alternate.html">Data.Monoid.Alternate</a></li><li><a href="Data.Monoid.Conj.html">Data.Monoid.Conj</a></li><li><a href="Data.Monoid.Disj.html">Data.Monoid.Disj</a></li><li><a href="Data.Monoid.Dual.html">Data.Monoid.Dual</a></li><li><a href="Data.Monoid.Endo.html">Data.Monoid.Endo</a></li><li><a href="Data.Monoid.Generic.html">Data.Monoid.Generic</a></li><li><a href="Data.Monoid.Multiplicative.html">Data.Monoid.Multiplicative</a></li><li><a href="Data.NaturalTransformation.html">Data.NaturalTransformation</a></li><li><a href="Data.Newtype.html">Data.Newtype</a></li><li><a href="Data.NonEmpty.html">Data.NonEmpty</a></li><li><a href="Data.Nullable.html">Data.Nullable</a></li><li><a href="Data.Number.html">Data.Number</a></li><li><a href="Data.Number.Approximate.html">Data.Number.Approximate</a></li><li><a href="Data.Number.Format.html">Data.Number.Format</a></li><li><a href="Data.Op.html">Data.Op</a></li><li><a href="Data.Ord.html">Data.Ord</a></li><li><a href="Data.Ord.Down.html">Data.Ord.Down</a></li><li><a href="Data.Ord.Generic.html">Data.Ord.Generic</a></li><li><a href="Data.Ord.Max.html">Data.Ord.Max</a></li><li><a href="Data.Ord.Min.html">Data.Ord.Min</a></li><li><a href="Data.Ordering.html">Data.Ordering</a></li><li><a href="Data.Posix.html">Data.Posix</a></li><li><a href="Data.Posix.Signal.html">Data.Posix.Signal</a></li><li><a href="Data.Predicate.html">Data.Predicate</a></li><li><a href="Data.Profunctor.html">Data.Profunctor</a></li><li><a href="Data.Profunctor.Choice.html">Data.Profunctor.Choice</a></li><li><a href="Data.Profunctor.Closed.html">Data.Profunctor.Closed</a></li><li><a href="Data.Profunctor.Cochoice.html">Data.Profunctor.Cochoice</a></li><li><a href="Data.Profunctor.Costrong.html">Data.Profunctor.Costrong</a></li><li><a href="Data.Profunctor.Join.html">Data.Profunctor.Join</a></li><li><a href="Data.Profunctor.Split.html">Data.Profunctor.Split</a></li><li><a href="Data.Profunctor.Star.html">Data.Profunctor.Star</a></li><li><a href="Data.Profunctor.Strong.html">Data.Profunctor.Strong</a></li><li><a href="Data.Reflectable.html">Data.Reflectable</a></li><li><a href="Data.Ring.html">Data.Ring</a></li><li><a href="Data.Ring.Generic.html">Data.Ring.Generic</a></li><li><a href="Data.Semigroup.html">Data.Semigroup</a></li><li><a href="Data.Semigroup.First.html">Data.Semigroup.First</a></li><li><a href="Data.Semigroup.Foldable.html">Data.Semigroup.Foldable</a></li><li><a href="Data.Semigroup.Generic.html">Data.Semigroup.Generic</a></li><li><a href="Data.Semigroup.Last.html">Data.Semigroup.Last</a></li><li><a href="Data.Semigroup.Traversable.html">Data.Semigroup.Traversable</a></li><li><a href="Data.Semiring.html">Data.Semiring</a></li><li><a href="Data.Semiring.Generic.html">Data.Semiring.Generic</a></li><li><a href="Data.Set.html">Data.Set</a></li><li><a href="Data.Set.NonEmpty.html">Data.Set.NonEmpty</a></li><li><a href="Data.Show.html">Data.Show</a></li><li><a href="Data.Show.Generic.html">Data.Show.Generic</a></li><li><a href="Data.String.html">Data.String</a></li><li><a href="Data.String.CaseInsensitive.html">Data.String.CaseInsensitive</a></li><li><a href="Data.String.CodePoints.html">Data.String.CodePoints</a></li><li><a href="Data.String.CodeUnits.html">Data.String.CodeUnits</a></li><li><a href="Data.String.Common.html">Data.String.Common</a></li><li><a href="Data.String.Gen.html">Data.String.Gen</a></li><li><a href="Data.String.NonEmpty.html">Data.String.NonEmpty</a></li><li><a href="Data.String.NonEmpty.CaseInsensitive.html">Data.String.NonEmpty.CaseInsensitive</a></li><li><a href="Data.String.NonEmpty.CodePoints.html">Data.String.NonEmpty.CodePoints</a></li><li><a href="Data.String.NonEmpty.CodeUnits.html">Data.String.NonEmpty.CodeUnits</a></li><li><a href="Data.String.NonEmpty.Internal.html">Data.String.NonEmpty.Internal</a></li><li><a href="Data.String.Pattern.html">Data.String.Pattern</a></li><li><a href="Data.String.Regex.html">Data.String.Regex</a></li><li><a href="Data.String.Regex.Flags.html">Data.String.Regex.Flags</a></li><li><a href="Data.String.Regex.Unsafe.html">Data.String.Regex.Unsafe</a></li><li><a href="Data.String.Unsafe.html">Data.String.Unsafe</a></li><li><a href="Data.Symbol.html">Data.Symbol</a></li><li><a href="Data.Time.html">Data.Time</a></li><li><a href="Data.Time.Component.html">Data.Time.Component</a></li><li><a href="Data.Time.Component.Gen.html">Data.Time.Component.Gen</a></li><li><a href="Data.Time.Duration.html">Data.Time.Duration</a></li><li><a href="Data.Time.Duration.Gen.html">Data.Time.Duration.Gen</a></li><li><a href="Data.Time.Gen.html">Data.Time.Gen</a></li><li><a href="Data.Traversable.html">Data.Traversable</a></li><li><a href="Data.Traversable.Accum.html">Data.Traversable.Accum</a></li><li><a href="Data.Traversable.Accum.Internal.html">Data.Traversable.Accum.Internal</a></li><li><a href="Data.TraversableWithIndex.html">Data.TraversableWithIndex</a></li><li><a href="Data.Tuple.html">Data.Tuple</a></li><li><a href="Data.Tuple.Nested.html">Data.Tuple.Nested</a></li><li><a href="Data.Unfoldable.html">Data.Unfoldable</a></li><li><a href="Data.Unfoldable1.html">Data.Unfoldable1</a></li><li><a href="Data.Unit.html">Data.Unit</a></li><li><a href="Data.Variant.html">Data.Variant</a></li><li><a href="Data.Variant.Internal.html">Data.Variant.Internal</a></li><li><a href="Data.Void.html">Data.Void</a></li><li><a href="Data.Witherable.html">Data.Witherable</a></li><li><a href="Data.Yoneda.html">Data.Yoneda</a></li><li><a href="Effect.html">Effect</a></li><li><a href="Effect.AVar.html">Effect.AVar</a></li><li><a href="Effect.Aff.html">Effect.Aff</a></li><li><a href="Effect.Aff.AVar.html">Effect.Aff.AVar</a></li><li><a href="Effect.Aff.Class.html">Effect.Aff.Class</a></li><li><a href="Effect.Aff.Compat.html">Effect.Aff.Compat</a></li><li><a href="Effect.Class.html">Effect.Class</a></li><li><a href="Effect.Class.Console.html">Effect.Class.Console</a></li><li><a href="Effect.Console.html">Effect.Console</a></li><li><a href="Effect.Exception.html">Effect.Exception</a></li><li><a href="Effect.Exception.Unsafe.html">Effect.Exception.Unsafe</a></li><li><a href="Effect.Now.html">Effect.Now</a></li><li><a href="Effect.Ref.html">Effect.Ref</a></li><li><a href="Effect.Timer.html">Effect.Timer</a></li><li><a href="Effect.Uncurried.html">Effect.Uncurried</a></li><li><a href="Effect.Unsafe.html">Effect.Unsafe</a></li><li><a href="FRP.Behavior.html">FRP.Behavior</a></li><li><a href="FRP.Behavior.Keyboard.html">FRP.Behavior.Keyboard</a></li><li><a href="FRP.Behavior.Mouse.html">FRP.Behavior.Mouse</a></li><li><a href="FRP.Behavior.Time.html">FRP.Behavior.Time</a></li><li><a href="FRP.Event.html">FRP.Event</a></li><li><a href="FRP.Event.AnimationFrame.html">FRP.Event.AnimationFrame</a></li><li><a href="FRP.Event.Class.html">FRP.Event.Class</a></li><li><a href="FRP.Event.Keyboard.html">FRP.Event.Keyboard</a></li><li><a href="FRP.Event.Mouse.html">FRP.Event.Mouse</a></li><li><a href="FRP.Event.Time.html">FRP.Event.Time</a></li><li><a href="FRP.Event.VBus.html">FRP.Event.VBus</a></li><li><a href="Foreign.html">Foreign</a></li><li><a href="Foreign.Index.html">Foreign.Index</a></li><li><a href="Foreign.Keys.html">Foreign.Keys</a></li><li><a href="Foreign.Object.html">Foreign.Object</a></li><li><a href="Foreign.Object.Gen.html">Foreign.Object.Gen</a></li><li><a href="Foreign.Object.ST.html">Foreign.Object.ST</a></li><li><a href="Foreign.Object.ST.Unsafe.html">Foreign.Object.ST.Unsafe</a></li><li><a href="Foreign.Object.Unsafe.html">Foreign.Object.Unsafe</a></li><li><a href="Heterogeneous.Folding.html">Heterogeneous.Folding</a></li><li><a href="Heterogeneous.Mapping.html">Heterogeneous.Mapping</a></li><li><a href="Node.Buffer.html">Node.Buffer</a></li><li><a href="Node.Buffer.Class.html">Node.Buffer.Class</a></li><li><a href="Node.Buffer.Constants.html">Node.Buffer.Constants</a></li><li><a href="Node.Buffer.Immutable.html">Node.Buffer.Immutable</a></li><li><a href="Node.Buffer.ST.html">Node.Buffer.ST</a></li><li><a href="Node.Buffer.Types.html">Node.Buffer.Types</a></li><li><a href="Node.Encoding.html">Node.Encoding</a></li><li><a href="Node.EventEmitter.html">Node.EventEmitter</a></li><li><a href="Node.EventEmitter.UtilTypes.html">Node.EventEmitter.UtilTypes</a></li><li><a href="Node.FS.html">Node.FS</a></li><li><a href="Node.FS.Aff.html">Node.FS.Aff</a></li><li><a href="Node.FS.Async.html">Node.FS.Async</a></li><li><a href="Node.FS.Constants.html">Node.FS.Constants</a></li><li><a href="Node.FS.Perms.html">Node.FS.Perms</a></li><li><a href="Node.FS.Stats.html">Node.FS.Stats</a></li><li><a href="Node.FS.Stream.html">Node.FS.Stream</a></li><li><a href="Node.FS.Sync.html">Node.FS.Sync</a></li><li><a href="Node.Path.html">Node.Path</a></li><li><a href="Node.Platform.html">Node.Platform</a></li><li><a href="Node.Process.html">Node.Process</a></li><li><a href="Node.Stream.html">Node.Stream</a></li><li><a href="Node.Stream.Aff.html">Node.Stream.Aff</a></li><li><a href="Node.Symbol.html">Node.Symbol</a></li><li><a href="Partial.html">Partial</a></li><li><a href="Partial.Unsafe.html">Partial.Unsafe</a></li><li><a href="Performance.Minibench.html">Performance.Minibench</a></li><li><a href="Pipes.html">Pipes</a></li><li><a href="Pipes.Core.html">Pipes.Core</a></li><li><a href="Pipes.Internal.html">Pipes.Internal</a></li><li><a href="Pipes.ListT.html">Pipes.ListT</a></li><li><a href="Pipes.Prelude.html">Pipes.Prelude</a></li><li><a href="Prelude.html">Prelude</a></li><li><a href="Prim.html">Prim</a></li><li><a href="Prim.Boolean.html">Prim.Boolean</a></li><li><a href="Prim.Coerce.html">Prim.Coerce</a></li><li><a href="Prim.Int.html">Prim.Int</a></li><li><a href="Prim.Ordering.html">Prim.Ordering</a></li><li><a href="Prim.Row.html">Prim.Row</a></li><li><a href="Prim.RowList.html">Prim.RowList</a></li><li><a href="Prim.Symbol.html">Prim.Symbol</a></li><li><a href="Prim.TypeError.html">Prim.TypeError</a></li><li><a href="Record.html">Record</a></li><li><a href="Record.Builder.html">Record.Builder</a></li><li><a href="Record.Studio.html">Record.Studio</a></li><li><a href="Record.Studio.Keys.html">Record.Studio.Keys</a></li><li><a href="Record.Studio.Map.html">Record.Studio.Map</a></li><li><a href="Record.Studio.MapKind.html">Record.Studio.MapKind</a></li><li><a href="Record.Studio.MapUniform.html">Record.Studio.MapUniform</a></li><li><a href="Record.Studio.Merge.html">Record.Studio.Merge</a></li><li><a href="Record.Studio.SameKeys.html">Record.Studio.SameKeys</a></li><li><a href="Record.Studio.Sequence.html">Record.Studio.Sequence</a></li><li><a href="Record.Studio.Shrink.html">Record.Studio.Shrink</a></li><li><a href="Record.Studio.SingletonRecord.html">Record.Studio.SingletonRecord</a></li><li><a href="Record.Unsafe.html">Record.Unsafe</a></li><li><a href="Record.Unsafe.Union.html">Record.Unsafe.Union</a></li><li><a href="Safe.Coerce.html">Safe.Coerce</a></li><li><a href="Spago.Generated.BuildInfo.html">Spago.Generated.BuildInfo</a></li><li><a href="Test.Spec.html">Test.Spec</a></li><li><a href="Test.Spec.Assertions.html">Test.Spec.Assertions</a></li><li><a href="Test.Spec.Assertions.String.html">Test.Spec.Assertions.String</a></li><li><a href="Test.Spec.Config.html">Test.Spec.Config</a></li><li><a href="Test.Spec.Console.html">Test.Spec.Console</a></li><li><a href="Test.Spec.Reporter.html">Test.Spec.Reporter</a></li><li><a href="Test.Spec.Reporter.Base.html">Test.Spec.Reporter.Base</a></li><li><a href="Test.Spec.Reporter.Console.html">Test.Spec.Reporter.Console</a></li><li><a href="Test.Spec.Reporter.Dot.html">Test.Spec.Reporter.Dot</a></li><li><a href="Test.Spec.Reporter.Spec.html">Test.Spec.Reporter.Spec</a></li><li><a href="Test.Spec.Reporter.Tap.html">Test.Spec.Reporter.Tap</a></li><li><a href="Test.Spec.Reporter.TeamCity.html">Test.Spec.Reporter.TeamCity</a></li><li><a href="Test.Spec.Result.html">Test.Spec.Result</a></li><li><a href="Test.Spec.Runner.html">Test.Spec.Runner</a></li><li><a href="Test.Spec.Runner.Event.html">Test.Spec.Runner.Event</a></li><li><a href="Test.Spec.Speed.html">Test.Spec.Speed</a></li><li><a href="Test.Spec.Style.html">Test.Spec.Style</a></li><li><a href="Test.Spec.Summary.html">Test.Spec.Summary</a></li><li><a href="Test.Spec.Tree.html">Test.Spec.Tree</a></li><li><a href="Type.Data.Boolean.html">Type.Data.Boolean</a></li><li><a href="Type.Data.Ordering.html">Type.Data.Ordering</a></li><li><a href="Type.Data.Symbol.html">Type.Data.Symbol</a></li><li><a href="Type.Equality.html">Type.Equality</a></li><li><a href="Type.Function.html">Type.Function</a></li><li><a href="Type.Prelude.html">Type.Prelude</a></li><li><a href="Type.Proxy.html">Type.Proxy</a></li><li><a href="Type.Row.html">Type.Row</a></li><li><a href="Type.Row.Homogeneous.html">Type.Row.Homogeneous</a></li><li><a href="Type.RowList.html">Type.RowList</a></li><li><a href="Uncurried.RWSE.html">Uncurried.RWSE</a></li><li><a href="Uncurried.RWSET.html">Uncurried.RWSET</a></li><li><a href="Uncurried.Reader.html">Uncurried.Reader</a></li><li><a href="Uncurried.ReaderT.html">Uncurried.ReaderT</a></li><li><a href="Uncurried.State.html">Uncurried.State</a></li><li><a href="Uncurried.StateT.html">Uncurried.StateT</a></li><li><a href="Uncurried.Writer.html">Uncurried.Writer</a></li><li><a href="Uncurried.WriterT.html">Uncurried.WriterT</a></li><li><a href="Unsafe.Coerce.html">Unsafe.Coerce</a></li><li><a href="Unsafe.Reference.html">Unsafe.Reference</a></li><li><a href="Web.DOM.html">Web.DOM</a></li><li><a href="Web.DOM.CharacterData.html">Web.DOM.CharacterData</a></li><li><a href="Web.DOM.ChildNode.html">Web.DOM.ChildNode</a></li><li><a href="Web.DOM.Comment.html">Web.DOM.Comment</a></li><li><a href="Web.DOM.DOMTokenList.html">Web.DOM.DOMTokenList</a></li><li><a href="Web.DOM.Document.html">Web.DOM.Document</a></li><li><a href="Web.DOM.DocumentFragment.html">Web.DOM.DocumentFragment</a></li><li><a href="Web.DOM.DocumentType.html">Web.DOM.DocumentType</a></li><li><a href="Web.DOM.Element.html">Web.DOM.Element</a></li><li><a href="Web.DOM.HTMLCollection.html">Web.DOM.HTMLCollection</a></li><li><a href="Web.DOM.Internal.Types.html">Web.DOM.Internal.Types</a></li><li><a href="Web.DOM.MutationObserver.html">Web.DOM.MutationObserver</a></li><li><a href="Web.DOM.MutationRecord.html">Web.DOM.MutationRecord</a></li><li><a href="Web.DOM.Node.html">Web.DOM.Node</a></li><li><a href="Web.DOM.NodeList.html">Web.DOM.NodeList</a></li><li><a href="Web.DOM.NodeType.html">Web.DOM.NodeType</a></li><li><a href="Web.DOM.NonDocumentTypeChildNode.html">Web.DOM.NonDocumentTypeChildNode</a></li><li><a href="Web.DOM.NonElementParentNode.html">Web.DOM.NonElementParentNode</a></li><li><a href="Web.DOM.ParentNode.html">Web.DOM.ParentNode</a></li><li><a href="Web.DOM.ProcessingInstruction.html">Web.DOM.ProcessingInstruction</a></li><li><a href="Web.DOM.ShadowRoot.html">Web.DOM.ShadowRoot</a></li><li><a href="Web.DOM.Text.html">Web.DOM.Text</a></li><li><a href="Web.Event.CustomEvent.html">Web.Event.CustomEvent</a></li><li><a href="Web.Event.Event.html">Web.Event.Event</a></li><li><a href="Web.Event.EventPhase.html">Web.Event.EventPhase</a></li><li><a href="Web.Event.EventTarget.html">Web.Event.EventTarget</a></li><li><a href="Web.Event.Internal.Types.html">Web.Event.Internal.Types</a></li><li><a href="Web.File.Blob.html">Web.File.Blob</a></li><li><a href="Web.File.File.html">Web.File.File</a></li><li><a href="Web.File.FileList.html">Web.File.FileList</a></li><li><a href="Web.File.FileReader.html">Web.File.FileReader</a></li><li><a href="Web.File.FileReader.ReadyState.html">Web.File.FileReader.ReadyState</a></li><li><a href="Web.File.Url.html">Web.File.Url</a></li><li><a href="Web.HTML.html">Web.HTML</a></li><li><a href="Web.HTML.Common.html">Web.HTML.Common</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.html">Web.HTML.Event.BeforeUnloadEvent</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.EventTypes.html">Web.HTML.Event.BeforeUnloadEvent.EventTypes</a></li><li><a href="Web.HTML.Event.DataTransfer.html">Web.HTML.Event.DataTransfer</a></li><li><a href="Web.HTML.Event.DataTransfer.DataTransferItem.html">Web.HTML.Event.DataTransfer.DataTransferItem</a></li><li><a href="Web.HTML.Event.DragEvent.html">Web.HTML.Event.DragEvent</a></li><li><a href="Web.HTML.Event.DragEvent.EventTypes.html">Web.HTML.Event.DragEvent.EventTypes</a></li><li><a href="Web.HTML.Event.ErrorEvent.html">Web.HTML.Event.ErrorEvent</a></li><li><a href="Web.HTML.Event.EventTypes.html">Web.HTML.Event.EventTypes</a></li><li><a href="Web.HTML.Event.HashChangeEvent.html">Web.HTML.Event.HashChangeEvent</a></li><li><a href="Web.HTML.Event.HashChangeEvent.EventTypes.html">Web.HTML.Event.HashChangeEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.html">Web.HTML.Event.PageTransitionEvent</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.EventTypes.html">Web.HTML.Event.PageTransitionEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PopStateEvent.html">Web.HTML.Event.PopStateEvent</a></li><li><a href="Web.HTML.Event.PopStateEvent.EventTypes.html">Web.HTML.Event.PopStateEvent.EventTypes</a></li><li><a href="Web.HTML.Event.TrackEvent.html">Web.HTML.Event.TrackEvent</a></li><li><a href="Web.HTML.Event.TrackEvent.EventTypes.html">Web.HTML.Event.TrackEvent.EventTypes</a></li><li><a href="Web.HTML.HTMLAnchorElement.html">Web.HTML.HTMLAnchorElement</a></li><li><a href="Web.HTML.HTMLAreaElement.html">Web.HTML.HTMLAreaElement</a></li><li><a href="Web.HTML.HTMLAudioElement.html">Web.HTML.HTMLAudioElement</a></li><li><a href="Web.HTML.HTMLBRElement.html">Web.HTML.HTMLBRElement</a></li><li><a href="Web.HTML.HTMLBaseElement.html">Web.HTML.HTMLBaseElement</a></li><li><a href="Web.HTML.HTMLBodyElement.html">Web.HTML.HTMLBodyElement</a></li><li><a href="Web.HTML.HTMLButtonElement.html">Web.HTML.HTMLButtonElement</a></li><li><a href="Web.HTML.HTMLCanvasElement.html">Web.HTML.HTMLCanvasElement</a></li><li><a href="Web.HTML.HTMLDListElement.html">Web.HTML.HTMLDListElement</a></li><li><a href="Web.HTML.HTMLDataElement.html">Web.HTML.HTMLDataElement</a></li><li><a href="Web.HTML.HTMLDataListElement.html">Web.HTML.HTMLDataListElement</a></li><li><a href="Web.HTML.HTMLDivElement.html">Web.HTML.HTMLDivElement</a></li><li><a href="Web.HTML.HTMLDocument.html">Web.HTML.HTMLDocument</a></li><li><a href="Web.HTML.HTMLDocument.ReadyState.html">Web.HTML.HTMLDocument.ReadyState</a></li><li><a href="Web.HTML.HTMLDocument.VisibilityState.html">Web.HTML.HTMLDocument.VisibilityState</a></li><li><a href="Web.HTML.HTMLElement.html">Web.HTML.HTMLElement</a></li><li><a href="Web.HTML.HTMLEmbedElement.html">Web.HTML.HTMLEmbedElement</a></li><li><a href="Web.HTML.HTMLFieldSetElement.html">Web.HTML.HTMLFieldSetElement</a></li><li><a href="Web.HTML.HTMLFormElement.html">Web.HTML.HTMLFormElement</a></li><li><a href="Web.HTML.HTMLHRElement.html">Web.HTML.HTMLHRElement</a></li><li><a href="Web.HTML.HTMLHeadElement.html">Web.HTML.HTMLHeadElement</a></li><li><a href="Web.HTML.HTMLHeadingElement.html">Web.HTML.HTMLHeadingElement</a></li><li><a href="Web.HTML.HTMLHtmlElement.html">Web.HTML.HTMLHtmlElement</a></li><li><a href="Web.HTML.HTMLHyperlinkElementUtils.html">Web.HTML.HTMLHyperlinkElementUtils</a></li><li><a href="Web.HTML.HTMLIFrameElement.html">Web.HTML.HTMLIFrameElement</a></li><li><a href="Web.HTML.HTMLImageElement.html">Web.HTML.HTMLImageElement</a></li><li><a href="Web.HTML.HTMLImageElement.CORSMode.html">Web.HTML.HTMLImageElement.CORSMode</a></li><li><a href="Web.HTML.HTMLImageElement.DecodingHint.html">Web.HTML.HTMLImageElement.DecodingHint</a></li><li><a href="Web.HTML.HTMLImageElement.Laziness.html">Web.HTML.HTMLImageElement.Laziness</a></li><li><a href="Web.HTML.HTMLInputElement.html">Web.HTML.HTMLInputElement</a></li><li><a href="Web.HTML.HTMLKeygenElement.html">Web.HTML.HTMLKeygenElement</a></li><li><a href="Web.HTML.HTMLLIElement.html">Web.HTML.HTMLLIElement</a></li><li><a href="Web.HTML.HTMLLabelElement.html">Web.HTML.HTMLLabelElement</a></li><li><a href="Web.HTML.HTMLLegendElement.html">Web.HTML.HTMLLegendElement</a></li><li><a href="Web.HTML.HTMLLinkElement.html">Web.HTML.HTMLLinkElement</a></li><li><a href="Web.HTML.HTMLMapElement.html">Web.HTML.HTMLMapElement</a></li><li><a href="Web.HTML.HTMLMediaElement.html">Web.HTML.HTMLMediaElement</a></li><li><a href="Web.HTML.HTMLMediaElement.CanPlayType.html">Web.HTML.HTMLMediaElement.CanPlayType</a></li><li><a href="Web.HTML.HTMLMediaElement.NetworkState.html">Web.HTML.HTMLMediaElement.NetworkState</a></li><li><a href="Web.HTML.HTMLMediaElement.ReadyState.html">Web.HTML.HTMLMediaElement.ReadyState</a></li><li><a href="Web.HTML.HTMLMetaElement.html">Web.HTML.HTMLMetaElement</a></li><li><a href="Web.HTML.HTMLMeterElement.html">Web.HTML.HTMLMeterElement</a></li><li><a href="Web.HTML.HTMLModElement.html">Web.HTML.HTMLModElement</a></li><li><a href="Web.HTML.HTMLOListElement.html">Web.HTML.HTMLOListElement</a></li><li><a href="Web.HTML.HTMLObjectElement.html">Web.HTML.HTMLObjectElement</a></li><li><a href="Web.HTML.HTMLOptGroupElement.html">Web.HTML.HTMLOptGroupElement</a></li><li><a href="Web.HTML.HTMLOptionElement.html">Web.HTML.HTMLOptionElement</a></li><li><a href="Web.HTML.HTMLOutputElement.html">Web.HTML.HTMLOutputElement</a></li><li><a href="Web.HTML.HTMLParagraphElement.html">Web.HTML.HTMLParagraphElement</a></li><li><a href="Web.HTML.HTMLParamElement.html">Web.HTML.HTMLParamElement</a></li><li><a href="Web.HTML.HTMLPreElement.html">Web.HTML.HTMLPreElement</a></li><li><a href="Web.HTML.HTMLProgressElement.html">Web.HTML.HTMLProgressElement</a></li><li><a href="Web.HTML.HTMLQuoteElement.html">Web.HTML.HTMLQuoteElement</a></li><li><a href="Web.HTML.HTMLScriptElement.html">Web.HTML.HTMLScriptElement</a></li><li><a href="Web.HTML.HTMLSelectElement.html">Web.HTML.HTMLSelectElement</a></li><li><a href="Web.HTML.HTMLSourceElement.html">Web.HTML.HTMLSourceElement</a></li><li><a href="Web.HTML.HTMLSpanElement.html">Web.HTML.HTMLSpanElement</a></li><li><a href="Web.HTML.HTMLStyleElement.html">Web.HTML.HTMLStyleElement</a></li><li><a href="Web.HTML.HTMLTableCaptionElement.html">Web.HTML.HTMLTableCaptionElement</a></li><li><a href="Web.HTML.HTMLTableCellElement.html">Web.HTML.HTMLTableCellElement</a></li><li><a href="Web.HTML.HTMLTableColElement.html">Web.HTML.HTMLTableColElement</a></li><li><a href="Web.HTML.HTMLTableDataCellElement.html">Web.HTML.HTMLTableDataCellElement</a></li><li><a href="Web.HTML.HTMLTableElement.html">Web.HTML.HTMLTableElement</a></li><li><a href="Web.HTML.HTMLTableHeaderCellElement.html">Web.HTML.HTMLTableHeaderCellElement</a></li><li><a href="Web.HTML.HTMLTableRowElement.html">Web.HTML.HTMLTableRowElement</a></li><li><a href="Web.HTML.HTMLTableSectionElement.html">Web.HTML.HTMLTableSectionElement</a></li><li><a href="Web.HTML.HTMLTemplateElement.html">Web.HTML.HTMLTemplateElement</a></li><li><a href="Web.HTML.HTMLTextAreaElement.html">Web.HTML.HTMLTextAreaElement</a></li><li><a href="Web.HTML.HTMLTimeElement.html">Web.HTML.HTMLTimeElement</a></li><li><a href="Web.HTML.HTMLTitleElement.html">Web.HTML.HTMLTitleElement</a></li><li><a href="Web.HTML.HTMLTrackElement.html">Web.HTML.HTMLTrackElement</a></li><li><a href="Web.HTML.HTMLTrackElement.ReadyState.html">Web.HTML.HTMLTrackElement.ReadyState</a></li><li><a href="Web.HTML.HTMLUListElement.html">Web.HTML.HTMLUListElement</a></li><li><a href="Web.HTML.HTMLVideoElement.html">Web.HTML.HTMLVideoElement</a></li><li><a href="Web.HTML.History.html">Web.HTML.History</a></li><li><a href="Web.HTML.Location.html">Web.HTML.Location</a></li><li><a href="Web.HTML.Navigator.html">Web.HTML.Navigator</a></li><li><a href="Web.HTML.SelectionMode.html">Web.HTML.SelectionMode</a></li><li><a href="Web.HTML.ValidityState.html">Web.HTML.ValidityState</a></li><li><a href="Web.HTML.Window.html">Web.HTML.Window</a></li><li><a href="Web.Internal.FFI.html">Web.Internal.FFI</a></li><li><a href="Web.Storage.Event.StorageEvent.html">Web.Storage.Event.StorageEvent</a></li><li><a href="Web.Storage.Storage.html">Web.Storage.Storage</a></li><li><a href="Web.UIEvent.CompositionEvent.html">Web.UIEvent.CompositionEvent</a></li><li><a href="Web.UIEvent.CompositionEvent.EventTypes.html">Web.UIEvent.CompositionEvent.EventTypes</a></li><li><a href="Web.UIEvent.EventTypes.html">Web.UIEvent.EventTypes</a></li><li><a href="Web.UIEvent.FocusEvent.html">Web.UIEvent.FocusEvent</a></li><li><a href="Web.UIEvent.FocusEvent.EventTypes.html">Web.UIEvent.FocusEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.html">Web.UIEvent.InputEvent</a></li><li><a href="Web.UIEvent.InputEvent.EventTypes.html">Web.UIEvent.InputEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.InputType.html">Web.UIEvent.InputEvent.InputType</a></li><li><a href="Web.UIEvent.KeyboardEvent.html">Web.UIEvent.KeyboardEvent</a></li><li><a href="Web.UIEvent.KeyboardEvent.EventTypes.html">Web.UIEvent.KeyboardEvent.EventTypes</a></li><li><a href="Web.UIEvent.MouseEvent.html">Web.UIEvent.MouseEvent</a></li><li><a href="Web.UIEvent.MouseEvent.EventTypes.html">Web.UIEvent.MouseEvent.EventTypes</a></li><li><a href="Web.UIEvent.UIEvent.html">Web.UIEvent.UIEvent</a></li><li><a href="Web.UIEvent.WheelEvent.html">Web.UIEvent.WheelEvent</a></li><li><a href="Web.UIEvent.WheelEvent.EventTypes.html">Web.UIEvent.WheelEvent.EventTypes</a></li></ul></div></main></div><div class="footer clearfix"><p>Generated by purs 0.15.15 [development build; commit: UNKNOWN]</p></div><!-- Docs search index. --><script type="text/javascript" src="./docs-search-app.js"></script><script type="text/javascript">window.DocsSearchTypeIndex = {};window.DocsSearchIndex = {};</script></body></html>
generated-docs/html/Control.Biapplicative.htmldeleted−1358
@@ -1,1358 +0,0 @@
2−<html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1"><title>PureScript: Control.Biapplicative</title><link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:300,400,400i,700,700i" type="text/css" rel="stylesheet"><style type="text/css">/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
5− * 1. Set default font family to sans-serif.
6− * 2. Prevent iOS text size adjust after orientation change, without disabling
11− font-family: sans-serif; /* 1 */
12− -ms-text-size-adjust: 100%; /* 2 */
13− -webkit-text-size-adjust: 100%; /* 2 */
17− * Remove default margin.
24−/* HTML5 display definitions
25− ========================================================================== */
28− * Correct `block` display not defined for any HTML5 element in IE 8/9.
29− * Correct `block` display not defined for `details` or `summary` in IE 10/11
31− * Correct `block` display not defined for `main` in IE 11.
51− * 1. Correct `inline-block` display not defined in IE 8/9.
52− * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
59− display: inline-block; /* 1 */
60− vertical-align: baseline; /* 2 */
64− * Prevent modern browsers from displaying `audio` without controls.
65− * Remove excess height in iOS 5 devices.
68−audio:not([controls]) {
74− * Address `[hidden]` styling not present in IE 8/9/10.
75− * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
84− ========================================================================== */
87− * Remove the gray background color from active links in IE 10.
91− background-color: transparent;
95− * Improve readability when focused and also mouse hovered in all browsers.
103−/* Text-level semantics
104− ========================================================================== */
107− * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
111− border-bottom: 1px dotted;
115− * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
124− * Address styling not present in Safari and Chrome.
132− * Address variable `h1` font-size and margin within `section` and `article`
133− * contexts in Firefox 4+, Safari, and Chrome.
142− * Address styling not present in IE 8/9.
151− * Address inconsistent and variable font size in all browsers.
159− * Prevent `sub` and `sup` affecting `line-height` in all browsers.
167− vertical-align: baseline;
179− ========================================================================== */
182− * Remove border when inside `a` element in IE 8/9/10.
190− * Correct overflow not hidden in IE 9/10/11.
198− ========================================================================== */
201− * Address margin not present in IE 8/9 and Safari.
209− * Address differences between Firefox and other browsers.
213− -moz-box-sizing: content-box;
214− box-sizing: content-box;
219− * Contain overflow in all browsers.
227− * Address odd `em`-unit font size rendering in all browsers.
234− font-family: monospace, monospace;
239− ========================================================================== */
242− * Known limitation: by default, Chrome and Safari on OS X allow very limited
243− * styling of `select`, unless a `border` property is set.
247− * 1. Correct color not being inherited.
248− * Known issue: affects color of disabled elements.
249− * 2. Correct font properties not being inherited.
250− * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
258− color: inherit; /* 1 */
259− font: inherit; /* 2 */
264− * Address `overflow` set to `hidden` in IE 8/9/10/11.
272− * Address inconsistent `text-transform` inheritance for `button` and `select`.
273− * All other form control elements do not inherit `text-transform` values.
274− * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
275− * Correct `select` style inheritance in Firefox.
280− text-transform: none;
284− * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
285− * and `video` controls.
286− * 2. Correct inability to style clickable `input` types in iOS.
287− * 3. Improve usability and consistency of cursor style between image-type
288− * `input` and others.
292−html input[type="button"], /* 1 */
294−input[type="submit"] {
295− -webkit-appearance: button; /* 2 */
296− cursor: pointer; /* 3 */
300− * Re-set default cursor for disabled elements.
304−html input[disabled] {
309− * Remove inner padding and border in Firefox 4+.
312−button::-moz-focus-inner,
313−input::-moz-focus-inner {
319− * Address Firefox 4+ setting `line-height` on `input` using `!important` in
320− * the UA stylesheet.
324− line-height: normal;
328− * It's recommended that you don't attempt to style these elements.
329− * Firefox's implementation doesn't respect box-sizing, padding, or width.
331− * 1. Address box sizing set to `content-box` in IE 8/9/10.
332− * 2. Remove excess padding in IE 8/9/10.
335−input[type="checkbox"],
336−input[type="radio"] {
337− box-sizing: border-box; /* 1 */
342− * Fix the cursor style for Chrome's increment/decrement buttons. For certain
343− * `font-size` values of the `input`, it causes the cursor style of the
344− * decrement button to change from `default` to `text`.
347−input[type="number"]::-webkit-inner-spin-button,
348−input[type="number"]::-webkit-outer-spin-button {
353− * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
354− * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
355− * (include `-moz` to future-proof).
358−input[type="search"] {
359− -webkit-appearance: textfield; /* 1 */
360− -moz-box-sizing: content-box;
361− -webkit-box-sizing: content-box; /* 2 */
362− box-sizing: content-box;
366− * Remove inner padding and search cancel button in Safari and Chrome on OS X.
367− * Safari (but not Chrome) clips the cancel button when the search input has
368− * padding (and `textfield` appearance).
371−input[type="search"]::-webkit-search-cancel-button,
372−input[type="search"]::-webkit-search-decoration {
373− -webkit-appearance: none;
377− * Define consistent border, margin, and padding.
381− border: 1px solid #c0c0c0;
383− padding: 0.35em 0.625em 0.75em;
387− * 1. Correct `color` not being inherited in IE 8/9/10/11.
388− * 2. Remove padding so people aren't caught out if they zero out fieldsets.
397− * Remove default vertical scrollbar in IE 8/9/10/11.
405− * Don't inherit the `font-weight` (applied by a rule above).
406− * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
414− ========================================================================== */
417− * Remove most spacing between table cells.
421− border-collapse: collapse;
429−</style><style type="text/css">/** ************************************************************************* *
430− ** CSS for HTML docs (e.g. Pursuit)
434− ** This CSS file is structured into several sections, from general to
435− ** specific, and (mostly) alphabetically within the sections.
437− ** Several global element styles are used. This is not encouraged and should
438− ** be kept to a minimum. If you want to add new styles you'll most likely
439− ** want to add a new CSS component. See the Components section for examples.
441− ** CSS components use three simple naming ideas from the BEM system:
442− ** - Block: `.my-component`
443− ** - Element: `.my-component__item`
444− ** - Modifier: `.my-component.my-component--highlighted`
447− ** <div .my-component>
448− ** <div .my-component__item>
449− ** <div .my-component__item>
451− ** <div .my-component.my-component--highlighted>
452− ** <div .my-component__item>
453− ** <div .my-component__item>
455− ** Components can be nested.
460− ** Typographic choices for sizes, line-heights and margins are based on a
461− ** musical major third scale (4:5). This gives us a way to find numbers
462− ** and relationships between them that are perceived as harmonic.
464− ** To make use of this modular scale, use a ratio of the form
466− ** where n ∈ ℤ, -6 ≤ n ≤ 8.
470− ** This CSS is generated by less. To compile it:
472− ** npm install [-g] less
473− ** lessc app/static/pursuit.less > app/static/pursuit.css
475− ** ************************************************************************* */
476−/* Section: Variables
477− * ========================================================================== */
478−/* Section: Document Styles
479− * ========================================================================== */
481− color-scheme: light dark;
484− box-sizing: border-box;
485− /* This overflow rule prevents everything from shifting slightly to the side
486− when moving from a page which isn't large enough to generate a scrollbar
493− box-sizing: inherit;
496− background-color: #ffffff;
498− font-family: "Roboto", sans-serif;
502−@media (prefers-color-scheme: dark) {
504− background-color: #141417;
508−@media (min-width: 38em) {
513−/* Section: Utility Classes
514− * ========================================================================== */
526−/* Content hidden like this will still be read by a screen reader */
536− * ========================================================================== */
543− padding-right: 20px;
551− margin-bottom: 3.08em;
554− margin-bottom: 2.44em;
556−@media (min-width: 52em) {
559− padding-right: 30px;
572−@media (min-width: 66em) {
578− * Based on http://www.lwis.net/journal/2008/02/08/pure-css-sticky-footer/
579− * Except we don't support IE6
580− * -------------------------------------------------------------------------- */
585−.everything-except-footer {
587− padding-bottom: 3em;
595− background-color: #1d222d;
598−@media (prefers-color-scheme: dark) {
600− background-color: #1d222d;
607−/* Section: Element Styles
609− * Have as few of these as possible and keep them general, because they will
610− * influence every component hereafter.
611− * ========================================================================== */
613− background-color: #f1f5f9;
615−@media (prefers-color-scheme: dark) {
617− background-color: #232327;
623− text-decoration: none;
626−@media (prefers-color-scheme: dark) {
634− text-decoration: none;
636−@media (prefers-color-scheme: dark) {
643− background-color: #f1f5f9;
646− font-family: "Roboto Mono", monospace;
649−@media (prefers-color-scheme: dark) {
652− background-color: #232327;
658− background-color: #dfe8f1;
660−@media (prefers-color-scheme: dark) {
663− background-color: #2f2f34;
669− white-space: pre-wrap;
670− word-wrap: break-word;
674− letter-spacing: -0.2em;
678− font-weight: normal;
682− letter-spacing: 0.33em;
687−@media (prefers-color-scheme: dark) {
695− padding: 1em 1.25rem;
696− /* Using rem here to align with lists etc. */
702− background-color: transparent;
709− line-height: inherit;
721− letter-spacing: -0.5px;
723− margin-top: 1.563rem;
724− margin-bottom: 1.25rem;
726−@media (min-width: 52em) {
729− margin-top: 5.96rem;
734− font-weight: normal;
736− margin-top: 3.052rem;
737− margin-bottom: 1rem;
741− font-weight: normal;
743− margin-top: 2.441rem;
744− margin-bottom: 1rem;
748− font-weight: normal;
749− margin-top: 2.441rem;
750− margin-bottom: 1rem;
763− background-color: #cccccc;
765−@media (prefers-color-scheme: dark) {
767− background-color: #43434e;
777− margin-bottom: 1rem;
780− border-bottom: 1px solid #cccccc;
781− border-collapse: collapse;
784− margin-bottom: 1rem;
787−@media (prefers-color-scheme: dark) {
789− border-bottom-color: #43434e;
795− padding: 0.41em 0.51em;
798− border-top: 1px solid #cccccc;
800−@media (prefers-color-scheme: dark) {
802− border-top-color: #43434e;
814− list-style-type: none;
816− margin-bottom: 1rem;
821− padding-left: 1.25em;
827− display: inline-block;
828− margin-left: -1.25em;
831−@media (prefers-color-scheme: dark) {
836−/* Tying this tightly to ul at the moment because it's a slight variation thereof */
837−ul.ul--search li::before {
840− transform: rotate(-45deg);
844− margin-bottom: 1rem;
845− padding-left: 1.25em;
851−/* Section: Components
852− * ========================================================================== */
854− * -------------------------------------------------------------------------- */
858− display: inline-block;
859− background-color: #000000;
860− border-radius: 1.3em;
869−@media (prefers-color-scheme: dark) {
871− background-color: #dedede;
875−.badge.badge--package {
876− background-color: #c4953a;
877− letter-spacing: -0.1em;
879−@media (prefers-color-scheme: dark) {
880− .badge.badge--package {
881− background-color: #d8ac55;
884−.badge.badge--module {
885− background-color: #75B134;
887−/* Component: Declarations
888− * -------------------------------------------------------------------------- */
891− padding-bottom: 0.328em;
892− margin-bottom: 0.262em;
902−.decl__anchor:visited {
907−@media (prefers-color-scheme: dark) {
909− .decl__anchor:visited {
913−.decl__anchor:hover {
916−@media (prefers-color-scheme: dark) {
917− .decl__anchor:hover {
922− background-color: transparent;
924− border-top: 1px solid #cccccc;
925− border-bottom: 1px solid #cccccc;
928−@media (prefers-color-scheme: dark) {
930− border-top-color: #43434e;
931− border-bottom-color: #43434e;
934−.decl__signature code {
937− padding-left: 2.441em;
938− text-indent: -2.441em;
939− white-space: normal;
942− font-family: "Roboto", sans-serif;
944− font-weight: normal;
946−/* See https://stackoverflow.com/a/32162038
947− Content licensed under CC BY-SA 3.0
949−.decl__role_hover[title] {
950− /* Remove line that appears under abbr element */
951− border-bottom: none;
952− text-decoration: none;
953− /* Ensure cursor doesn't change to question mark */
956−.decl__role_nominal::after {
959−.decl__role_phantom::after {
963− border-bottom: 1px solid #cccccc;
965−@media (prefers-color-scheme: dark) {
967− border-bottom-color: #43434e;
970−:target .decl__signature,
971−:target .decl__signature code {
972− /* We want the background to be transparent, even when the parent is a target */
973− background-color: transparent;
975−.decl__body .keyword,
976−.decl__body .syntax {
979−@media (prefers-color-scheme: dark) {
980− .decl__body .keyword,
981− .decl__body .syntax {
985−.decl__child_comments {
987− margin-bottom: 1rem;
989−/* Component: Dependency Link
990− * -------------------------------------------------------------------------- */
992− /* Currently no root styles, but keep the class as a namespace */
995− display: inline-block;
996− margin-right: 0.41em;
1000− display: inline-block;
1004−@media (prefers-color-scheme: dark) {
1005− .deplink__version {
1009−/* Component: Grouped List
1010− * -------------------------------------------------------------------------- */
1012− border-top: 1px solid #cccccc;
1013− margin: 0 0 2.44em 0;
1015−@media (prefers-color-scheme: dark) {
1017− border-top-color: #43434e;
1020−.grouped-list__title {
1024− letter-spacing: 1px;
1025− margin: 0.8em 0 -0.1em 0;
1026− text-transform: uppercase;
1028−@media (prefers-color-scheme: dark) {
1029− .grouped-list__title {
1030− border-top-color: #a0a0a0;
1033−.grouped-list__item {
1036−/* Component: Message
1037− * -------------------------------------------------------------------------- */
1040− border-radius: 5px;
1041− padding: 1em !important;
1043−.message.message--error {
1044− background-color: #fff0f0;
1045− border-color: #c85050;
1047−@media (prefers-color-scheme: dark) {
1048− .message.message--error {
1049− background-color: #6b0e0e;
1050− border-color: #c85050;
1053−.message.message--not-available {
1054− background-color: #f0f096;
1055− border-color: #e3e33d;
1057−@media (prefers-color-scheme: dark) {
1058− .message.message--not-available {
1059− background-color: #56560b;
1060− border-color: #b0b017;
1063−/* Component: Multi Col
1064− * Multiple columns side by side
1065− * -------------------------------------------------------------------------- */
1067− margin-bottom: 2.44em;
1071− padding-right: 1em;
1072− position: relative;
1075−@media (min-width: 38em) and (max-width: 51.999999em) {
1080− .multi-col__col:nth-child(2n+3) {
1084−@media (min-width: 52em) {
1089− .multi-col__col:nth-child(3n+4) {
1093−/* Component: Page Title
1094− * -------------------------------------------------------------------------- */
1096− margin: 4.77em 0 1.56em;
1097− padding-bottom: 1.25em;
1098− position: relative;
1100−.page-title__title {
1101− margin: 0 0 0 -0.05em;
1102− /* Visually align on left edge */
1104−.page-title__label {
1105− position: relative;
1109− letter-spacing: 1px;
1110− margin-bottom: -0.8em;
1111− text-transform: uppercase;
1114−@media (prefers-color-scheme: dark) {
1115− .page-title__label {
1119−/* Component: Top Banner
1120− * -------------------------------------------------------------------------- */
1122− background-color: #1d222d;
1124− font-weight: normal;
1126−@media (prefers-color-scheme: dark) {
1128− background-color: #1d222d;
1133−.top-banner__logo:visited {
1141−@media (prefers-color-scheme: dark) {
1143− .top-banner__logo:visited {
1147−.top-banner__logo:hover {
1149− text-decoration: none;
1152− margin-bottom: 1.25em;
1154−.top-banner__form input {
1155− border: 1px solid #1d222d;
1156− border-radius: 3px;
1157− background-color: #ffffff;
1161− padding: 0.21em 0.512em;
1164−@media (prefers-color-scheme: dark) {
1165− .top-banner__form input {
1166− border-color: #1d222d;
1167− background-color: #141417;
1171−.top-banner__actions {
1175−.top-banner__actions__item {
1176− display: inline-block;
1179− padding-left: 1.25em;
1181−.top-banner__actions__item:first-child {
1184−.top-banner__actions__item a,
1185−.top-banner__actions__item a:visited {
1188−@media (prefers-color-scheme: dark) {
1189− .top-banner__actions__item a,
1190− .top-banner__actions__item a:visited {
1194−.top-banner__actions__item a:hover {
1197−@media (prefers-color-scheme: dark) {
1198− .top-banner__actions__item a:hover {
1202−@media (min-width: 38em) {
1203− .top-banner__logo {
1207− .top-banner__form {
1213− .top-banner__actions {
1218−/* Component: Search Results
1219− * -------------------------------------------------------------------------- */
1220−.result.result--empty {
1225− margin-bottom: 0.2rem;
1228− margin-left: -0.1em;
1230−.result__body > *:first-child {
1231− margin-top: 0!important;
1233−.result__body > *:last-child {
1234− margin-bottom: 0!important;
1236−.result__signature {
1237− background-color: transparent;
1239− border-top: 1px solid #cccccc;
1240− border-bottom: 1px solid #cccccc;
1241− padding: 0.328em 0;
1243−@media (prefers-color-scheme: dark) {
1244− .result__signature {
1245− border-top-color: #43434e;
1246− border-bottom-color: #43434e;
1249−.result__signature code {
1251− padding-left: 2.441em;
1252− text-indent: -2.441em;
1253− white-space: normal;
1256− margin-top: 0.2rem;
1258−.result__actions__item {
1261−.result__actions__item + .result__actions__item {
1262− margin-left: 0.65em;
1264−/* Component: Version Selector
1265− * -------------------------------------------------------------------------- */
1267− margin-bottom: 0.8em;
1269−@media (min-width: 38em) {
1270− .version-selector {
1271− position: absolute;
1278− * These styles should be cleaned up
1279− * ========================================================================== */
1280−/* Help paragraphs */
1285− /* FIXME: target with class */
1288−/* Section: Markdown
1289− * Github rendered README
1290− * ========================================================================== */
1293− Useful for narrow screens, such as mobiles. Documentation often contains URLs
1294− which would otherwise force the page to become wider, and force creation of
1295− horizontal scrollbars. Yuck.
1297− word-wrap: break-word;
1299−.markdown-body > *:first-child {
1300− margin-top: 0 !important;
1302−.markdown-body > *:last-child {
1303− margin-bottom: 0 !important;
1305−.markdown-body a:not([href]) {
1307− text-decoration: none;
1309−.markdown-body blockquote {
1313− border-left: 0.25em solid #ddd;
1315−@media (prefers-color-scheme: dark) {
1316− .markdown-body blockquote {
1317− border-left-color: #444;
1320−.markdown-body blockquote > :first-child {
1323−.markdown-body blockquote > :last-child {
1326−.markdown-body .anchor {
1327− /* We hide the anchor because the link doesn't point to a valid location */
1330−.markdown-body .pl-k {
1334−@media (prefers-color-scheme: dark) {
1335− .markdown-body .pl-k {
1339−.markdown-body .pl-c1,
1340−.markdown-body .pl-en {
1341− /* Not really sure what this is */
1344−.markdown-body .pl-s {
1345− /* String literals */
1348−.markdown-body .pl-cce {
1349− /* String literal escape sequences */
1352−.markdown-body .pl-smi {
1353− /* type variables? */
1356−</style></head><body><div class="everything-except-footer"><div class="top-banner clearfix"><div class="container clearfix"><div style="float: left; font-size: 2.44em; font-weight: 300; line-height: 90px; margin: 0">PureScript API documentation</div><div class="top-banner__actions"><div class="top-banner__actions__item"><a href="index.html">Index</a></div></div></div></div><main class="container clearfix" role="main"><div class="page-title clearfix"><div class="page-title__label">Module</div><h1 class="page-title__title">Control.Biapplicative</h1></div><div class="col col--main"><div class="decl" id="t:Biapplicative"><h3 class="decl__title clearfix"><a class="decl__anchor" href="#t:Biapplicative">#</a><span>Biapplicative</span> </h3><div class="decl__body"><pre class="decl__signature"><code class="decl__kind"><span class="keyword">class</span> <a href="Control.Biapplicative.html#t:Biapplicative" title="Control.Biapplicative.Biapplicative"><span class="ctor">Biapplicative</span></a> <span class="syntax">::</span> <span class="syntax">(</span><a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a> <span class="syntax">-></span> <a href="Prim.html#t:Type" title="Prim.Type"><span class="ctor">Type</span></a><span class="syntax">)</span> <span class="syntax">-></span> <a href="Prim.html#t:Constraint" title="Prim.Constraint"><span class="ctor">Constraint</span></a></code><code><span class="keyword">class</span> <span class="syntax">(</span><a href="Control.Biapply.html#t:Biapply" title="Control.Biapply.Biapply"><span class="ctor">Biapply</span></a> w<span class="syntax">)</span> <span class="syntax"><=</span> <a href="Control.Biapplicative.html#t:Biapplicative" title="Control.Biapplicative.Biapplicative"><span class="ctor">Biapplicative</span></a> w <span class="keyword">where</span></code></pre><p><code>Biapplicative</code> captures type constructors of two arguments which support lifting of
1357−functions of zero or more arguments, in the sense of <code>Applicative</code>.</p>
1358−<h4>Members</h4><ul><li id="v:bipure"><code><a href="Control.Biapplicative.html#v:bipure" title="Control.Biapplicative.bipure"><span class="ident">bipure</span></a> <span class="syntax">::</span> <span class="keyword">forall</span> <span class="syntax"></span>a <span class="syntax"></span>b<span class="syntax">.</span> a <span class="syntax">-></span> b <span class="syntax">-></span> w a b</code></li></ul><h4>Instances</h4><ul><li id="v:biapplicativeTuple"><code><a href="Control.Biapplicative.html#t:Biapplicative" title="Control.Biapplicative.Biapplicative"><span class="ctor">Biapplicative</span></a> <a href="Data.Tuple.html#t:Tuple" title="Data.Tuple.Tuple"><span class="ctor">Tuple</span></a></code></li></ul></div></div></div><div class="col col--aside"><h3>Modules</h3><ul><li><a href="Ansi.Codes.html">Ansi.Codes</a></li><li><a href="Ansi.Output.html">Ansi.Output</a></li><li><a href="Bolson.Control.html">Bolson.Control</a></li><li><a href="Bolson.Core.html">Bolson.Core</a></li><li><a href="Control.Alt.html">Control.Alt</a></li><li><a href="Control.Alternative.html">Control.Alternative</a></li><li><a href="Control.Applicative.html">Control.Applicative</a></li><li><a href="Control.Apply.html">Control.Apply</a></li><li><a href="Control.Biapplicative.html">Control.Biapplicative</a></li><li><a href="Control.Biapply.html">Control.Biapply</a></li><li><a href="Control.Bind.html">Control.Bind</a></li><li><a href="Control.Category.html">Control.Category</a></li><li><a href="Control.Comonad.html">Control.Comonad</a></li><li><a href="Control.Comonad.Cofree.html">Control.Comonad.Cofree</a></li><li><a href="Control.Comonad.Cofree.Class.html">Control.Comonad.Cofree.Class</a></li><li><a href="Control.Comonad.Env.html">Control.Comonad.Env</a></li><li><a href="Control.Comonad.Env.Class.html">Control.Comonad.Env.Class</a></li><li><a href="Control.Comonad.Env.Trans.html">Control.Comonad.Env.Trans</a></li><li><a href="Control.Comonad.Store.html">Control.Comonad.Store</a></li><li><a href="Control.Comonad.Store.Class.html">Control.Comonad.Store.Class</a></li><li><a href="Control.Comonad.Store.Trans.html">Control.Comonad.Store.Trans</a></li><li><a href="Control.Comonad.Traced.html">Control.Comonad.Traced</a></li><li><a href="Control.Comonad.Traced.Class.html">Control.Comonad.Traced.Class</a></li><li><a href="Control.Comonad.Traced.Trans.html">Control.Comonad.Traced.Trans</a></li><li><a href="Control.Comonad.Trans.Class.html">Control.Comonad.Trans.Class</a></li><li><a href="Control.Extend.html">Control.Extend</a></li><li><a href="Control.Lazy.html">Control.Lazy</a></li><li><a href="Control.Monad.html">Control.Monad</a></li><li><a href="Control.Monad.Cont.html">Control.Monad.Cont</a></li><li><a href="Control.Monad.Cont.Class.html">Control.Monad.Cont.Class</a></li><li><a href="Control.Monad.Cont.Trans.html">Control.Monad.Cont.Trans</a></li><li><a href="Control.Monad.Error.Class.html">Control.Monad.Error.Class</a></li><li><a href="Control.Monad.Except.html">Control.Monad.Except</a></li><li><a href="Control.Monad.Except.Trans.html">Control.Monad.Except.Trans</a></li><li><a href="Control.Monad.Fork.Class.html">Control.Monad.Fork.Class</a></li><li><a href="Control.Monad.Free.html">Control.Monad.Free</a></li><li><a href="Control.Monad.Free.Class.html">Control.Monad.Free.Class</a></li><li><a href="Control.Monad.Gen.html">Control.Monad.Gen</a></li><li><a href="Control.Monad.Gen.Class.html">Control.Monad.Gen.Class</a></li><li><a href="Control.Monad.Gen.Common.html">Control.Monad.Gen.Common</a></li><li><a href="Control.Monad.Identity.Trans.html">Control.Monad.Identity.Trans</a></li><li><a href="Control.Monad.List.Trans.html">Control.Monad.List.Trans</a></li><li><a href="Control.Monad.Maybe.Trans.html">Control.Monad.Maybe.Trans</a></li><li><a href="Control.Monad.Morph.html">Control.Monad.Morph</a></li><li><a href="Control.Monad.RWS.html">Control.Monad.RWS</a></li><li><a href="Control.Monad.RWS.Trans.html">Control.Monad.RWS.Trans</a></li><li><a href="Control.Monad.Reader.html">Control.Monad.Reader</a></li><li><a href="Control.Monad.Reader.Class.html">Control.Monad.Reader.Class</a></li><li><a href="Control.Monad.Reader.Trans.html">Control.Monad.Reader.Trans</a></li><li><a href="Control.Monad.Rec.Class.html">Control.Monad.Rec.Class</a></li><li><a href="Control.Monad.ST.html">Control.Monad.ST</a></li><li><a href="Control.Monad.ST.Class.html">Control.Monad.ST.Class</a></li><li><a href="Control.Monad.ST.Global.html">Control.Monad.ST.Global</a></li><li><a href="Control.Monad.ST.Internal.html">Control.Monad.ST.Internal</a></li><li><a href="Control.Monad.ST.Ref.html">Control.Monad.ST.Ref</a></li><li><a href="Control.Monad.ST.Uncurried.html">Control.Monad.ST.Uncurried</a></li><li><a href="Control.Monad.State.html">Control.Monad.State</a></li><li><a href="Control.Monad.State.Class.html">Control.Monad.State.Class</a></li><li><a href="Control.Monad.State.Trans.html">Control.Monad.State.Trans</a></li><li><a href="Control.Monad.Trampoline.html">Control.Monad.Trampoline</a></li><li><a href="Control.Monad.Trans.Class.html">Control.Monad.Trans.Class</a></li><li><a href="Control.Monad.Writer.html">Control.Monad.Writer</a></li><li><a href="Control.Monad.Writer.Class.html">Control.Monad.Writer.Class</a></li><li><a href="Control.Monad.Writer.Trans.html">Control.Monad.Writer.Trans</a></li><li><a href="Control.MonadPlus.html">Control.MonadPlus</a></li><li><a href="Control.Parallel.html">Control.Parallel</a></li><li><a href="Control.Parallel.Class.html">Control.Parallel.Class</a></li><li><a href="Control.Plus.html">Control.Plus</a></li><li><a href="Control.Semigroupoid.html">Control.Semigroupoid</a></li><li><a href="Data.Array.html">Data.Array</a></li><li><a href="Data.Array.NonEmpty.html">Data.Array.NonEmpty</a></li><li><a href="Data.Array.NonEmpty.Internal.html">Data.Array.NonEmpty.Internal</a></li><li><a href="Data.Array.Partial.html">Data.Array.Partial</a></li><li><a href="Data.Array.ST.html">Data.Array.ST</a></li><li><a href="Data.Array.ST.Iterator.html">Data.Array.ST.Iterator</a></li><li><a href="Data.Array.ST.Partial.html">Data.Array.ST.Partial</a></li><li><a href="Data.ArrayBuffer.Types.html">Data.ArrayBuffer.Types</a></li><li><a href="Data.Bifoldable.html">Data.Bifoldable</a></li><li><a href="Data.Bifunctor.html">Data.Bifunctor</a></li><li><a href="Data.Bifunctor.Join.html">Data.Bifunctor.Join</a></li><li><a href="Data.Bitraversable.html">Data.Bitraversable</a></li><li><a href="Data.Boolean.html">Data.Boolean</a></li><li><a href="Data.BooleanAlgebra.html">Data.BooleanAlgebra</a></li><li><a href="Data.Bounded.html">Data.Bounded</a></li><li><a href="Data.Bounded.Generic.html">Data.Bounded.Generic</a></li><li><a href="Data.CatList.html">Data.CatList</a></li><li><a href="Data.CatQueue.html">Data.CatQueue</a></li><li><a href="Data.Char.html">Data.Char</a></li><li><a href="Data.Char.Gen.html">Data.Char.Gen</a></li><li><a href="Data.CommutativeRing.html">Data.CommutativeRing</a></li><li><a href="Data.Compactable.html">Data.Compactable</a></li><li><a href="Data.Comparison.html">Data.Comparison</a></li><li><a href="Data.Const.html">Data.Const</a></li><li><a href="Data.Coyoneda.html">Data.Coyoneda</a></li><li><a href="Data.Date.html">Data.Date</a></li><li><a href="Data.Date.Component.html">Data.Date.Component</a></li><li><a href="Data.Date.Component.Gen.html">Data.Date.Component.Gen</a></li><li><a href="Data.Date.Gen.html">Data.Date.Gen</a></li><li><a href="Data.DateTime.html">Data.DateTime</a></li><li><a href="Data.DateTime.Gen.html">Data.DateTime.Gen</a></li><li><a href="Data.DateTime.Instant.html">Data.DateTime.Instant</a></li><li><a href="Data.Decidable.html">Data.Decidable</a></li><li><a href="Data.Decide.html">Data.Decide</a></li><li><a href="Data.Distributive.html">Data.Distributive</a></li><li><a href="Data.Divide.html">Data.Divide</a></li><li><a href="Data.Divisible.html">Data.Divisible</a></li><li><a href="Data.DivisionRing.html">Data.DivisionRing</a></li><li><a href="Data.Either.html">Data.Either</a></li><li><a href="Data.Either.Inject.html">Data.Either.Inject</a></li><li><a href="Data.Either.Nested.html">Data.Either.Nested</a></li><li><a href="Data.Enum.html">Data.Enum</a></li><li><a href="Data.Enum.Gen.html">Data.Enum.Gen</a></li><li><a href="Data.Enum.Generic.html">Data.Enum.Generic</a></li><li><a href="Data.Eq.html">Data.Eq</a></li><li><a href="Data.Eq.Generic.html">Data.Eq.Generic</a></li><li><a href="Data.Equivalence.html">Data.Equivalence</a></li><li><a href="Data.EuclideanRing.html">Data.EuclideanRing</a></li><li><a href="Data.Exists.html">Data.Exists</a></li><li><a href="Data.FastVect.Common.html">Data.FastVect.Common</a></li><li><a href="Data.FastVect.Common.Matrix.html">Data.FastVect.Common.Matrix</a></li><li><a href="Data.FastVect.FastVect.html">Data.FastVect.FastVect</a></li><li><a href="Data.FastVect.FastVect.Matrix.html">Data.FastVect.FastVect.Matrix</a></li><li><a href="Data.FastVect.MinLenVect.html">Data.FastVect.MinLenVect</a></li><li><a href="Data.FastVect.Sparse.Read.html">Data.FastVect.Sparse.Read</a></li><li><a href="Data.FastVect.Sparse.Write.html">Data.FastVect.Sparse.Write</a></li><li><a href="Data.Field.html">Data.Field</a></li><li><a href="Data.Filterable.html">Data.Filterable</a></li><li><a href="Data.Foldable.html">Data.Foldable</a></li><li><a href="Data.FoldableWithIndex.html">Data.FoldableWithIndex</a></li><li><a href="Data.Function.html">Data.Function</a></li><li><a href="Data.Function.Uncurried.html">Data.Function.Uncurried</a></li><li><a href="Data.Functor.html">Data.Functor</a></li><li><a href="Data.Functor.App.html">Data.Functor.App</a></li><li><a href="Data.Functor.Clown.html">Data.Functor.Clown</a></li><li><a href="Data.Functor.Compose.html">Data.Functor.Compose</a></li><li><a href="Data.Functor.Contravariant.html">Data.Functor.Contravariant</a></li><li><a href="Data.Functor.Coproduct.html">Data.Functor.Coproduct</a></li><li><a href="Data.Functor.Coproduct.Inject.html">Data.Functor.Coproduct.Inject</a></li><li><a href="Data.Functor.Coproduct.Nested.html">Data.Functor.Coproduct.Nested</a></li><li><a href="Data.Functor.Costar.html">Data.Functor.Costar</a></li><li><a href="Data.Functor.Flip.html">Data.Functor.Flip</a></li><li><a href="Data.Functor.Invariant.html">Data.Functor.Invariant</a></li><li><a href="Data.Functor.Joker.html">Data.Functor.Joker</a></li><li><a href="Data.Functor.Product.html">Data.Functor.Product</a></li><li><a href="Data.Functor.Product.Nested.html">Data.Functor.Product.Nested</a></li><li><a href="Data.Functor.Product2.html">Data.Functor.Product2</a></li><li><a href="Data.Functor.Variant.html">Data.Functor.Variant</a></li><li><a href="Data.FunctorWithIndex.html">Data.FunctorWithIndex</a></li><li><a href="Data.Generic.Rep.html">Data.Generic.Rep</a></li><li><a href="Data.HeytingAlgebra.html">Data.HeytingAlgebra</a></li><li><a href="Data.HeytingAlgebra.Generic.html">Data.HeytingAlgebra.Generic</a></li><li><a href="Data.Identity.html">Data.Identity</a></li><li><a href="Data.Int.html">Data.Int</a></li><li><a href="Data.Int.Bits.html">Data.Int.Bits</a></li><li><a href="Data.Interval.html">Data.Interval</a></li><li><a href="Data.Interval.Duration.html">Data.Interval.Duration</a></li><li><a href="Data.Interval.Duration.Iso.html">Data.Interval.Duration.Iso</a></li><li><a href="Data.JSDate.html">Data.JSDate</a></li><li><a href="Data.Lazy.html">Data.Lazy</a></li><li><a href="Data.List.html">Data.List</a></li><li><a href="Data.List.Internal.html">Data.List.Internal</a></li><li><a href="Data.List.Lazy.html">Data.List.Lazy</a></li><li><a href="Data.List.Lazy.NonEmpty.html">Data.List.Lazy.NonEmpty</a></li><li><a href="Data.List.Lazy.Types.html">Data.List.Lazy.Types</a></li><li><a href="Data.List.NonEmpty.html">Data.List.NonEmpty</a></li><li><a href="Data.List.Partial.html">Data.List.Partial</a></li><li><a href="Data.List.Types.html">Data.List.Types</a></li><li><a href="Data.List.ZipList.html">Data.List.ZipList</a></li><li><a href="Data.Map.html">Data.Map</a></li><li><a href="Data.Map.Gen.html">Data.Map.Gen</a></li><li><a href="Data.Map.Internal.html">Data.Map.Internal</a></li><li><a href="Data.Maybe.html">Data.Maybe</a></li><li><a href="Data.Maybe.First.html">Data.Maybe.First</a></li><li><a href="Data.Maybe.Last.html">Data.Maybe.Last</a></li><li><a href="Data.MediaType.html">Data.MediaType</a></li><li><a href="Data.MediaType.Common.html">Data.MediaType.Common</a></li><li><a href="Data.Monoid.html">Data.Monoid</a></li><li><a href="Data.Monoid.Additive.html">Data.Monoid.Additive</a></li><li><a href="Data.Monoid.Alternate.html">Data.Monoid.Alternate</a></li><li><a href="Data.Monoid.Conj.html">Data.Monoid.Conj</a></li><li><a href="Data.Monoid.Disj.html">Data.Monoid.Disj</a></li><li><a href="Data.Monoid.Dual.html">Data.Monoid.Dual</a></li><li><a href="Data.Monoid.Endo.html">Data.Monoid.Endo</a></li><li><a href="Data.Monoid.Generic.html">Data.Monoid.Generic</a></li><li><a href="Data.Monoid.Multiplicative.html">Data.Monoid.Multiplicative</a></li><li><a href="Data.NaturalTransformation.html">Data.NaturalTransformation</a></li><li><a href="Data.Newtype.html">Data.Newtype</a></li><li><a href="Data.NonEmpty.html">Data.NonEmpty</a></li><li><a href="Data.Nullable.html">Data.Nullable</a></li><li><a href="Data.Number.html">Data.Number</a></li><li><a href="Data.Number.Approximate.html">Data.Number.Approximate</a></li><li><a href="Data.Number.Format.html">Data.Number.Format</a></li><li><a href="Data.Op.html">Data.Op</a></li><li><a href="Data.Ord.html">Data.Ord</a></li><li><a href="Data.Ord.Down.html">Data.Ord.Down</a></li><li><a href="Data.Ord.Generic.html">Data.Ord.Generic</a></li><li><a href="Data.Ord.Max.html">Data.Ord.Max</a></li><li><a href="Data.Ord.Min.html">Data.Ord.Min</a></li><li><a href="Data.Ordering.html">Data.Ordering</a></li><li><a href="Data.Posix.html">Data.Posix</a></li><li><a href="Data.Posix.Signal.html">Data.Posix.Signal</a></li><li><a href="Data.Predicate.html">Data.Predicate</a></li><li><a href="Data.Profunctor.html">Data.Profunctor</a></li><li><a href="Data.Profunctor.Choice.html">Data.Profunctor.Choice</a></li><li><a href="Data.Profunctor.Closed.html">Data.Profunctor.Closed</a></li><li><a href="Data.Profunctor.Cochoice.html">Data.Profunctor.Cochoice</a></li><li><a href="Data.Profunctor.Costrong.html">Data.Profunctor.Costrong</a></li><li><a href="Data.Profunctor.Join.html">Data.Profunctor.Join</a></li><li><a href="Data.Profunctor.Split.html">Data.Profunctor.Split</a></li><li><a href="Data.Profunctor.Star.html">Data.Profunctor.Star</a></li><li><a href="Data.Profunctor.Strong.html">Data.Profunctor.Strong</a></li><li><a href="Data.Reflectable.html">Data.Reflectable</a></li><li><a href="Data.Ring.html">Data.Ring</a></li><li><a href="Data.Ring.Generic.html">Data.Ring.Generic</a></li><li><a href="Data.Semigroup.html">Data.Semigroup</a></li><li><a href="Data.Semigroup.First.html">Data.Semigroup.First</a></li><li><a href="Data.Semigroup.Foldable.html">Data.Semigroup.Foldable</a></li><li><a href="Data.Semigroup.Generic.html">Data.Semigroup.Generic</a></li><li><a href="Data.Semigroup.Last.html">Data.Semigroup.Last</a></li><li><a href="Data.Semigroup.Traversable.html">Data.Semigroup.Traversable</a></li><li><a href="Data.Semiring.html">Data.Semiring</a></li><li><a href="Data.Semiring.Generic.html">Data.Semiring.Generic</a></li><li><a href="Data.Set.html">Data.Set</a></li><li><a href="Data.Set.NonEmpty.html">Data.Set.NonEmpty</a></li><li><a href="Data.Show.html">Data.Show</a></li><li><a href="Data.Show.Generic.html">Data.Show.Generic</a></li><li><a href="Data.String.html">Data.String</a></li><li><a href="Data.String.CaseInsensitive.html">Data.String.CaseInsensitive</a></li><li><a href="Data.String.CodePoints.html">Data.String.CodePoints</a></li><li><a href="Data.String.CodeUnits.html">Data.String.CodeUnits</a></li><li><a href="Data.String.Common.html">Data.String.Common</a></li><li><a href="Data.String.Gen.html">Data.String.Gen</a></li><li><a href="Data.String.NonEmpty.html">Data.String.NonEmpty</a></li><li><a href="Data.String.NonEmpty.CaseInsensitive.html">Data.String.NonEmpty.CaseInsensitive</a></li><li><a href="Data.String.NonEmpty.CodePoints.html">Data.String.NonEmpty.CodePoints</a></li><li><a href="Data.String.NonEmpty.CodeUnits.html">Data.String.NonEmpty.CodeUnits</a></li><li><a href="Data.String.NonEmpty.Internal.html">Data.String.NonEmpty.Internal</a></li><li><a href="Data.String.Pattern.html">Data.String.Pattern</a></li><li><a href="Data.String.Regex.html">Data.String.Regex</a></li><li><a href="Data.String.Regex.Flags.html">Data.String.Regex.Flags</a></li><li><a href="Data.String.Regex.Unsafe.html">Data.String.Regex.Unsafe</a></li><li><a href="Data.String.Unsafe.html">Data.String.Unsafe</a></li><li><a href="Data.Symbol.html">Data.Symbol</a></li><li><a href="Data.Time.html">Data.Time</a></li><li><a href="Data.Time.Component.html">Data.Time.Component</a></li><li><a href="Data.Time.Component.Gen.html">Data.Time.Component.Gen</a></li><li><a href="Data.Time.Duration.html">Data.Time.Duration</a></li><li><a href="Data.Time.Duration.Gen.html">Data.Time.Duration.Gen</a></li><li><a href="Data.Time.Gen.html">Data.Time.Gen</a></li><li><a href="Data.Traversable.html">Data.Traversable</a></li><li><a href="Data.Traversable.Accum.html">Data.Traversable.Accum</a></li><li><a href="Data.Traversable.Accum.Internal.html">Data.Traversable.Accum.Internal</a></li><li><a href="Data.TraversableWithIndex.html">Data.TraversableWithIndex</a></li><li><a href="Data.Tuple.html">Data.Tuple</a></li><li><a href="Data.Tuple.Nested.html">Data.Tuple.Nested</a></li><li><a href="Data.Unfoldable.html">Data.Unfoldable</a></li><li><a href="Data.Unfoldable1.html">Data.Unfoldable1</a></li><li><a href="Data.Unit.html">Data.Unit</a></li><li><a href="Data.Variant.html">Data.Variant</a></li><li><a href="Data.Variant.Internal.html">Data.Variant.Internal</a></li><li><a href="Data.Void.html">Data.Void</a></li><li><a href="Data.Witherable.html">Data.Witherable</a></li><li><a href="Data.Yoneda.html">Data.Yoneda</a></li><li><a href="Effect.html">Effect</a></li><li><a href="Effect.AVar.html">Effect.AVar</a></li><li><a href="Effect.Aff.html">Effect.Aff</a></li><li><a href="Effect.Aff.AVar.html">Effect.Aff.AVar</a></li><li><a href="Effect.Aff.Class.html">Effect.Aff.Class</a></li><li><a href="Effect.Aff.Compat.html">Effect.Aff.Compat</a></li><li><a href="Effect.Class.html">Effect.Class</a></li><li><a href="Effect.Class.Console.html">Effect.Class.Console</a></li><li><a href="Effect.Console.html">Effect.Console</a></li><li><a href="Effect.Exception.html">Effect.Exception</a></li><li><a href="Effect.Exception.Unsafe.html">Effect.Exception.Unsafe</a></li><li><a href="Effect.Now.html">Effect.Now</a></li><li><a href="Effect.Ref.html">Effect.Ref</a></li><li><a href="Effect.Timer.html">Effect.Timer</a></li><li><a href="Effect.Uncurried.html">Effect.Uncurried</a></li><li><a href="Effect.Unsafe.html">Effect.Unsafe</a></li><li><a href="FRP.Behavior.html">FRP.Behavior</a></li><li><a href="FRP.Behavior.Keyboard.html">FRP.Behavior.Keyboard</a></li><li><a href="FRP.Behavior.Mouse.html">FRP.Behavior.Mouse</a></li><li><a href="FRP.Behavior.Time.html">FRP.Behavior.Time</a></li><li><a href="FRP.Event.html">FRP.Event</a></li><li><a href="FRP.Event.AnimationFrame.html">FRP.Event.AnimationFrame</a></li><li><a href="FRP.Event.Class.html">FRP.Event.Class</a></li><li><a href="FRP.Event.Keyboard.html">FRP.Event.Keyboard</a></li><li><a href="FRP.Event.Mouse.html">FRP.Event.Mouse</a></li><li><a href="FRP.Event.Time.html">FRP.Event.Time</a></li><li><a href="FRP.Event.VBus.html">FRP.Event.VBus</a></li><li><a href="Foreign.html">Foreign</a></li><li><a href="Foreign.Index.html">Foreign.Index</a></li><li><a href="Foreign.Keys.html">Foreign.Keys</a></li><li><a href="Foreign.Object.html">Foreign.Object</a></li><li><a href="Foreign.Object.Gen.html">Foreign.Object.Gen</a></li><li><a href="Foreign.Object.ST.html">Foreign.Object.ST</a></li><li><a href="Foreign.Object.ST.Unsafe.html">Foreign.Object.ST.Unsafe</a></li><li><a href="Foreign.Object.Unsafe.html">Foreign.Object.Unsafe</a></li><li><a href="Heterogeneous.Folding.html">Heterogeneous.Folding</a></li><li><a href="Heterogeneous.Mapping.html">Heterogeneous.Mapping</a></li><li><a href="Node.Buffer.html">Node.Buffer</a></li><li><a href="Node.Buffer.Class.html">Node.Buffer.Class</a></li><li><a href="Node.Buffer.Constants.html">Node.Buffer.Constants</a></li><li><a href="Node.Buffer.Immutable.html">Node.Buffer.Immutable</a></li><li><a href="Node.Buffer.ST.html">Node.Buffer.ST</a></li><li><a href="Node.Buffer.Types.html">Node.Buffer.Types</a></li><li><a href="Node.Encoding.html">Node.Encoding</a></li><li><a href="Node.EventEmitter.html">Node.EventEmitter</a></li><li><a href="Node.EventEmitter.UtilTypes.html">Node.EventEmitter.UtilTypes</a></li><li><a href="Node.FS.html">Node.FS</a></li><li><a href="Node.FS.Aff.html">Node.FS.Aff</a></li><li><a href="Node.FS.Async.html">Node.FS.Async</a></li><li><a href="Node.FS.Constants.html">Node.FS.Constants</a></li><li><a href="Node.FS.Perms.html">Node.FS.Perms</a></li><li><a href="Node.FS.Stats.html">Node.FS.Stats</a></li><li><a href="Node.FS.Stream.html">Node.FS.Stream</a></li><li><a href="Node.FS.Sync.html">Node.FS.Sync</a></li><li><a href="Node.Path.html">Node.Path</a></li><li><a href="Node.Platform.html">Node.Platform</a></li><li><a href="Node.Process.html">Node.Process</a></li><li><a href="Node.Stream.html">Node.Stream</a></li><li><a href="Node.Stream.Aff.html">Node.Stream.Aff</a></li><li><a href="Node.Symbol.html">Node.Symbol</a></li><li><a href="Partial.html">Partial</a></li><li><a href="Partial.Unsafe.html">Partial.Unsafe</a></li><li><a href="Performance.Minibench.html">Performance.Minibench</a></li><li><a href="Pipes.html">Pipes</a></li><li><a href="Pipes.Core.html">Pipes.Core</a></li><li><a href="Pipes.Internal.html">Pipes.Internal</a></li><li><a href="Pipes.ListT.html">Pipes.ListT</a></li><li><a href="Pipes.Prelude.html">Pipes.Prelude</a></li><li><a href="Prelude.html">Prelude</a></li><li><a href="Prim.html">Prim</a></li><li><a href="Prim.Boolean.html">Prim.Boolean</a></li><li><a href="Prim.Coerce.html">Prim.Coerce</a></li><li><a href="Prim.Int.html">Prim.Int</a></li><li><a href="Prim.Ordering.html">Prim.Ordering</a></li><li><a href="Prim.Row.html">Prim.Row</a></li><li><a href="Prim.RowList.html">Prim.RowList</a></li><li><a href="Prim.Symbol.html">Prim.Symbol</a></li><li><a href="Prim.TypeError.html">Prim.TypeError</a></li><li><a href="Record.html">Record</a></li><li><a href="Record.Builder.html">Record.Builder</a></li><li><a href="Record.Studio.html">Record.Studio</a></li><li><a href="Record.Studio.Keys.html">Record.Studio.Keys</a></li><li><a href="Record.Studio.Map.html">Record.Studio.Map</a></li><li><a href="Record.Studio.MapKind.html">Record.Studio.MapKind</a></li><li><a href="Record.Studio.MapUniform.html">Record.Studio.MapUniform</a></li><li><a href="Record.Studio.Merge.html">Record.Studio.Merge</a></li><li><a href="Record.Studio.SameKeys.html">Record.Studio.SameKeys</a></li><li><a href="Record.Studio.Sequence.html">Record.Studio.Sequence</a></li><li><a href="Record.Studio.Shrink.html">Record.Studio.Shrink</a></li><li><a href="Record.Studio.SingletonRecord.html">Record.Studio.SingletonRecord</a></li><li><a href="Record.Unsafe.html">Record.Unsafe</a></li><li><a href="Record.Unsafe.Union.html">Record.Unsafe.Union</a></li><li><a href="Safe.Coerce.html">Safe.Coerce</a></li><li><a href="Spago.Generated.BuildInfo.html">Spago.Generated.BuildInfo</a></li><li><a href="Test.Spec.html">Test.Spec</a></li><li><a href="Test.Spec.Assertions.html">Test.Spec.Assertions</a></li><li><a href="Test.Spec.Assertions.String.html">Test.Spec.Assertions.String</a></li><li><a href="Test.Spec.Config.html">Test.Spec.Config</a></li><li><a href="Test.Spec.Console.html">Test.Spec.Console</a></li><li><a href="Test.Spec.Reporter.html">Test.Spec.Reporter</a></li><li><a href="Test.Spec.Reporter.Base.html">Test.Spec.Reporter.Base</a></li><li><a href="Test.Spec.Reporter.Console.html">Test.Spec.Reporter.Console</a></li><li><a href="Test.Spec.Reporter.Dot.html">Test.Spec.Reporter.Dot</a></li><li><a href="Test.Spec.Reporter.Spec.html">Test.Spec.Reporter.Spec</a></li><li><a href="Test.Spec.Reporter.Tap.html">Test.Spec.Reporter.Tap</a></li><li><a href="Test.Spec.Reporter.TeamCity.html">Test.Spec.Reporter.TeamCity</a></li><li><a href="Test.Spec.Result.html">Test.Spec.Result</a></li><li><a href="Test.Spec.Runner.html">Test.Spec.Runner</a></li><li><a href="Test.Spec.Runner.Event.html">Test.Spec.Runner.Event</a></li><li><a href="Test.Spec.Speed.html">Test.Spec.Speed</a></li><li><a href="Test.Spec.Style.html">Test.Spec.Style</a></li><li><a href="Test.Spec.Summary.html">Test.Spec.Summary</a></li><li><a href="Test.Spec.Tree.html">Test.Spec.Tree</a></li><li><a href="Type.Data.Boolean.html">Type.Data.Boolean</a></li><li><a href="Type.Data.Ordering.html">Type.Data.Ordering</a></li><li><a href="Type.Data.Symbol.html">Type.Data.Symbol</a></li><li><a href="Type.Equality.html">Type.Equality</a></li><li><a href="Type.Function.html">Type.Function</a></li><li><a href="Type.Prelude.html">Type.Prelude</a></li><li><a href="Type.Proxy.html">Type.Proxy</a></li><li><a href="Type.Row.html">Type.Row</a></li><li><a href="Type.Row.Homogeneous.html">Type.Row.Homogeneous</a></li><li><a href="Type.RowList.html">Type.RowList</a></li><li><a href="Uncurried.RWSE.html">Uncurried.RWSE</a></li><li><a href="Uncurried.RWSET.html">Uncurried.RWSET</a></li><li><a href="Uncurried.Reader.html">Uncurried.Reader</a></li><li><a href="Uncurried.ReaderT.html">Uncurried.ReaderT</a></li><li><a href="Uncurried.State.html">Uncurried.State</a></li><li><a href="Uncurried.StateT.html">Uncurried.StateT</a></li><li><a href="Uncurried.Writer.html">Uncurried.Writer</a></li><li><a href="Uncurried.WriterT.html">Uncurried.WriterT</a></li><li><a href="Unsafe.Coerce.html">Unsafe.Coerce</a></li><li><a href="Unsafe.Reference.html">Unsafe.Reference</a></li><li><a href="Web.DOM.html">Web.DOM</a></li><li><a href="Web.DOM.CharacterData.html">Web.DOM.CharacterData</a></li><li><a href="Web.DOM.ChildNode.html">Web.DOM.ChildNode</a></li><li><a href="Web.DOM.Comment.html">Web.DOM.Comment</a></li><li><a href="Web.DOM.DOMTokenList.html">Web.DOM.DOMTokenList</a></li><li><a href="Web.DOM.Document.html">Web.DOM.Document</a></li><li><a href="Web.DOM.DocumentFragment.html">Web.DOM.DocumentFragment</a></li><li><a href="Web.DOM.DocumentType.html">Web.DOM.DocumentType</a></li><li><a href="Web.DOM.Element.html">Web.DOM.Element</a></li><li><a href="Web.DOM.HTMLCollection.html">Web.DOM.HTMLCollection</a></li><li><a href="Web.DOM.Internal.Types.html">Web.DOM.Internal.Types</a></li><li><a href="Web.DOM.MutationObserver.html">Web.DOM.MutationObserver</a></li><li><a href="Web.DOM.MutationRecord.html">Web.DOM.MutationRecord</a></li><li><a href="Web.DOM.Node.html">Web.DOM.Node</a></li><li><a href="Web.DOM.NodeList.html">Web.DOM.NodeList</a></li><li><a href="Web.DOM.NodeType.html">Web.DOM.NodeType</a></li><li><a href="Web.DOM.NonDocumentTypeChildNode.html">Web.DOM.NonDocumentTypeChildNode</a></li><li><a href="Web.DOM.NonElementParentNode.html">Web.DOM.NonElementParentNode</a></li><li><a href="Web.DOM.ParentNode.html">Web.DOM.ParentNode</a></li><li><a href="Web.DOM.ProcessingInstruction.html">Web.DOM.ProcessingInstruction</a></li><li><a href="Web.DOM.ShadowRoot.html">Web.DOM.ShadowRoot</a></li><li><a href="Web.DOM.Text.html">Web.DOM.Text</a></li><li><a href="Web.Event.CustomEvent.html">Web.Event.CustomEvent</a></li><li><a href="Web.Event.Event.html">Web.Event.Event</a></li><li><a href="Web.Event.EventPhase.html">Web.Event.EventPhase</a></li><li><a href="Web.Event.EventTarget.html">Web.Event.EventTarget</a></li><li><a href="Web.Event.Internal.Types.html">Web.Event.Internal.Types</a></li><li><a href="Web.File.Blob.html">Web.File.Blob</a></li><li><a href="Web.File.File.html">Web.File.File</a></li><li><a href="Web.File.FileList.html">Web.File.FileList</a></li><li><a href="Web.File.FileReader.html">Web.File.FileReader</a></li><li><a href="Web.File.FileReader.ReadyState.html">Web.File.FileReader.ReadyState</a></li><li><a href="Web.File.Url.html">Web.File.Url</a></li><li><a href="Web.HTML.html">Web.HTML</a></li><li><a href="Web.HTML.Common.html">Web.HTML.Common</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.html">Web.HTML.Event.BeforeUnloadEvent</a></li><li><a href="Web.HTML.Event.BeforeUnloadEvent.EventTypes.html">Web.HTML.Event.BeforeUnloadEvent.EventTypes</a></li><li><a href="Web.HTML.Event.DataTransfer.html">Web.HTML.Event.DataTransfer</a></li><li><a href="Web.HTML.Event.DataTransfer.DataTransferItem.html">Web.HTML.Event.DataTransfer.DataTransferItem</a></li><li><a href="Web.HTML.Event.DragEvent.html">Web.HTML.Event.DragEvent</a></li><li><a href="Web.HTML.Event.DragEvent.EventTypes.html">Web.HTML.Event.DragEvent.EventTypes</a></li><li><a href="Web.HTML.Event.ErrorEvent.html">Web.HTML.Event.ErrorEvent</a></li><li><a href="Web.HTML.Event.EventTypes.html">Web.HTML.Event.EventTypes</a></li><li><a href="Web.HTML.Event.HashChangeEvent.html">Web.HTML.Event.HashChangeEvent</a></li><li><a href="Web.HTML.Event.HashChangeEvent.EventTypes.html">Web.HTML.Event.HashChangeEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.html">Web.HTML.Event.PageTransitionEvent</a></li><li><a href="Web.HTML.Event.PageTransitionEvent.EventTypes.html">Web.HTML.Event.PageTransitionEvent.EventTypes</a></li><li><a href="Web.HTML.Event.PopStateEvent.html">Web.HTML.Event.PopStateEvent</a></li><li><a href="Web.HTML.Event.PopStateEvent.EventTypes.html">Web.HTML.Event.PopStateEvent.EventTypes</a></li><li><a href="Web.HTML.Event.TrackEvent.html">Web.HTML.Event.TrackEvent</a></li><li><a href="Web.HTML.Event.TrackEvent.EventTypes.html">Web.HTML.Event.TrackEvent.EventTypes</a></li><li><a href="Web.HTML.HTMLAnchorElement.html">Web.HTML.HTMLAnchorElement</a></li><li><a href="Web.HTML.HTMLAreaElement.html">Web.HTML.HTMLAreaElement</a></li><li><a href="Web.HTML.HTMLAudioElement.html">Web.HTML.HTMLAudioElement</a></li><li><a href="Web.HTML.HTMLBRElement.html">Web.HTML.HTMLBRElement</a></li><li><a href="Web.HTML.HTMLBaseElement.html">Web.HTML.HTMLBaseElement</a></li><li><a href="Web.HTML.HTMLBodyElement.html">Web.HTML.HTMLBodyElement</a></li><li><a href="Web.HTML.HTMLButtonElement.html">Web.HTML.HTMLButtonElement</a></li><li><a href="Web.HTML.HTMLCanvasElement.html">Web.HTML.HTMLCanvasElement</a></li><li><a href="Web.HTML.HTMLDListElement.html">Web.HTML.HTMLDListElement</a></li><li><a href="Web.HTML.HTMLDataElement.html">Web.HTML.HTMLDataElement</a></li><li><a href="Web.HTML.HTMLDataListElement.html">Web.HTML.HTMLDataListElement</a></li><li><a href="Web.HTML.HTMLDivElement.html">Web.HTML.HTMLDivElement</a></li><li><a href="Web.HTML.HTMLDocument.html">Web.HTML.HTMLDocument</a></li><li><a href="Web.HTML.HTMLDocument.ReadyState.html">Web.HTML.HTMLDocument.ReadyState</a></li><li><a href="Web.HTML.HTMLDocument.VisibilityState.html">Web.HTML.HTMLDocument.VisibilityState</a></li><li><a href="Web.HTML.HTMLElement.html">Web.HTML.HTMLElement</a></li><li><a href="Web.HTML.HTMLEmbedElement.html">Web.HTML.HTMLEmbedElement</a></li><li><a href="Web.HTML.HTMLFieldSetElement.html">Web.HTML.HTMLFieldSetElement</a></li><li><a href="Web.HTML.HTMLFormElement.html">Web.HTML.HTMLFormElement</a></li><li><a href="Web.HTML.HTMLHRElement.html">Web.HTML.HTMLHRElement</a></li><li><a href="Web.HTML.HTMLHeadElement.html">Web.HTML.HTMLHeadElement</a></li><li><a href="Web.HTML.HTMLHeadingElement.html">Web.HTML.HTMLHeadingElement</a></li><li><a href="Web.HTML.HTMLHtmlElement.html">Web.HTML.HTMLHtmlElement</a></li><li><a href="Web.HTML.HTMLHyperlinkElementUtils.html">Web.HTML.HTMLHyperlinkElementUtils</a></li><li><a href="Web.HTML.HTMLIFrameElement.html">Web.HTML.HTMLIFrameElement</a></li><li><a href="Web.HTML.HTMLImageElement.html">Web.HTML.HTMLImageElement</a></li><li><a href="Web.HTML.HTMLImageElement.CORSMode.html">Web.HTML.HTMLImageElement.CORSMode</a></li><li><a href="Web.HTML.HTMLImageElement.DecodingHint.html">Web.HTML.HTMLImageElement.DecodingHint</a></li><li><a href="Web.HTML.HTMLImageElement.Laziness.html">Web.HTML.HTMLImageElement.Laziness</a></li><li><a href="Web.HTML.HTMLInputElement.html">Web.HTML.HTMLInputElement</a></li><li><a href="Web.HTML.HTMLKeygenElement.html">Web.HTML.HTMLKeygenElement</a></li><li><a href="Web.HTML.HTMLLIElement.html">Web.HTML.HTMLLIElement</a></li><li><a href="Web.HTML.HTMLLabelElement.html">Web.HTML.HTMLLabelElement</a></li><li><a href="Web.HTML.HTMLLegendElement.html">Web.HTML.HTMLLegendElement</a></li><li><a href="Web.HTML.HTMLLinkElement.html">Web.HTML.HTMLLinkElement</a></li><li><a href="Web.HTML.HTMLMapElement.html">Web.HTML.HTMLMapElement</a></li><li><a href="Web.HTML.HTMLMediaElement.html">Web.HTML.HTMLMediaElement</a></li><li><a href="Web.HTML.HTMLMediaElement.CanPlayType.html">Web.HTML.HTMLMediaElement.CanPlayType</a></li><li><a href="Web.HTML.HTMLMediaElement.NetworkState.html">Web.HTML.HTMLMediaElement.NetworkState</a></li><li><a href="Web.HTML.HTMLMediaElement.ReadyState.html">Web.HTML.HTMLMediaElement.ReadyState</a></li><li><a href="Web.HTML.HTMLMetaElement.html">Web.HTML.HTMLMetaElement</a></li><li><a href="Web.HTML.HTMLMeterElement.html">Web.HTML.HTMLMeterElement</a></li><li><a href="Web.HTML.HTMLModElement.html">Web.HTML.HTMLModElement</a></li><li><a href="Web.HTML.HTMLOListElement.html">Web.HTML.HTMLOListElement</a></li><li><a href="Web.HTML.HTMLObjectElement.html">Web.HTML.HTMLObjectElement</a></li><li><a href="Web.HTML.HTMLOptGroupElement.html">Web.HTML.HTMLOptGroupElement</a></li><li><a href="Web.HTML.HTMLOptionElement.html">Web.HTML.HTMLOptionElement</a></li><li><a href="Web.HTML.HTMLOutputElement.html">Web.HTML.HTMLOutputElement</a></li><li><a href="Web.HTML.HTMLParagraphElement.html">Web.HTML.HTMLParagraphElement</a></li><li><a href="Web.HTML.HTMLParamElement.html">Web.HTML.HTMLParamElement</a></li><li><a href="Web.HTML.HTMLPreElement.html">Web.HTML.HTMLPreElement</a></li><li><a href="Web.HTML.HTMLProgressElement.html">Web.HTML.HTMLProgressElement</a></li><li><a href="Web.HTML.HTMLQuoteElement.html">Web.HTML.HTMLQuoteElement</a></li><li><a href="Web.HTML.HTMLScriptElement.html">Web.HTML.HTMLScriptElement</a></li><li><a href="Web.HTML.HTMLSelectElement.html">Web.HTML.HTMLSelectElement</a></li><li><a href="Web.HTML.HTMLSourceElement.html">Web.HTML.HTMLSourceElement</a></li><li><a href="Web.HTML.HTMLSpanElement.html">Web.HTML.HTMLSpanElement</a></li><li><a href="Web.HTML.HTMLStyleElement.html">Web.HTML.HTMLStyleElement</a></li><li><a href="Web.HTML.HTMLTableCaptionElement.html">Web.HTML.HTMLTableCaptionElement</a></li><li><a href="Web.HTML.HTMLTableCellElement.html">Web.HTML.HTMLTableCellElement</a></li><li><a href="Web.HTML.HTMLTableColElement.html">Web.HTML.HTMLTableColElement</a></li><li><a href="Web.HTML.HTMLTableDataCellElement.html">Web.HTML.HTMLTableDataCellElement</a></li><li><a href="Web.HTML.HTMLTableElement.html">Web.HTML.HTMLTableElement</a></li><li><a href="Web.HTML.HTMLTableHeaderCellElement.html">Web.HTML.HTMLTableHeaderCellElement</a></li><li><a href="Web.HTML.HTMLTableRowElement.html">Web.HTML.HTMLTableRowElement</a></li><li><a href="Web.HTML.HTMLTableSectionElement.html">Web.HTML.HTMLTableSectionElement</a></li><li><a href="Web.HTML.HTMLTemplateElement.html">Web.HTML.HTMLTemplateElement</a></li><li><a href="Web.HTML.HTMLTextAreaElement.html">Web.HTML.HTMLTextAreaElement</a></li><li><a href="Web.HTML.HTMLTimeElement.html">Web.HTML.HTMLTimeElement</a></li><li><a href="Web.HTML.HTMLTitleElement.html">Web.HTML.HTMLTitleElement</a></li><li><a href="Web.HTML.HTMLTrackElement.html">Web.HTML.HTMLTrackElement</a></li><li><a href="Web.HTML.HTMLTrackElement.ReadyState.html">Web.HTML.HTMLTrackElement.ReadyState</a></li><li><a href="Web.HTML.HTMLUListElement.html">Web.HTML.HTMLUListElement</a></li><li><a href="Web.HTML.HTMLVideoElement.html">Web.HTML.HTMLVideoElement</a></li><li><a href="Web.HTML.History.html">Web.HTML.History</a></li><li><a href="Web.HTML.Location.html">Web.HTML.Location</a></li><li><a href="Web.HTML.Navigator.html">Web.HTML.Navigator</a></li><li><a href="Web.HTML.SelectionMode.html">Web.HTML.SelectionMode</a></li><li><a href="Web.HTML.ValidityState.html">Web.HTML.ValidityState</a></li><li><a href="Web.HTML.Window.html">Web.HTML.Window</a></li><li><a href="Web.Internal.FFI.html">Web.Internal.FFI</a></li><li><a href="Web.Storage.Event.StorageEvent.html">Web.Storage.Event.StorageEvent</a></li><li><a href="Web.Storage.Storage.html">Web.Storage.Storage</a></li><li><a href="Web.UIEvent.CompositionEvent.html">Web.UIEvent.CompositionEvent</a></li><li><a href="Web.UIEvent.CompositionEvent.EventTypes.html">Web.UIEvent.CompositionEvent.EventTypes</a></li><li><a href="Web.UIEvent.EventTypes.html">Web.UIEvent.EventTypes</a></li><li><a href="Web.UIEvent.FocusEvent.html">Web.UIEvent.FocusEvent</a></li><li><a href="Web.UIEvent.FocusEvent.EventTypes.html">Web.UIEvent.FocusEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.html">Web.UIEvent.InputEvent</a></li><li><a href="Web.UIEvent.InputEvent.EventTypes.html">Web.UIEvent.InputEvent.EventTypes</a></li><li><a href="Web.UIEvent.InputEvent.InputType.html">Web.UIEvent.InputEvent.InputType</a></li><li><a href="Web.UIEvent.KeyboardEvent.html">Web.UIEvent.KeyboardEvent</a></li><li><a href="Web.UIEvent.KeyboardEvent.EventTypes.html">Web.UIEvent.KeyboardEvent.EventTypes</a></li><li><a href="Web.UIEvent.MouseEvent.html">Web.UIEvent.MouseEvent</a></li><li><a href="Web.UIEvent.MouseEvent.EventTypes.html">Web.UIEvent.MouseEvent.EventTypes</a></li><li><a href="Web.UIEvent.UIEvent.html">Web.UIEvent.UIEvent</a></li><li><a href="Web.UIEvent.WheelEvent.html">Web.UIEvent.WheelEvent</a></li><li><a href="Web.UIEvent.WheelEvent.EventTypes.html">Web.UIEvent.WheelEvent.EventTypes</a></li></ul></div></main></div><div class="footer clearfix"><p>Generated by purs 0.15.15 [development build; commit: UNKNOWN]</p></div><!-- Docs search index. --><script type="text/javascript" src="./docs-search-app.js"></script><script type="text/javascript">window.DocsSearchTypeIndex = {};window.DocsSearchIndex = {};</script></body></html>
generated-docs/html/Control.Biapply.htmldeleted−1366
This diff is too big to show here.
generated-docs/html/Control.Bind.htmldeleted−1486
This diff is too big to show here.
generated-docs/html/Control.Category.htmldeleted−1372
This diff is too big to show here.
generated-docs/html/Control.Comonad.Cofree.Class.htmldeleted−1357
This diff is too big to show here.
generated-docs/html/Control.Comonad.Cofree.htmldeleted−1373
This diff is too big to show here.
generated-docs/html/Control.Comonad.Env.Class.htmldeleted−1371
This diff is too big to show here.
generated-docs/html/Control.Comonad.Env.Trans.htmldeleted−1364
This diff is too big to show here.
generated-docs/html/Control.Comonad.Env.htmldeleted−1381
This diff is too big to show here.
generated-docs/html/Control.Comonad.Store.Class.htmldeleted−1377
This diff is too big to show here.
generated-docs/html/Control.Comonad.Store.Trans.htmldeleted−1362
This diff is too big to show here.
generated-docs/html/Control.Comonad.Store.htmldeleted−1386
This diff is too big to show here.
generated-docs/html/Control.Comonad.Traced.Class.htmldeleted−1376
This diff is too big to show here.
generated-docs/html/Control.Comonad.Traced.Trans.htmldeleted−1362
This diff is too big to show here.
generated-docs/html/Control.Comonad.Traced.htmldeleted−1385
This diff is too big to show here.
generated-docs/html/Control.Comonad.Trans.Class.htmldeleted−1369
This diff is too big to show here.
generated-docs/html/Control.Comonad.htmldeleted−1394
This diff is too big to show here.
generated-docs/html/Control.Extend.htmldeleted−1389
This diff is too big to show here.
generated-docs/html/Control.Lazy.htmldeleted−1362
This diff is too big to show here.
generated-docs/html/Control.Monad.Cont.Class.htmldeleted−1369
This diff is too big to show here.
generated-docs/html/Control.Monad.Cont.Trans.htmldeleted−1386
This diff is too big to show here.
generated-docs/html/Control.Monad.Cont.htmldeleted−1392
This diff is too big to show here.
generated-docs/html/Control.Monad.Error.Class.htmldeleted−1388
This diff is too big to show here.
generated-docs/html/Control.Monad.Except.Trans.htmldeleted−1398
This diff is too big to show here.
generated-docs/html/Control.Monad.Except.htmldeleted−1409
This diff is too big to show here.
generated-docs/html/Control.Monad.Fork.Class.htmldeleted−1392
This diff is too big to show here.
generated-docs/html/Control.Monad.Free.Class.htmldeleted−1357
This diff is too big to show here.
generated-docs/html/Control.Monad.Free.htmldeleted−1378
This diff is too big to show here.
generated-docs/html/Control.Monad.Gen.Class.htmldeleted−1366
This diff is too big to show here.
generated-docs/html/Control.Monad.Gen.Common.htmldeleted−1378
This diff is too big to show here.
generated-docs/html/Control.Monad.Gen.htmldeleted−1386
This diff is too big to show here.
generated-docs/html/Control.Monad.Identity.Trans.htmldeleted−1362
This diff is too big to show here.
generated-docs/html/Control.Monad.List.Trans.htmldeleted−1412
This diff is too big to show here.
generated-docs/html/Control.Monad.Maybe.Trans.htmldeleted−1374
This diff is too big to show here.
generated-docs/html/Control.Monad.Morph.htmldeleted−1357
This diff is too big to show here.
generated-docs/html/Control.Monad.RWS.Trans.htmldeleted−1376
This diff is too big to show here.
generated-docs/html/Control.Monad.RWS.htmldeleted−1394
This diff is too big to show here.
generated-docs/html/Control.Monad.Reader.Class.htmldeleted−1377
This diff is too big to show here.
generated-docs/html/Control.Monad.Reader.Trans.htmldeleted−1396
This diff is too big to show here.
generated-docs/html/Control.Monad.Reader.htmldeleted−1401
This diff is too big to show here.
generated-docs/html/Control.Monad.Rec.Class.htmldeleted−1408
This diff is too big to show here.
generated-docs/html/Control.Monad.ST.Class.htmldeleted−1356
This diff is too big to show here.
generated-docs/html/Control.Monad.ST.Global.htmldeleted−1359
This diff is too big to show here.
generated-docs/html/Control.Monad.ST.Internal.htmldeleted−1390
This diff is too big to show here.
generated-docs/html/Control.Monad.ST.Ref.htmldeleted−1366
This diff is too big to show here.
generated-docs/html/Control.Monad.ST.Uncurried.htmldeleted−1370
This diff is too big to show here.
generated-docs/html/Control.Monad.ST.htmldeleted−1380
This diff is too big to show here.
generated-docs/html/Control.Monad.State.Class.htmldeleted−1376
This diff is too big to show here.
generated-docs/html/Control.Monad.State.Trans.htmldeleted−1397
This diff is too big to show here.
generated-docs/html/Control.Monad.State.htmldeleted−1404
This diff is too big to show here.
generated-docs/html/Control.Monad.Trampoline.htmldeleted−1365
This diff is too big to show here.
generated-docs/html/Control.Monad.Trans.Class.htmldeleted−1369
This diff is too big to show here.
generated-docs/html/Control.Monad.Writer.Class.htmldeleted−1383
This diff is too big to show here.
generated-docs/html/Control.Monad.Writer.Trans.htmldeleted−1402
This diff is too big to show here.
generated-docs/html/Control.Monad.Writer.htmldeleted−1408
This diff is too big to show here.
generated-docs/html/Control.Monad.htmldeleted−1500
This diff is too big to show here.
generated-docs/html/Control.MonadPlus.htmldeleted−1558
This diff is too big to show here.
generated-docs/html/Control.Parallel.Class.htmldeleted−1372
This diff is too big to show here.
generated-docs/html/Control.Parallel.htmldeleted−1377
This diff is too big to show here.
generated-docs/html/Control.Plus.htmldeleted−1408
This diff is too big to show here.
generated-docs/html/Control.Semigroupoid.htmldeleted−1365
This diff is too big to show here.
generated-docs/html/Data.Array.NonEmpty.Internal.htmldeleted−1366
This diff is too big to show here.
generated-docs/html/Data.Array.NonEmpty.htmldeleted−1407
This diff is too big to show here.
generated-docs/html/Data.Array.Partial.htmldeleted−1365
This diff is too big to show here.
generated-docs/html/Data.Array.ST.Iterator.htmldeleted−1372
This diff is too big to show here.
generated-docs/html/Data.Array.ST.Partial.htmldeleted−1360
This diff is too big to show here.
generated-docs/html/Data.Array.ST.htmldeleted−1400
This diff is too big to show here.
generated-docs/html/Data.Array.htmldeleted−1841
This diff is too big to show here.
generated-docs/html/Data.ArrayBuffer.Types.htmldeleted−1361
This diff is too big to show here.
generated-docs/html/Data.Bifoldable.htmldeleted−1391
This diff is too big to show here.
generated-docs/html/Data.Bifunctor.Join.htmldeleted−1357
This diff is too big to show here.
generated-docs/html/Data.Bifunctor.htmldeleted−1368
This diff is too big to show here.
generated-docs/html/Data.Bitraversable.htmldeleted−1404
This diff is too big to show here.
generated-docs/html/Data.Boolean.htmldeleted−1360
This diff is too big to show here.
generated-docs/html/Data.BooleanAlgebra.htmldeleted−1410
This diff is too big to show here.
generated-docs/html/Data.Bounded.Generic.htmldeleted−1358
This diff is too big to show here.
generated-docs/html/Data.Bounded.htmldeleted−1381
This diff is too big to show here.
generated-docs/html/Data.CatList.htmldeleted−1390
This diff is too big to show here.
generated-docs/html/Data.CatQueue.htmldeleted−1383
This diff is too big to show here.
generated-docs/html/Data.Char.Gen.htmldeleted−1363
This diff is too big to show here.
generated-docs/html/Data.Char.htmldeleted−1359
This diff is too big to show here.
generated-docs/html/Data.CommutativeRing.htmldeleted−1401
This diff is too big to show here.
generated-docs/html/Data.Compactable.htmldeleted−1387
This diff is too big to show here.
generated-docs/html/Data.Comparison.htmldeleted−1358
This diff is too big to show here.
generated-docs/html/Data.Const.htmldeleted−1362
This diff is too big to show here.
generated-docs/html/Data.Coyoneda.htmldeleted−1403
This diff is too big to show here.
generated-docs/html/Data.Date.Component.Gen.htmldeleted−1360
This diff is too big to show here.
generated-docs/html/Data.Date.Component.htmldeleted−1366
This diff is too big to show here.
generated-docs/html/Data.Date.Gen.html−1362
This diff is too big to show here.
generated-docs/html/Data.Date.html−1385
This diff is too big to show here.
generated-docs/html/Data.DateTime.Gen.html−1369
This diff is too big to show here.
generated-docs/html/Data.DateTime.Instant.html−1378
This diff is too big to show here.
generated-docs/html/Data.DateTime.html−1411
This diff is too big to show here.
generated-docs/html/Data.Decidable.html−1357
This diff is too big to show here.
generated-docs/html/Data.Decide.html−1358
This diff is too big to show here.
generated-docs/html/Data.Distributive.html−1374
This diff is too big to show here.
generated-docs/html/Data.Divide.html−1365
This diff is too big to show here.
generated-docs/html/Data.Divisible.html−1357
This diff is too big to show here.
generated-docs/html/Data.DivisionRing.html−1418
This diff is too big to show here.
generated-docs/html/Data.Either.Inject.html−1356
This diff is too big to show here.
generated-docs/html/Data.Either.Nested.html−1381
This diff is too big to show here.
generated-docs/html/Data.Either.html−1502
This diff is too big to show here.
generated-docs/html/Data.Enum.Gen.html−1357
This diff is too big to show here.
generated-docs/html/Data.Enum.Generic.html−1364
This diff is too big to show here.
generated-docs/html/Data.Enum.html−1454
This diff is too big to show here.
generated-docs/html/Data.Eq.Generic.html−1357
This diff is too big to show here.
generated-docs/html/Data.Eq.html−1372
This diff is too big to show here.
generated-docs/html/Data.Equivalence.html−1360
This diff is too big to show here.
generated-docs/html/Data.EuclideanRing.html−1446
This diff is too big to show here.
generated-docs/html/Data.Exists.html−1385
This diff is too big to show here.
generated-docs/html/Data.FastVect.Common.Matrix.html−1356
This diff is too big to show here.
generated-docs/html/Data.FastVect.Common.html−1455
This diff is too big to show here.
generated-docs/html/Data.FastVect.FastVect.Matrix.html−1385
This diff is too big to show here.
generated-docs/html/Data.FastVect.FastVect.html−1470
This diff is too big to show here.
generated-docs/html/Data.FastVect.MinLenVect.html−1477
This diff is too big to show here.
generated-docs/html/Data.FastVect.Sparse.Read.html−1457
This diff is too big to show here.
generated-docs/html/Data.FastVect.Sparse.Write.html−1456
This diff is too big to show here.
generated-docs/html/Data.Field.html−1480
This diff is too big to show here.
generated-docs/html/Data.Filterable.html−1434
This diff is too big to show here.
generated-docs/html/Data.Foldable.html−1482
This diff is too big to show here.
generated-docs/html/Data.FoldableWithIndex.html−1430
This diff is too big to show here.
generated-docs/html/Data.Function.Uncurried.html−1389
This diff is too big to show here.
generated-docs/html/Data.Function.html−1405
This diff is too big to show here.
generated-docs/html/Data.Functor.App.html−1356
This diff is too big to show here.
generated-docs/html/Data.Functor.Clown.html−1360
This diff is too big to show here.
generated-docs/html/Data.Functor.Compose.html−1357
This diff is too big to show here.
generated-docs/html/Data.Functor.Contravariant.html−1367
This diff is too big to show here.
generated-docs/html/Data.Functor.Coproduct.Inject.html−1356
This diff is too big to show here.
generated-docs/html/Data.Functor.Coproduct.Nested.html−1356
This diff is too big to show here.
generated-docs/html/Data.Functor.Coproduct.html−1362
This diff is too big to show here.
generated-docs/html/Data.Functor.Costar.html−1358
This diff is too big to show here.
generated-docs/html/Data.Functor.Flip.html−1357
This diff is too big to show here.
generated-docs/html/Data.Functor.Invariant.html−1367
This diff is too big to show here.
generated-docs/html/Data.Functor.Joker.html−1360
This diff is too big to show here.
generated-docs/html/Data.Functor.Product.Nested.html−1356
This diff is too big to show here.
generated-docs/html/Data.Functor.Product.html−1358
This diff is too big to show here.
generated-docs/html/Data.Functor.Product2.html−1361
This diff is too big to show here.
generated-docs/html/Data.Functor.Variant.html−1438
This diff is too big to show here.
generated-docs/html/Data.Functor.html−1394
This diff is too big to show here.
generated-docs/html/Data.FunctorWithIndex.html−1365
This diff is too big to show here.
generated-docs/html/Data.Generic.Rep.html−1365
This diff is too big to show here.
generated-docs/html/Data.HeytingAlgebra.Generic.html−1362
This diff is too big to show here.
generated-docs/html/Data.HeytingAlgebra.html−1398
This diff is too big to show here.
generated-docs/html/Data.Identity.html−1356
This diff is too big to show here.
generated-docs/html/Data.Int.Bits.html−1364
This diff is too big to show here.
generated-docs/html/Data.Int.html−1445
This diff is too big to show here.
generated-docs/html/Data.Interval.Duration.Iso.html−1356
This diff is too big to show here.
generated-docs/html/Data.Interval.Duration.html−1356
This diff is too big to show here.
generated-docs/html/Data.Interval.html−1356
This diff is too big to show here.
generated-docs/html/Data.JSDate.html−1426
This diff is too big to show here.
generated-docs/html/Data.Lazy.html−1365
This diff is too big to show here.
generated-docs/html/Data.List.Internal.html−1357
This diff is too big to show here.
generated-docs/html/Data.List.Lazy.NonEmpty.html−1356
This diff is too big to show here.
generated-docs/html/Data.List.Lazy.Types.html−1368
This diff is too big to show here.
generated-docs/html/Data.List.Lazy.html−1586
This diff is too big to show here.
generated-docs/html/Data.List.NonEmpty.html−1398
This diff is too big to show here.
generated-docs/html/Data.List.Partial.html−1365
This diff is too big to show here.
generated-docs/html/Data.List.Types.html−1356
This diff is too big to show here.
generated-docs/html/Data.List.ZipList.html−1360
This diff is too big to show here.
generated-docs/html/Data.List.html−1610
This diff is too big to show here.
generated-docs/html/Data.Map.Gen.html−1357
This diff is too big to show here.
generated-docs/html/Data.Map.Internal.html−1477
This diff is too big to show here.
generated-docs/html/Data.Map.html−1470
This diff is too big to show here.
generated-docs/html/Data.Maybe.First.html−1362
This diff is too big to show here.
generated-docs/html/Data.Maybe.Last.html−1362
This diff is too big to show here.
generated-docs/html/Data.Maybe.html−1500
This diff is too big to show here.
generated-docs/html/Data.MediaType.Common.html−1370
This diff is too big to show here.
generated-docs/html/Data.MediaType.html−1360
This diff is too big to show here.
generated-docs/html/Data.Monoid.Additive.html−1360
This diff is too big to show here.
generated-docs/html/Data.Monoid.Alternate.html−1361
This diff is too big to show here.
generated-docs/html/Data.Monoid.Conj.html−1360
This diff is too big to show here.
generated-docs/html/Data.Monoid.Disj.html−1360
This diff is too big to show here.
generated-docs/html/Data.Monoid.Dual.html−1360
This diff is too big to show here.
generated-docs/html/Data.Monoid.Endo.html−1362
This diff is too big to show here.
generated-docs/html/Data.Monoid.Generic.html−1357
This diff is too big to show here.
generated-docs/html/Data.Monoid.Multiplicative.html−1360
This diff is too big to show here.
generated-docs/html/Data.Monoid.html−1411
This diff is too big to show here.
generated-docs/html/Data.NaturalTransformation.html−1367
This diff is too big to show here.
generated-docs/html/Data.Newtype.html−1462
This diff is too big to show here.
generated-docs/html/Data.NonEmpty.html−1411
This diff is too big to show here.
generated-docs/html/Data.Nullable.html−1384
This diff is too big to show here.
generated-docs/html/Data.Number.Approximate.html−1401
This diff is too big to show here.
generated-docs/html/Data.Number.Format.html−1392
This diff is too big to show here.
generated-docs/html/Data.Number.html−1560
This diff is too big to show here.
generated-docs/html/Data.Op.html−1357
This diff is too big to show here.
generated-docs/html/Data.Ord.Down.html−1359
This diff is too big to show here.
generated-docs/html/Data.Ord.Generic.html−1357
This diff is too big to show here.
generated-docs/html/Data.Ord.Max.html−1361
This diff is too big to show here.
generated-docs/html/Data.Ord.Min.html−1361
This diff is too big to show here.
generated-docs/html/Data.Ord.html−1403
This diff is too big to show here.
generated-docs/html/Data.Ordering.html−1363
This diff is too big to show here.
generated-docs/html/Data.Posix.Signal.html−1361
This diff is too big to show here.
generated-docs/html/Data.Posix.html−1359
This diff is too big to show here.
generated-docs/html/Data.Predicate.html−1357
This diff is too big to show here.
generated-docs/html/Data.Profunctor.Choice.html−1393
This diff is too big to show here.
generated-docs/html/Data.Profunctor.Closed.html−1357
This diff is too big to show here.
generated-docs/html/Data.Profunctor.Cochoice.html−1357
This diff is too big to show here.
generated-docs/html/Data.Profunctor.Costrong.html−1357
This diff is too big to show here.
generated-docs/html/Data.Profunctor.Join.html−1358
This diff is too big to show here.
generated-docs/html/Data.Profunctor.Split.html−1356
This diff is too big to show here.
generated-docs/html/Data.Profunctor.Star.html−1358
This diff is too big to show here.
generated-docs/html/Data.Profunctor.Strong.html−1391
This diff is too big to show here.
generated-docs/html/Data.Profunctor.html−1372
This diff is too big to show here.
generated-docs/html/Data.Reflectable.html−1377
This diff is too big to show here.
generated-docs/html/Data.Ring.Generic.html−1357
This diff is too big to show here.
generated-docs/html/Data.Ring.html−1395
This diff is too big to show here.
generated-docs/html/Data.Semigroup.First.html−1359
This diff is too big to show here.
generated-docs/html/Data.Semigroup.Foldable.html−1396
This diff is too big to show here.
generated-docs/html/Data.Semigroup.Generic.html−1357
This diff is too big to show here.
generated-docs/html/Data.Semigroup.Last.html−1359
This diff is too big to show here.
generated-docs/html/Data.Semigroup.Traversable.html−1382
This diff is too big to show here.
generated-docs/html/Data.Semigroup.html−1374
This diff is too big to show here.
generated-docs/html/Data.Semiring.Generic.html−1360
This diff is too big to show here.
generated-docs/html/Data.Semiring.html−1384
This diff is too big to show here.
generated-docs/html/Data.Set.NonEmpty.html−1389
This diff is too big to show here.
generated-docs/html/Data.Set.html−1393
This diff is too big to show here.
generated-docs/html/Data.Show.Generic.html−1357
This diff is too big to show here.
generated-docs/html/Data.Show.html−1363
This diff is too big to show here.
generated-docs/html/Data.String.CaseInsensitive.html−1357
This diff is too big to show here.
generated-docs/html/Data.String.CodePoints.html−1519
This diff is too big to show here.
generated-docs/html/Data.String.CodeUnits.html−1473
This diff is too big to show here.
generated-docs/html/Data.String.Common.html−1391
This diff is too big to show here.
generated-docs/html/Data.String.Gen.html−1365
This diff is too big to show here.
generated-docs/html/Data.String.NonEmpty.CaseInsensitive.html−1357
This diff is too big to show here.
generated-docs/html/Data.String.NonEmpty.CodePoints.html−1356
This diff is too big to show here.
generated-docs/html/Data.String.NonEmpty.CodeUnits.html−1458
This diff is too big to show here.
generated-docs/html/Data.String.NonEmpty.Internal.html−1453
This diff is too big to show here.
generated-docs/html/Data.String.NonEmpty.html−1453
This diff is too big to show here.
generated-docs/html/Data.String.Pattern.html−1363
This diff is too big to show here.
generated-docs/html/Data.String.Regex.Flags.html−1364
This diff is too big to show here.
generated-docs/html/Data.String.Regex.Unsafe.html−1358
This diff is too big to show here.
generated-docs/html/Data.String.Regex.html−1383
This diff is too big to show here.
generated-docs/html/Data.String.Unsafe.html−1361
This diff is too big to show here.
generated-docs/html/Data.String.html−1556
This diff is too big to show here.
generated-docs/html/Data.Symbol.html−1357
This diff is too big to show here.
generated-docs/html/Data.Time.Component.Gen.html−1360
This diff is too big to show here.
generated-docs/html/Data.Time.Component.html−1377
This diff is too big to show here.
generated-docs/html/Data.Time.Duration.Gen.html−1361
This diff is too big to show here.
generated-docs/html/Data.Time.Duration.html−1365
This diff is too big to show here.
generated-docs/html/Data.Time.Gen.html−1361
This diff is too big to show here.
generated-docs/html/Data.Time.html−1393
This diff is too big to show here.
generated-docs/html/Data.Traversable.Accum.Internal.html−1356
This diff is too big to show here.
generated-docs/html/Data.Traversable.Accum.html−1356
This diff is too big to show here.
generated-docs/html/Data.Traversable.html−1511
This diff is too big to show here.
generated-docs/html/Data.TraversableWithIndex.html−1397
This diff is too big to show here.
generated-docs/html/Data.Tuple.Nested.html−1446
This diff is too big to show here.
generated-docs/html/Data.Tuple.html−1386
This diff is too big to show here.
generated-docs/html/Data.Unfoldable.html−1436
This diff is too big to show here.
generated-docs/html/Data.Unfoldable1.html−1403
This diff is too big to show here.
generated-docs/html/Data.Unit.html−1363
This diff is too big to show here.
generated-docs/html/Data.Variant.Internal.html−1361
This diff is too big to show here.
generated-docs/html/Data.Variant.html−1431
This diff is too big to show here.
generated-docs/html/Data.Void.html−1376
This diff is too big to show here.
generated-docs/html/Data.Witherable.html−1422
This diff is too big to show here.
generated-docs/html/Data.Yoneda.html−1363
This diff is too big to show here.
generated-docs/html/Effect.AVar.html−1378
This diff is too big to show here.
generated-docs/html/Effect.Aff.AVar.html−1376
This diff is too big to show here.
generated-docs/html/Effect.Aff.Class.html−1356
This diff is too big to show here.
generated-docs/html/Effect.Aff.Compat.html−1379
This diff is too big to show here.
generated-docs/html/Effect.Aff.html−1425
This diff is too big to show here.
generated-docs/html/Effect.Class.Console.html−1356
This diff is too big to show here.
generated-docs/html/Effect.Class.html−1361
This diff is too big to show here.
generated-docs/html/Effect.Console.html−1381
This diff is too big to show here.
generated-docs/html/Effect.Exception.Unsafe.html−1359
This diff is too big to show here.
generated-docs/html/Effect.Exception.html−1389
This diff is too big to show here.
generated-docs/html/Effect.Now.html−1363
This diff is too big to show here.
generated-docs/html/Effect.Ref.html−1386
This diff is too big to show here.
generated-docs/html/Effect.Timer.html−1371
This diff is too big to show here.
generated-docs/html/Effect.Uncurried.html−1455
This diff is too big to show here.
generated-docs/html/Effect.Unsafe.html−1358
This diff is too big to show here.
generated-docs/html/Effect.html−1380
This diff is too big to show here.
generated-docs/html/FRP.Behavior.Keyboard.html−1358
This diff is too big to show here.
generated-docs/html/FRP.Behavior.Mouse.html−1358
This diff is too big to show here.
generated-docs/html/FRP.Behavior.Time.html−1358
This diff is too big to show here.
generated-docs/html/FRP.Behavior.html−1418
This diff is too big to show here.
generated-docs/html/FRP.Event.AnimationFrame.html−1357
This diff is too big to show here.
generated-docs/html/FRP.Event.Class.html−1414
This diff is too big to show here.
generated-docs/html/FRP.Event.Keyboard.html−1361
This diff is too big to show here.
generated-docs/html/FRP.Event.Mouse.html−1363
This diff is too big to show here.
generated-docs/html/FRP.Event.Time.html−1361
This diff is too big to show here.
generated-docs/html/FRP.Event.VBus.html−1356
This diff is too big to show here.
generated-docs/html/FRP.Event.html−1449
This diff is too big to show here.
generated-docs/html/Foreign.Index.html−1362
This diff is too big to show here.
generated-docs/html/Foreign.Keys.html−1359
This diff is too big to show here.
generated-docs/html/Foreign.Object.Gen.html−1357
This diff is too big to show here.
generated-docs/html/Foreign.Object.ST.Unsafe.html−1358
This diff is too big to show here.
generated-docs/html/Foreign.Object.ST.html−1369
This diff is too big to show here.
generated-docs/html/Foreign.Object.Unsafe.html−1358
This diff is too big to show here.
generated-docs/html/Foreign.Object.html−1410
This diff is too big to show here.
generated-docs/html/Foreign.html−1404
This diff is too big to show here.
generated-docs/html/Heterogeneous.Folding.html−1356
This diff is too big to show here.
generated-docs/html/Heterogeneous.Mapping.html−1356
This diff is too big to show here.
generated-docs/html/Node.Buffer.Class.html−1389
This diff is too big to show here.
generated-docs/html/Node.Buffer.Constants.html−1356
This diff is too big to show here.
generated-docs/html/Node.Buffer.Immutable.html−1374
This diff is too big to show here.
generated-docs/html/Node.Buffer.ST.html−1368
This diff is too big to show here.
generated-docs/html/Node.Buffer.Types.html−1360
This diff is too big to show here.
generated-docs/html/Node.Buffer.html−1371
This diff is too big to show here.
generated-docs/html/Node.Encoding.html−1358
This diff is too big to show here.
generated-docs/html/Node.EventEmitter.UtilTypes.html−1356
This diff is too big to show here.
generated-docs/html/Node.EventEmitter.html−1519
This diff is too big to show here.
generated-docs/html/Node.FS.Aff.html−1394
This diff is too big to show here.
generated-docs/html/Node.FS.Async.html−1398
This diff is too big to show here.
generated-docs/html/Node.FS.Constants.html−1369
This diff is too big to show here.
generated-docs/html/Node.FS.Perms.html−1392
This diff is too big to show here.
generated-docs/html/Node.FS.Stats.html−1371
This diff is too big to show here.
generated-docs/html/Node.FS.Stream.html−1404
This diff is too big to show here.
generated-docs/html/Node.FS.Sync.html−1400
This diff is too big to show here.
generated-docs/html/Node.FS.html−1361
This diff is too big to show here.
generated-docs/html/Node.Path.html−1374
This diff is too big to show here.
generated-docs/html/Node.Platform.html−1362
This diff is too big to show here.
generated-docs/html/Node.Process.html−1576
This diff is too big to show here.
generated-docs/html/Node.Stream.Aff.html−1451
This diff is too big to show here.
generated-docs/html/Node.Stream.html−1415
This diff is too big to show here.
generated-docs/html/Node.Symbol.html−1356
This diff is too big to show here.
generated-docs/html/Partial.Unsafe.html−1360
This diff is too big to show here.
generated-docs/html/Partial.html−1359
This diff is too big to show here.
generated-docs/html/Performance.Minibench.html−1376
This diff is too big to show here.
generated-docs/html/Pipes.Core.html−1364
This diff is too big to show here.
generated-docs/html/Pipes.Internal.html−1356
This diff is too big to show here.
generated-docs/html/Pipes.ListT.html−1356
This diff is too big to show here.
generated-docs/html/Pipes.Prelude.html−1399
This diff is too big to show here.
generated-docs/html/Pipes.html−1359
This diff is too big to show here.
generated-docs/html/Prelude.html−1880
This diff is too big to show here.
generated-docs/html/Prim.Boolean.html−1359
This diff is too big to show here.
generated-docs/html/Prim.Coerce.html−1404
This diff is too big to show here.
generated-docs/html/Prim.Int.html−1362
This diff is too big to show here.
generated-docs/html/Prim.Ordering.html−1363
This diff is too big to show here.
generated-docs/html/Prim.Row.html−1365
This diff is too big to show here.
generated-docs/html/Prim.RowList.html−1364
This diff is too big to show here.
generated-docs/html/Prim.Symbol.html−1364
This diff is too big to show here.
generated-docs/html/Prim.TypeError.html−1388
This diff is too big to show here.
generated-docs/html/Prim.html−1478
This diff is too big to show here.
generated-docs/html/Record.Builder.html−1388
This diff is too big to show here.
generated-docs/html/Record.Studio.Keys.html−1356
This diff is too big to show here.
generated-docs/html/Record.Studio.Map.html−1363
This diff is too big to show here.
generated-docs/html/Record.Studio.MapKind.html−1363
This diff is too big to show here.
generated-docs/html/Record.Studio.MapUniform.html−1356
This diff is too big to show here.
generated-docs/html/Record.Studio.Merge.html−1364
This diff is too big to show here.
generated-docs/html/Record.Studio.SameKeys.html−1356
This diff is too big to show here.
generated-docs/html/Record.Studio.Sequence.html−1360
This diff is too big to show here.
generated-docs/html/Record.Studio.Shrink.html−1356
This diff is too big to show here.
generated-docs/html/Record.Studio.SingletonRecord.html−1357
This diff is too big to show here.
generated-docs/html/Record.Studio.html−1383
This diff is too big to show here.
generated-docs/html/Record.Unsafe.Union.html−1356
This diff is too big to show here.
generated-docs/html/Record.Unsafe.html−1370
This diff is too big to show here.
generated-docs/html/Record.html−1417
This diff is too big to show here.
generated-docs/html/Safe.Coerce.html−1417
This diff is too big to show here.
generated-docs/html/Spago.Generated.BuildInfo.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Assertions.String.html−1368
This diff is too big to show here.
generated-docs/html/Test.Spec.Assertions.html−1363
This diff is too big to show here.
generated-docs/html/Test.Spec.Config.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Console.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Reporter.Base.html−1358
This diff is too big to show here.
generated-docs/html/Test.Spec.Reporter.Console.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Reporter.Dot.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Reporter.Spec.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Reporter.Tap.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Reporter.TeamCity.html−1357
This diff is too big to show here.
generated-docs/html/Test.Spec.Reporter.html−1358
This diff is too big to show here.
generated-docs/html/Test.Spec.Result.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Runner.Event.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Runner.html−1362
This diff is too big to show here.
generated-docs/html/Test.Spec.Speed.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Style.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Summary.html−1356
This diff is too big to show here.
generated-docs/html/Test.Spec.Tree.html−1362
This diff is too big to show here.
generated-docs/html/Test.Spec.html−1388
This diff is too big to show here.
generated-docs/html/Type.Data.Boolean.html−1364
This diff is too big to show here.
generated-docs/html/Type.Data.Ordering.html−1367
This diff is too big to show here.
generated-docs/html/Type.Data.Symbol.html−1364
This diff is too big to show here.
generated-docs/html/Type.Equality.html−1364
This diff is too big to show here.
generated-docs/html/Type.Function.html−1364
This diff is too big to show here.
generated-docs/html/Type.Prelude.html−1390
This diff is too big to show here.
generated-docs/html/Type.Proxy.html−1393
This diff is too big to show here.
generated-docs/html/Type.Row.Homogeneous.html−1357
This diff is too big to show here.
generated-docs/html/Type.Row.html−1373
This diff is too big to show here.
generated-docs/html/Type.RowList.html−1368
This diff is too big to show here.
generated-docs/html/Uncurried.RWSE.html−1366
This diff is too big to show here.
generated-docs/html/Uncurried.RWSET.html−1370
This diff is too big to show here.
generated-docs/html/Uncurried.Reader.html−1362
This diff is too big to show here.
generated-docs/html/Uncurried.ReaderT.html−1366
This diff is too big to show here.
generated-docs/html/Uncurried.State.html−1364
This diff is too big to show here.
generated-docs/html/Uncurried.StateT.html−1368
This diff is too big to show here.
generated-docs/html/Uncurried.Writer.html−1363
This diff is too big to show here.
generated-docs/html/Uncurried.WriterT.html−1367
This diff is too big to show here.
generated-docs/html/Unsafe.Coerce.html−1372
This diff is too big to show here.
generated-docs/html/Unsafe.Reference.html−1361
This diff is too big to show here.
generated-docs/html/Web.DOM.CharacterData.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.ChildNode.html−1357
This diff is too big to show here.
generated-docs/html/Web.DOM.Comment.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.DOMTokenList.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.Document.html−1363
This diff is too big to show here.
generated-docs/html/Web.DOM.DocumentFragment.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.DocumentType.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.Element.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.HTMLCollection.html−1362
This diff is too big to show here.
generated-docs/html/Web.DOM.Internal.Types.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.MutationObserver.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.MutationRecord.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.Node.html−1395
This diff is too big to show here.
generated-docs/html/Web.DOM.NodeList.html−1360
This diff is too big to show here.
generated-docs/html/Web.DOM.NodeType.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.NonDocumentTypeChildNode.html−1358
This diff is too big to show here.
generated-docs/html/Web.DOM.NonElementParentNode.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.ParentNode.html−1363
This diff is too big to show here.
generated-docs/html/Web.DOM.ProcessingInstruction.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.ShadowRoot.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.Text.html−1356
This diff is too big to show here.
generated-docs/html/Web.DOM.html−1356
This diff is too big to show here.
generated-docs/html/Web.Event.CustomEvent.html−1359
This diff is too big to show here.
generated-docs/html/Web.Event.Event.html−1373
This diff is too big to show here.
generated-docs/html/Web.Event.EventPhase.html−1356
This diff is too big to show here.
generated-docs/html/Web.Event.EventTarget.html−1376
This diff is too big to show here.
generated-docs/html/Web.Event.Internal.Types.html−1358
This diff is too big to show here.
generated-docs/html/Web.File.Blob.html−1380
This diff is too big to show here.
generated-docs/html/Web.File.File.html−1359
This diff is too big to show here.
generated-docs/html/Web.File.FileList.html−1358
This diff is too big to show here.
generated-docs/html/Web.File.FileReader.ReadyState.html−1356
This diff is too big to show here.
generated-docs/html/Web.File.FileReader.html−1356
This diff is too big to show here.
generated-docs/html/Web.File.Url.html−1361
This diff is too big to show here.
generated-docs/html/Web.HTML.Common.html−1361
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.BeforeUnloadEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.BeforeUnloadEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.DataTransfer.DataTransferItem.html−1366
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.DataTransfer.html−1372
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.DragEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.DragEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.ErrorEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.HashChangeEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.HashChangeEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.PageTransitionEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.PageTransitionEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.PopStateEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.PopStateEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.TrackEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Event.TrackEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLAnchorElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLAreaElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLAudioElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLBRElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLBaseElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLBodyElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLButtonElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLCanvasElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLDListElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLDataElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLDataListElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLDivElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLDocument.ReadyState.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLDocument.VisibilityState.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLDocument.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLEmbedElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLFieldSetElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLFormElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLHRElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLHeadElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLHeadingElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLHtmlElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLHyperlinkElementUtils.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLIFrameElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLImageElement.CORSMode.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLImageElement.DecodingHint.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLImageElement.Laziness.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLImageElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLInputElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLKeygenElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLLIElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLLabelElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLLegendElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLLinkElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLMapElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLMediaElement.CanPlayType.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLMediaElement.NetworkState.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLMediaElement.ReadyState.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLMediaElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLMetaElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLMeterElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLModElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLOListElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLObjectElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLOptGroupElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLOptionElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLOutputElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLParagraphElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLParamElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLPreElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLProgressElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLQuoteElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLScriptElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLSelectElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLSourceElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLSpanElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLStyleElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTableCaptionElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTableCellElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTableColElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTableDataCellElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTableElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTableHeaderCellElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTableRowElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTableSectionElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTemplateElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTextAreaElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTimeElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTitleElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTrackElement.ReadyState.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLTrackElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLUListElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.HTMLVideoElement.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.History.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Location.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Navigator.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.SelectionMode.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.ValidityState.html−1356
This diff is too big to show here.
generated-docs/html/Web.HTML.Window.html−1358
This diff is too big to show here.
generated-docs/html/Web.HTML.html−1361
This diff is too big to show here.
generated-docs/html/Web.Internal.FFI.html−1356
This diff is too big to show here.
generated-docs/html/Web.Storage.Event.StorageEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.Storage.Storage.html−1388
This diff is too big to show here.
generated-docs/html/Web.UIEvent.CompositionEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.CompositionEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.FocusEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.FocusEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.InputEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.InputEvent.InputType.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.InputEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.KeyboardEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.KeyboardEvent.html−1370
This diff is too big to show here.
generated-docs/html/Web.UIEvent.MouseEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.MouseEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.UIEvent.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.WheelEvent.EventTypes.html−1356
This diff is too big to show here.
generated-docs/html/Web.UIEvent.WheelEvent.html−1356
This diff is too big to show here.
generated-docs/html/docs-search-app.js−82
This diff is too big to show here.
generated-docs/html/index.html−1356
This diff is too big to show here.
generated-docs/html/index/declarations/0.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/1.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/10.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/11.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/12.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/13.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/14.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/15.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/16.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/17.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/18.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/19.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/2.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/20.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/21.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/22.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/23.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/24.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/25.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/26.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/27.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/28.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/29.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/3.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/30.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/31.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/32.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/33.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/34.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/35.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/36.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/37.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/38.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/39.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/4.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/40.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/42.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/43.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/44.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/45.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/46.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/47.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/48.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/49.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/5.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/6.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/7.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/8.js−2
This diff is too big to show here.
generated-docs/html/index/declarations/9.js−2
This diff is too big to show here.
generated-docs/html/index/modules.js−1
This diff is too big to show here.
generated-docs/html/index/packages.js−1
This diff is too big to show here.
generated-docs/html/index/types/1000195174.js−2
This diff is too big to show here.
generated-docs/html/index/types/1001058062.js−2
This diff is too big to show here.
generated-docs/html/index/types/1002849419.js−2
This diff is too big to show here.
generated-docs/html/index/types/1003197450.js−2
This diff is too big to show here.
generated-docs/html/index/types/1006801783.js−2
This diff is too big to show here.
generated-docs/html/index/types/1014596940.js−2
This diff is too big to show here.
generated-docs/html/index/types/1016022600.js−2
This diff is too big to show here.
generated-docs/html/index/types/1021245635.js−2
This diff is too big to show here.
generated-docs/html/index/types/1021883944.js−2
This diff is too big to show here.
generated-docs/html/index/types/1031956309.js−2
This diff is too big to show here.
generated-docs/html/index/types/1033721588.js−2
This diff is too big to show here.
generated-docs/html/index/types/1036919339.js−2
This diff is too big to show here.
generated-docs/html/index/types/1037006066.js−2
This diff is too big to show here.
generated-docs/html/index/types/1037518646.js−2
This diff is too big to show here.
generated-docs/html/index/types/1039639542.js−2
This diff is too big to show here.
generated-docs/html/index/types/1043079975.js−2
This diff is too big to show here.
generated-docs/html/index/types/104424236.js−2
This diff is too big to show here.
generated-docs/html/index/types/1046286253.js−2
This diff is too big to show here.
generated-docs/html/index/types/1046591304.js−2
This diff is too big to show here.
generated-docs/html/index/types/1047794147.js−2
This diff is too big to show here.
generated-docs/html/index/types/1052662028.js−2
This diff is too big to show here.
generated-docs/html/index/types/1055367900.js−2
This diff is too big to show here.
generated-docs/html/index/types/1056615743.js−2
This diff is too big to show here.
generated-docs/html/index/types/1057506922.js−2
This diff is too big to show here.
generated-docs/html/index/types/105984524.js−2
This diff is too big to show here.
generated-docs/html/index/types/1061217032.js−2
This diff is too big to show here.
generated-docs/html/index/types/1061280793.js−2
This diff is too big to show here.
generated-docs/html/index/types/1061348265.js−2
This diff is too big to show here.
generated-docs/html/index/types/1065054583.js−2
This diff is too big to show here.
generated-docs/html/index/types/1065381466.js−2
This diff is too big to show here.
generated-docs/html/index/types/1065660013.js−2
This diff is too big to show here.
generated-docs/html/index/types/1069326838.js−2
This diff is too big to show here.
generated-docs/html/index/types/1069331643.js−2
This diff is too big to show here.
generated-docs/html/index/types/1070217397.js−2
This diff is too big to show here.
generated-docs/html/index/types/1075682863.js−2
This diff is too big to show here.
generated-docs/html/index/types/1080512026.js−2
This diff is too big to show here.
generated-docs/html/index/types/1080636297.js−2
This diff is too big to show here.
generated-docs/html/index/types/1080722025.js−2
This diff is too big to show here.
generated-docs/html/index/types/1082625752.js−2
This diff is too big to show here.
generated-docs/html/index/types/1085253363.js−2
This diff is too big to show here.
generated-docs/html/index/types/108565110.js−2
This diff is too big to show here.
generated-docs/html/index/types/1086427884.js−2
This diff is too big to show here.
generated-docs/html/index/types/1089513135.js−2
This diff is too big to show here.
generated-docs/html/index/types/1096889489.js−2
This diff is too big to show here.
generated-docs/html/index/types/1097168003.js−2
This diff is too big to show here.
generated-docs/html/index/types/1097320645.js−2
This diff is too big to show here.
generated-docs/html/index/types/1102940599.js−2
This diff is too big to show here.
generated-docs/html/index/types/110558074.js−2
This diff is too big to show here.
generated-docs/html/index/types/1105846263.js−2
This diff is too big to show here.
generated-docs/html/index/types/1109717445.js−2
This diff is too big to show here.
generated-docs/html/index/types/111359800.js−2
This diff is too big to show here.
generated-docs/html/index/types/111374388.js−2
This diff is too big to show here.
generated-docs/html/index/types/1115853530.js−2
This diff is too big to show here.
generated-docs/html/index/types/1119710654.js−2
This diff is too big to show here.
generated-docs/html/index/types/112145049.js−2
This diff is too big to show here.
generated-docs/html/index/types/1122298076.js−2
This diff is too big to show here.
generated-docs/html/index/types/1123272490.js−2
This diff is too big to show here.
generated-docs/html/index/types/1123528992.js−2
This diff is too big to show here.
generated-docs/html/index/types/1124328259.js−2
This diff is too big to show here.
generated-docs/html/index/types/1124791180.js−2
This diff is too big to show here.
generated-docs/html/index/types/1125285739.js−2
This diff is too big to show here.
generated-docs/html/index/types/1125891169.js−2
This diff is too big to show here.
generated-docs/html/index/types/1128773526.js−2
This diff is too big to show here.
generated-docs/html/index/types/1129903344.js−2
This diff is too big to show here.
generated-docs/html/index/types/1130508774.js−2
This diff is too big to show here.
generated-docs/html/index/types/1130932319.js−2
This diff is too big to show here.
generated-docs/html/index/types/1131509264.js−2
This diff is too big to show here.
generated-docs/html/index/types/1131932138.js−2
This diff is too big to show here.
generated-docs/html/index/types/113556802.js−2
This diff is too big to show here.
generated-docs/html/index/types/1139593758.js−2
This diff is too big to show here.
generated-docs/html/index/types/1144049569.js−2
This diff is too big to show here.
generated-docs/html/index/types/114612059.js−2
This diff is too big to show here.
generated-docs/html/index/types/1150408809.js−2
This diff is too big to show here.
generated-docs/html/index/types/1151787487.js−2
This diff is too big to show here.
generated-docs/html/index/types/1151830515.js−2
This diff is too big to show here.
generated-docs/html/index/types/1152114406.js−2
This diff is too big to show here.
generated-docs/html/index/types/115535518.js−2
This diff is too big to show here.
generated-docs/html/index/types/1155661941.js−2
This diff is too big to show here.
generated-docs/html/index/types/1156074823.js−2
This diff is too big to show here.
generated-docs/html/index/types/1157794603.js−2
This diff is too big to show here.
generated-docs/html/index/types/115904697.js−2
This diff is too big to show here.
generated-docs/html/index/types/115909502.js−2
This diff is too big to show here.
generated-docs/html/index/types/1160680565.js−2
This diff is too big to show here.
generated-docs/html/index/types/1163323911.js−2
This diff is too big to show here.
generated-docs/html/index/types/1168421268.js−2
This diff is too big to show here.
generated-docs/html/index/types/1168550407.js−2
This diff is too big to show here.
generated-docs/html/index/types/1169909367.js−2
This diff is too big to show here.
generated-docs/html/index/types/1171160460.js−2
This diff is too big to show here.
generated-docs/html/index/types/117349631.js−2
This diff is too big to show here.
generated-docs/html/index/types/1173728290.js−2
This diff is too big to show here.
generated-docs/html/index/types/1174701182.js−2
This diff is too big to show here.
generated-docs/html/index/types/1175132402.js−2
This diff is too big to show here.
generated-docs/html/index/types/117820950.js−2
This diff is too big to show here.
generated-docs/html/index/types/1178322085.js−2
This diff is too big to show here.
generated-docs/html/index/types/1179623675.js−2
This diff is too big to show here.
generated-docs/html/index/types/1185573594.js−2
This diff is too big to show here.
generated-docs/html/index/types/1187924167.js−2
This diff is too big to show here.
generated-docs/html/index/types/1188308881.js−2
This diff is too big to show here.
generated-docs/html/index/types/1188646573.js−2
This diff is too big to show here.
generated-docs/html/index/types/1190345256.js−2
This diff is too big to show here.
generated-docs/html/index/types/1192595335.js−2
This diff is too big to show here.
generated-docs/html/index/types/1193054427.js−2
This diff is too big to show here.
generated-docs/html/index/types/119997303.js−2
This diff is too big to show here.
generated-docs/html/index/types/1201483944.js−2
This diff is too big to show here.
generated-docs/html/index/types/1202016606.js−2
This diff is too big to show here.
generated-docs/html/index/types/1204095770.js−2
This diff is too big to show here.
generated-docs/html/index/types/1207498890.js−2
This diff is too big to show here.
generated-docs/html/index/types/1211744452.js−2
This diff is too big to show here.
generated-docs/html/index/types/1212472593.js−2
This diff is too big to show here.
generated-docs/html/index/types/1212750442.js−2
This diff is too big to show here.
generated-docs/html/index/types/1216823517.js−2
This diff is too big to show here.
generated-docs/html/index/types/1217249734.js−2
This diff is too big to show here.
generated-docs/html/index/types/1219790818.js−2
This diff is too big to show here.
generated-docs/html/index/types/1222713552.js−2
This diff is too big to show here.
generated-docs/html/index/types/1223094262.js−2
This diff is too big to show here.
generated-docs/html/index/types/1223225914.js−2
This diff is too big to show here.
generated-docs/html/index/types/1228664763.js−2
This diff is too big to show here.
generated-docs/html/index/types/1231133784.js−2
This diff is too big to show here.
generated-docs/html/index/types/1236167165.js−2
This diff is too big to show here.
generated-docs/html/index/types/1236710073.js−2
This diff is too big to show here.
generated-docs/html/index/types/1237375144.js−2
This diff is too big to show here.
generated-docs/html/index/types/1241525131.js−2
This diff is too big to show here.
generated-docs/html/index/types/1245438528.js−2
This diff is too big to show here.
generated-docs/html/index/types/1249402822.js−2
This diff is too big to show here.
generated-docs/html/index/types/1250237620.js−2
This diff is too big to show here.
generated-docs/html/index/types/1251595176.js−2
This diff is too big to show here.
generated-docs/html/index/types/1253451861.js−2
This diff is too big to show here.
generated-docs/html/index/types/1253833545.js−2
This diff is too big to show here.
generated-docs/html/index/types/1254020427.js−2
This diff is too big to show here.
generated-docs/html/index/types/1255497969.js−2
This diff is too big to show here.
generated-docs/html/index/types/1258083830.js−2
This diff is too big to show here.
generated-docs/html/index/types/1259966935.js−2
This diff is too big to show here.
generated-docs/html/index/types/1260529709.js−2
This diff is too big to show here.
generated-docs/html/index/types/1260572365.js−2
This diff is too big to show here.
generated-docs/html/index/types/1260721004.js−2
This diff is too big to show here.
generated-docs/html/index/types/1260754365.js−2
This diff is too big to show here.
generated-docs/html/index/types/1262828201.js−2
This diff is too big to show here.
generated-docs/html/index/types/1263114265.js−2
This diff is too big to show here.
generated-docs/html/index/types/1266879368.js−2
This diff is too big to show here.
generated-docs/html/index/types/1271681093.js−2
This diff is too big to show here.
generated-docs/html/index/types/1272466186.js−2
This diff is too big to show here.
generated-docs/html/index/types/1274917006.js−2
This diff is too big to show here.
generated-docs/html/index/types/1275885301.js−2
This diff is too big to show here.
generated-docs/html/index/types/1280104695.js−2
This diff is too big to show here.
generated-docs/html/index/types/1280140041.js−2
This diff is too big to show here.
generated-docs/html/index/types/1280581810.js−2
This diff is too big to show here.
generated-docs/html/index/types/1281926042.js−2
This diff is too big to show here.
generated-docs/html/index/types/128360886.js−2
This diff is too big to show here.
generated-docs/html/index/types/1284283886.js−2
This diff is too big to show here.
generated-docs/html/index/types/1285763475.js−2
This diff is too big to show here.
generated-docs/html/index/types/1286008420.js−2
This diff is too big to show here.
generated-docs/html/index/types/1288686871.js−2
This diff is too big to show here.
generated-docs/html/index/types/1288689729.js−2
This diff is too big to show here.
generated-docs/html/index/types/1290887379.js−2
This diff is too big to show here.
generated-docs/html/index/types/1292221496.js−2
This diff is too big to show here.
generated-docs/html/index/types/1293158726.js−2
This diff is too big to show here.
generated-docs/html/index/types/1293829517.js−2
This diff is too big to show here.
generated-docs/html/index/types/1294344751.js−2
This diff is too big to show here.
generated-docs/html/index/types/1295693358.js−2
This diff is too big to show here.
generated-docs/html/index/types/1297205572.js−2
This diff is too big to show here.
generated-docs/html/index/types/1299147159.js−2
This diff is too big to show here.
generated-docs/html/index/types/1305134221.js−2
This diff is too big to show here.
generated-docs/html/index/types/1306269729.js−2
This diff is too big to show here.
generated-docs/html/index/types/130736738.js−2
This diff is too big to show here.
generated-docs/html/index/types/130757957.js−2
This diff is too big to show here.
generated-docs/html/index/types/1308488618.js−2
This diff is too big to show here.
generated-docs/html/index/types/1308850778.js−2
This diff is too big to show here.
generated-docs/html/index/types/1309591566.js−2
This diff is too big to show here.
generated-docs/html/index/types/1315942498.js−2
This diff is too big to show here.
generated-docs/html/index/types/1320066153.js−2
This diff is too big to show here.
generated-docs/html/index/types/1320247824.js−2
This diff is too big to show here.
generated-docs/html/index/types/1320865543.js−2
This diff is too big to show here.
generated-docs/html/index/types/1321799244.js−2
This diff is too big to show here.
generated-docs/html/index/types/1322404674.js−2
This diff is too big to show here.
generated-docs/html/index/types/1322957737.js−2
This diff is too big to show here.
generated-docs/html/index/types/1326416849.js−2
This diff is too big to show here.
generated-docs/html/index/types/1327022279.js−2
This diff is too big to show here.
generated-docs/html/index/types/1334710828.js−2
This diff is too big to show here.
generated-docs/html/index/types/1334786030.js−2
This diff is too big to show here.
generated-docs/html/index/types/1335316258.js−2
This diff is too big to show here.
generated-docs/html/index/types/1341395327.js−2
This diff is too big to show here.
generated-docs/html/index/types/1349724005.js−2
This diff is too big to show here.
generated-docs/html/index/types/1350665781.js−2
This diff is too big to show here.
generated-docs/html/index/types/1351353240.js−2
This diff is too big to show here.
generated-docs/html/index/types/1355079742.js−2
This diff is too big to show here.
generated-docs/html/index/types/1364514710.js−2
This diff is too big to show here.
generated-docs/html/index/types/137232926.js−2
This diff is too big to show here.
generated-docs/html/index/types/1376473364.js−2
This diff is too big to show here.
generated-docs/html/index/types/137746459.js−2
This diff is too big to show here.
generated-docs/html/index/types/1382540634.js−2
This diff is too big to show here.
generated-docs/html/index/types/1384437672.js−2
This diff is too big to show here.
generated-docs/html/index/types/1386536029.js−2
This diff is too big to show here.
generated-docs/html/index/types/1386891401.js−2
This diff is too big to show here.
generated-docs/html/index/types/1390097576.js−2
This diff is too big to show here.
generated-docs/html/index/types/1391573173.js−2
This diff is too big to show here.
generated-docs/html/index/types/1391824940.js−2
This diff is too big to show here.
generated-docs/html/index/types/1393376256.js−2
This diff is too big to show here.
generated-docs/html/index/types/1395107578.js−2
This diff is too big to show here.
generated-docs/html/index/types/1396204567.js−2
This diff is too big to show here.
generated-docs/html/index/types/1396911320.js−2
This diff is too big to show here.
generated-docs/html/index/types/1397623387.js−2
This diff is too big to show here.
generated-docs/html/index/types/1399034089.js−2
This diff is too big to show here.
generated-docs/html/index/types/1399614293.js−2
This diff is too big to show here.
generated-docs/html/index/types/1401905320.js−2
This diff is too big to show here.
generated-docs/html/index/types/1403292.js−2
This diff is too big to show here.
generated-docs/html/index/types/1403416052.js−2
This diff is too big to show here.
generated-docs/html/index/types/1405665374.js−2
This diff is too big to show here.
generated-docs/html/index/types/1408186571.js−2
This diff is too big to show here.
generated-docs/html/index/types/1411009752.js−2
This diff is too big to show here.
generated-docs/html/index/types/1411871618.js−2
This diff is too big to show here.
generated-docs/html/index/types/1412646292.js−2
This diff is too big to show here.
generated-docs/html/index/types/1413018167.js−2
This diff is too big to show here.
generated-docs/html/index/types/1413366605.js−2
This diff is too big to show here.
generated-docs/html/index/types/1413525578.js−2
This diff is too big to show here.
generated-docs/html/index/types/141479271.js−2
This diff is too big to show here.
generated-docs/html/index/types/1419825924.js−2
This diff is too big to show here.
generated-docs/html/index/types/1420702525.js−2
This diff is too big to show here.
generated-docs/html/index/types/1421170303.js−2
This diff is too big to show here.
generated-docs/html/index/types/1421401425.js−2
This diff is too big to show here.
generated-docs/html/index/types/142253890.js−2
This diff is too big to show here.
generated-docs/html/index/types/142394681.js−2
This diff is too big to show here.
generated-docs/html/index/types/1424433237.js−2
This diff is too big to show here.
generated-docs/html/index/types/1426321076.js−2
This diff is too big to show here.
generated-docs/html/index/types/1428767931.js−2
This diff is too big to show here.
generated-docs/html/index/types/1430937561.js−2
This diff is too big to show here.
generated-docs/html/index/types/1431639470.js−2
This diff is too big to show here.
generated-docs/html/index/types/1436977797.js−2
This diff is too big to show here.
generated-docs/html/index/types/1438172374.js−2
This diff is too big to show here.
generated-docs/html/index/types/1439522981.js−2
This diff is too big to show here.
generated-docs/html/index/types/1440485536.js−2
This diff is too big to show here.
generated-docs/html/index/types/1442891788.js−2
This diff is too big to show here.
generated-docs/html/index/types/1443038313.js−2
This diff is too big to show here.
generated-docs/html/index/types/1445916327.js−2
This diff is too big to show here.
generated-docs/html/index/types/1447752582.js−2
This diff is too big to show here.
generated-docs/html/index/types/1447940892.js−2
This diff is too big to show here.
generated-docs/html/index/types/1448010884.js−2
This diff is too big to show here.
generated-docs/html/index/types/1448820838.js−2
This diff is too big to show here.
generated-docs/html/index/types/1449148872.js−2
This diff is too big to show here.
generated-docs/html/index/types/1450311321.js−2
This diff is too big to show here.
generated-docs/html/index/types/1450533932.js−2
This diff is too big to show here.
generated-docs/html/index/types/1451144167.js−2
This diff is too big to show here.
generated-docs/html/index/types/1452406503.js−2
This diff is too big to show here.
generated-docs/html/index/types/1453001426.js−2
This diff is too big to show here.
generated-docs/html/index/types/1457644257.js−2
This diff is too big to show here.
generated-docs/html/index/types/1458326753.js−2
This diff is too big to show here.
generated-docs/html/index/types/1458493607.js−2
This diff is too big to show here.
generated-docs/html/index/types/1458579926.js−2
This diff is too big to show here.
generated-docs/html/index/types/1459487286.js−2
This diff is too big to show here.
generated-docs/html/index/types/1461550072.js−2
This diff is too big to show here.
generated-docs/html/index/types/1462724096.js−2
This diff is too big to show here.
generated-docs/html/index/types/1464253075.js−2
This diff is too big to show here.
generated-docs/html/index/types/1468023855.js−2
This diff is too big to show here.
generated-docs/html/index/types/1468194598.js−2
This diff is too big to show here.
generated-docs/html/index/types/1475567084.js−2
This diff is too big to show here.
generated-docs/html/index/types/147617716.js−2
This diff is too big to show here.
generated-docs/html/index/types/1476977150.js−2
This diff is too big to show here.
generated-docs/html/index/types/1477867367.js−2
This diff is too big to show here.
generated-docs/html/index/types/1477872172.js−2
This diff is too big to show here.
generated-docs/html/index/types/1478173064.js−2
This diff is too big to show here.
generated-docs/html/index/types/147877009.js−2
This diff is too big to show here.
generated-docs/html/index/types/1482199618.js−2
This diff is too big to show here.
generated-docs/html/index/types/1482830123.js−2
This diff is too big to show here.
generated-docs/html/index/types/1484041189.js−2
This diff is too big to show here.
generated-docs/html/index/types/1486971921.js−2
This diff is too big to show here.
generated-docs/html/index/types/1487148257.js−2
This diff is too big to show here.
generated-docs/html/index/types/148957885.js−2
This diff is too big to show here.
generated-docs/html/index/types/1490274479.js−2
This diff is too big to show here.
generated-docs/html/index/types/1491871724.js−2
This diff is too big to show here.
generated-docs/html/index/types/1495235897.js−2
This diff is too big to show here.
generated-docs/html/index/types/1499191229.js−2
This diff is too big to show here.
generated-docs/html/index/types/1499962955.js−2
This diff is too big to show here.
generated-docs/html/index/types/1501612007.js−2
This diff is too big to show here.
generated-docs/html/index/types/1502783234.js−2
This diff is too big to show here.
generated-docs/html/index/types/1507055285.js−2
This diff is too big to show here.
generated-docs/html/index/types/1508564772.js−2
This diff is too big to show here.
generated-docs/html/index/types/1509145376.js−2
This diff is too big to show here.
generated-docs/html/index/types/1511484407.js−2
This diff is too big to show here.
generated-docs/html/index/types/1511769589.js−2
This diff is too big to show here.
generated-docs/html/index/types/1514030796.js−2
This diff is too big to show here.
generated-docs/html/index/types/1518312749.js−2
This diff is too big to show here.
generated-docs/html/index/types/1518351195.js−2
This diff is too big to show here.
generated-docs/html/index/types/1518918179.js−2
This diff is too big to show here.
generated-docs/html/index/types/1518922984.js−2
This diff is too big to show here.
generated-docs/html/index/types/1519068136.js−2
This diff is too big to show here.
generated-docs/html/index/types/1521006850.js−2
This diff is too big to show here.
generated-docs/html/index/types/1522930354.js−2
This diff is too big to show here.
generated-docs/html/index/types/1523535784.js−2
This diff is too big to show here.
generated-docs/html/index/types/1526269599.js−2
This diff is too big to show here.
generated-docs/html/index/types/153082225.js−2
This diff is too big to show here.
generated-docs/html/index/types/1533931965.js−2
This diff is too big to show here.
generated-docs/html/index/types/1535325779.js−2
This diff is too big to show here.
generated-docs/html/index/types/1537803578.js−2
This diff is too big to show here.
generated-docs/html/index/types/15433686.js−2
This diff is too big to show here.
generated-docs/html/index/types/1545381641.js−2
This diff is too big to show here.
generated-docs/html/index/types/1547038510.js−2
This diff is too big to show here.
generated-docs/html/index/types/1548569964.js−2
This diff is too big to show here.
generated-docs/html/index/types/1549651637.js−2
This diff is too big to show here.
generated-docs/html/index/types/1549781513.js−2
This diff is too big to show here.
generated-docs/html/index/types/1550484144.js−2
This diff is too big to show here.
generated-docs/html/index/types/1552324679.js−2
This diff is too big to show here.
generated-docs/html/index/types/1554874672.js−2
This diff is too big to show here.
generated-docs/html/index/types/1556787908.js−2
This diff is too big to show here.
generated-docs/html/index/types/1557556466.js−2
This diff is too big to show here.
generated-docs/html/index/types/1558897881.js−2
This diff is too big to show here.
generated-docs/html/index/types/1560917264.js−2
This diff is too big to show here.
generated-docs/html/index/types/1563809243.js−2
This diff is too big to show here.
generated-docs/html/index/types/156414275.js−2
This diff is too big to show here.
generated-docs/html/index/types/1566546969.js−2
This diff is too big to show here.
generated-docs/html/index/types/1572664192.js−2
This diff is too big to show here.
generated-docs/html/index/types/1581780078.js−2
This diff is too big to show here.
generated-docs/html/index/types/1587274295.js−2
This diff is too big to show here.
generated-docs/html/index/types/1587454965.js−2
This diff is too big to show here.
generated-docs/html/index/types/1595638263.js−2
This diff is too big to show here.
generated-docs/html/index/types/1598188345.js−2
This diff is too big to show here.
generated-docs/html/index/types/1599934465.js−2
This diff is too big to show here.
generated-docs/html/index/types/1600922613.js−2
This diff is too big to show here.
generated-docs/html/index/types/1605779393.js−2
This diff is too big to show here.
generated-docs/html/index/types/160646525.js−2
This diff is too big to show here.
generated-docs/html/index/types/1609296435.js−2
This diff is too big to show here.
generated-docs/html/index/types/1609734070.js−2
This diff is too big to show here.
generated-docs/html/index/types/1612138285.js−2
This diff is too big to show here.
generated-docs/html/index/types/1615669865.js−2
This diff is too big to show here.
generated-docs/html/index/types/1617051662.js−2
This diff is too big to show here.
generated-docs/html/index/types/1621017927.js−2
This diff is too big to show here.
generated-docs/html/index/types/1621926005.js−2
This diff is too big to show here.
generated-docs/html/index/types/1621967755.js−2
This diff is too big to show here.
generated-docs/html/index/types/1623309366.js−2
This diff is too big to show here.
generated-docs/html/index/types/1623528563.js−2
This diff is too big to show here.
generated-docs/html/index/types/1625516312.js−2
This diff is too big to show here.
generated-docs/html/index/types/1626102118.js−2
This diff is too big to show here.
generated-docs/html/index/types/1629515810.js−2
This diff is too big to show here.
generated-docs/html/index/types/163185930.js−2
This diff is too big to show here.
generated-docs/html/index/types/1637918160.js−2
This diff is too big to show here.
generated-docs/html/index/types/1639860180.js−2
This diff is too big to show here.
generated-docs/html/index/types/1641769836.js−2
This diff is too big to show here.
generated-docs/html/index/types/1643113515.js−2
This diff is too big to show here.
generated-docs/html/index/types/1643497075.js−2
This diff is too big to show here.
generated-docs/html/index/types/1645334343.js−2
This diff is too big to show here.
generated-docs/html/index/types/1647047437.js−2
This diff is too big to show here.
generated-docs/html/index/types/1647652867.js−2
This diff is too big to show here.
generated-docs/html/index/types/1647657672.js−2
This diff is too big to show here.
generated-docs/html/index/types/164859796.js−2
This diff is too big to show here.
generated-docs/html/index/types/1649597852.js−2
This diff is too big to show here.
generated-docs/html/index/types/1654652824.js−2
This diff is too big to show here.
generated-docs/html/index/types/1654694113.js−2
This diff is too big to show here.
generated-docs/html/index/types/1654823490.js−2
This diff is too big to show here.
generated-docs/html/index/types/1655157243.js−2
This diff is too big to show here.
generated-docs/html/index/types/1657951117.js−2
This diff is too big to show here.
generated-docs/html/index/types/1657976320.js−2
This diff is too big to show here.
generated-docs/html/index/types/1661608228.js−2
This diff is too big to show here.
generated-docs/html/index/types/1661696224.js−2
This diff is too big to show here.
generated-docs/html/index/types/1662515818.js−2
This diff is too big to show here.
generated-docs/html/index/types/1664699148.js−2
This diff is too big to show here.
generated-docs/html/index/types/1664708103.js−2
This diff is too big to show here.
generated-docs/html/index/types/1664740268.js−2
This diff is too big to show here.
generated-docs/html/index/types/1665574462.js−2
This diff is too big to show here.
generated-docs/html/index/types/1665746338.js−2
This diff is too big to show here.
generated-docs/html/index/types/1666035434.js−2
This diff is too big to show here.
generated-docs/html/index/types/1670150074.js−2
This diff is too big to show here.
generated-docs/html/index/types/1671792825.js−2
This diff is too big to show here.
generated-docs/html/index/types/1674779483.js−2
This diff is too big to show here.
generated-docs/html/index/types/1679017246.js−2
This diff is too big to show here.
generated-docs/html/index/types/1680144593.js−2
This diff is too big to show here.
generated-docs/html/index/types/1681290411.js−2
This diff is too big to show here.
generated-docs/html/index/types/1682163731.js−2
This diff is too big to show here.
generated-docs/html/index/types/1684027405.js−2
This diff is too big to show here.
generated-docs/html/index/types/1687125846.js−2
This diff is too big to show here.
generated-docs/html/index/types/1687468113.js−2
This diff is too big to show here.
generated-docs/html/index/types/1689475071.js−2
This diff is too big to show here.
generated-docs/html/index/types/1690765308.js−2
This diff is too big to show here.
generated-docs/html/index/types/1691714342.js−2
This diff is too big to show here.
generated-docs/html/index/types/1697000925.js−2
This diff is too big to show here.
generated-docs/html/index/types/1697295724.js−2
This diff is too big to show here.
generated-docs/html/index/types/1699274486.js−2
This diff is too big to show here.
generated-docs/html/index/types/1699566752.js−2
This diff is too big to show here.
generated-docs/html/index/types/17.js−2
This diff is too big to show here.
generated-docs/html/index/types/1703396683.js−2
This diff is too big to show here.
generated-docs/html/index/types/1704472095.js−2
This diff is too big to show here.
generated-docs/html/index/types/1705850683.js−2
This diff is too big to show here.
generated-docs/html/index/types/1706146489.js−2
This diff is too big to show here.
generated-docs/html/index/types/1709194823.js−2
This diff is too big to show here.
generated-docs/html/index/types/1709977692.js−2
This diff is too big to show here.
generated-docs/html/index/types/1710586733.js−2
This diff is too big to show here.
generated-docs/html/index/types/1713057515.js−2
This diff is too big to show here.
generated-docs/html/index/types/171688729.js−2
This diff is too big to show here.
generated-docs/html/index/types/1717303077.js−2
This diff is too big to show here.
generated-docs/html/index/types/1718670499.js−2
This diff is too big to show here.
generated-docs/html/index/types/1719504761.js−2
This diff is too big to show here.
generated-docs/html/index/types/1719691984.js−2
This diff is too big to show here.
generated-docs/html/index/types/172049213.js−2
This diff is too big to show here.
generated-docs/html/index/types/1727844758.js−2
This diff is too big to show here.
generated-docs/html/index/types/1728399445.js−2
This diff is too big to show here.
generated-docs/html/index/types/1729446789.js−2
This diff is too big to show here.
generated-docs/html/index/types/1731517329.js−2
This diff is too big to show here.
generated-docs/html/index/types/1735516925.js−2
This diff is too big to show here.
generated-docs/html/index/types/173604760.js−2
This diff is too big to show here.
generated-docs/html/index/types/1736122355.js−2
This diff is too big to show here.
generated-docs/html/index/types/1737267797.js−2
This diff is too big to show here.
generated-docs/html/index/types/174112103.js−2
This diff is too big to show here.
generated-docs/html/index/types/1743812880.js−2
This diff is too big to show here.
generated-docs/html/index/types/1748706603.js−2
This diff is too big to show here.
generated-docs/html/index/types/17492258.js−2
This diff is too big to show here.
generated-docs/html/index/types/1755735855.js−2
This diff is too big to show here.
generated-docs/html/index/types/1757483231.js−2
This diff is too big to show here.
generated-docs/html/index/types/1761263920.js−2
This diff is too big to show here.
generated-docs/html/index/types/1762843196.js−2
This diff is too big to show here.
generated-docs/html/index/types/1764204098.js−2
This diff is too big to show here.
generated-docs/html/index/types/1764787209.js−2
This diff is too big to show here.
generated-docs/html/index/types/176481558.js−2
This diff is too big to show here.
generated-docs/html/index/types/1766584007.js−2
This diff is too big to show here.
generated-docs/html/index/types/1766843657.js−2
This diff is too big to show here.
generated-docs/html/index/types/1766944682.js−2
This diff is too big to show here.
generated-docs/html/index/types/1768292959.js−2
This diff is too big to show here.
generated-docs/html/index/types/1768594868.js−2
This diff is too big to show here.
generated-docs/html/index/types/1769136967.js−2
This diff is too big to show here.
generated-docs/html/index/types/1769287617.js−2
This diff is too big to show here.
generated-docs/html/index/types/1772064894.js−2
This diff is too big to show here.
generated-docs/html/index/types/1772196234.js−2
This diff is too big to show here.
generated-docs/html/index/types/1773450487.js−2
This diff is too big to show here.
generated-docs/html/index/types/1774335465.js−2
This diff is too big to show here.
generated-docs/html/index/types/1777757057.js−2
This diff is too big to show here.
generated-docs/html/index/types/1779176748.js−2
This diff is too big to show here.
generated-docs/html/index/types/1783156737.js−2
This diff is too big to show here.
generated-docs/html/index/types/1789831624.js−2
This diff is too big to show here.
generated-docs/html/index/types/1791569994.js−2
This diff is too big to show here.
generated-docs/html/index/types/1791598537.js−2
This diff is too big to show here.
generated-docs/html/index/types/1791692073.js−2
This diff is too big to show here.
generated-docs/html/index/types/1792305912.js−2
This diff is too big to show here.
generated-docs/html/index/types/1797684706.js−2
This diff is too big to show here.
generated-docs/html/index/types/179996906.js−2
This diff is too big to show here.
generated-docs/html/index/types/18040781.js−2
This diff is too big to show here.
generated-docs/html/index/types/1805026563.js−2
This diff is too big to show here.
generated-docs/html/index/types/1806580973.js−2
This diff is too big to show here.
generated-docs/html/index/types/1807853858.js−2
This diff is too big to show here.
generated-docs/html/index/types/1810700138.js−2
This diff is too big to show here.
generated-docs/html/index/types/1811453522.js−2
This diff is too big to show here.
generated-docs/html/index/types/181404476.js−2
This diff is too big to show here.
generated-docs/html/index/types/1815355696.js−2
This diff is too big to show here.
generated-docs/html/index/types/1815501561.js−2
This diff is too big to show here.
generated-docs/html/index/types/1815572189.js−2
This diff is too big to show here.
generated-docs/html/index/types/1816149884.js−2
This diff is too big to show here.
generated-docs/html/index/types/1818409268.js−2
This diff is too big to show here.
generated-docs/html/index/types/1820913242.js−2
This diff is too big to show here.
generated-docs/html/index/types/182559690.js−2
This diff is too big to show here.
generated-docs/html/index/types/1826175293.js−2
This diff is too big to show here.
generated-docs/html/index/types/1829450827.js−2
This diff is too big to show here.
generated-docs/html/index/types/1829853192.js−2
This diff is too big to show here.
generated-docs/html/index/types/1829857997.js−2
This diff is too big to show here.
generated-docs/html/index/types/1829861619.js−2
This diff is too big to show here.
generated-docs/html/index/types/1830463427.js−2
This diff is too big to show here.
generated-docs/html/index/types/1831512017.js−2
This diff is too big to show here.
generated-docs/html/index/types/1832784362.js−2
This diff is too big to show here.
generated-docs/html/index/types/1833403817.js−2
This diff is too big to show here.
generated-docs/html/index/types/1834475602.js−2
This diff is too big to show here.
generated-docs/html/index/types/1834699258.js−2
This diff is too big to show here.
generated-docs/html/index/types/1835101213.js−2
This diff is too big to show here.
generated-docs/html/index/types/1840624377.js−2
This diff is too big to show here.
generated-docs/html/index/types/1843007469.js−2
This diff is too big to show here.
generated-docs/html/index/types/1844327065.js−2
This diff is too big to show here.
generated-docs/html/index/types/1845459606.js−2
This diff is too big to show here.
generated-docs/html/index/types/1847661783.js−2
This diff is too big to show here.
generated-docs/html/index/types/1851188221.js−2
This diff is too big to show here.
generated-docs/html/index/types/1852532888.js−2
This diff is too big to show here.
generated-docs/html/index/types/1852912485.js−2
This diff is too big to show here.
generated-docs/html/index/types/1854242384.js−2
This diff is too big to show here.
generated-docs/html/index/types/1856224406.js−2
This diff is too big to show here.
generated-docs/html/index/types/1857287686.js−2
This diff is too big to show here.
generated-docs/html/index/types/1857514774.js−2
This diff is too big to show here.
generated-docs/html/index/types/1857597819.js−2
This diff is too big to show here.
generated-docs/html/index/types/1861221608.js−2
This diff is too big to show here.
generated-docs/html/index/types/1862661575.js−2
This diff is too big to show here.
generated-docs/html/index/types/1863700825.js−2
This diff is too big to show here.
generated-docs/html/index/types/186436575.js−2
This diff is too big to show here.
generated-docs/html/index/types/1867548822.js−2
This diff is too big to show here.
generated-docs/html/index/types/1868015117.js−2
This diff is too big to show here.
generated-docs/html/index/types/1869899671.js−2
This diff is too big to show here.
generated-docs/html/index/types/1870505101.js−2
This diff is too big to show here.
generated-docs/html/index/types/1871870050.js−2
This diff is too big to show here.
generated-docs/html/index/types/1876538251.js−2
This diff is too big to show here.
generated-docs/html/index/types/1878068034.js−2
This diff is too big to show here.
generated-docs/html/index/types/1878184672.js−2
This diff is too big to show here.
generated-docs/html/index/types/1878673464.js−2
This diff is too big to show here.
generated-docs/html/index/types/1878678269.js−2
This diff is too big to show here.
generated-docs/html/index/types/1878815000.js−2
This diff is too big to show here.
generated-docs/html/index/types/1880958833.js−2
This diff is too big to show here.
generated-docs/html/index/types/1881044083.js−2
This diff is too big to show here.
generated-docs/html/index/types/1881564263.js−2
This diff is too big to show here.
generated-docs/html/index/types/1881761823.js−2
This diff is too big to show here.
generated-docs/html/index/types/1884885527.js−2
This diff is too big to show here.
generated-docs/html/index/types/1885576438.js−2
This diff is too big to show here.
generated-docs/html/index/types/1887007541.js−2
This diff is too big to show here.
generated-docs/html/index/types/1887987206.js−2
This diff is too big to show here.
generated-docs/html/index/types/1890684823.js−2
This diff is too big to show here.
generated-docs/html/index/types/1892959272.js−2
This diff is too big to show here.
generated-docs/html/index/types/1898568629.js−2
This diff is too big to show here.
generated-docs/html/index/types/1900339149.js−2
This diff is too big to show here.
generated-docs/html/index/types/190065826.js−2
This diff is too big to show here.
generated-docs/html/index/types/1901278953.js−2
This diff is too big to show here.
generated-docs/html/index/types/1904454806.js−2
This diff is too big to show here.
generated-docs/html/index/types/1904633156.js−2
This diff is too big to show here.
generated-docs/html/index/types/190627195.js−2
This diff is too big to show here.
generated-docs/html/index/types/1907844408.js−2
This diff is too big to show here.
generated-docs/html/index/types/1911223999.js−2
This diff is too big to show here.
generated-docs/html/index/types/1911738612.js−2
This diff is too big to show here.
generated-docs/html/index/types/1920652713.js−2
This diff is too big to show here.
generated-docs/html/index/types/1920661188.js−2
This diff is too big to show here.
generated-docs/html/index/types/1922896968.js−2
This diff is too big to show here.
generated-docs/html/index/types/1923540875.js−2
This diff is too big to show here.
generated-docs/html/index/types/1924128810.js−2
This diff is too big to show here.
generated-docs/html/index/types/1924225826.js−2
This diff is too big to show here.
generated-docs/html/index/types/1924628725.js−2
This diff is too big to show here.
generated-docs/html/index/types/1926006501.js−2
This diff is too big to show here.
generated-docs/html/index/types/1926919800.js−2
This diff is too big to show here.
generated-docs/html/index/types/1926948317.js−2
This diff is too big to show here.
generated-docs/html/index/types/1927553747.js−2
This diff is too big to show here.
generated-docs/html/index/types/1927718657.js−2
This diff is too big to show here.
generated-docs/html/index/types/192810546.js−2
This diff is too big to show here.
generated-docs/html/index/types/1928666402.js−2
This diff is too big to show here.
generated-docs/html/index/types/1929421741.js−2
This diff is too big to show here.
generated-docs/html/index/types/1930858529.js−2
This diff is too big to show here.
generated-docs/html/index/types/1935702935.js−2
This diff is too big to show here.
generated-docs/html/index/types/1939782857.js−2
This diff is too big to show here.
generated-docs/html/index/types/1941645685.js−2
This diff is too big to show here.
generated-docs/html/index/types/1942496645.js−2
This diff is too big to show here.
generated-docs/html/index/types/1942786155.js−2
This diff is too big to show here.
generated-docs/html/index/types/1945081606.js−2
This diff is too big to show here.
generated-docs/html/index/types/1945086296.js−2
This diff is too big to show here.
generated-docs/html/index/types/1945500542.js−2
This diff is too big to show here.
generated-docs/html/index/types/1953084695.js−2
This diff is too big to show here.
generated-docs/html/index/types/1955869946.js−2
This diff is too big to show here.
generated-docs/html/index/types/1959099737.js−2
This diff is too big to show here.
generated-docs/html/index/types/1962109154.js−2
This diff is too big to show here.
generated-docs/html/index/types/1963810457.js−2
This diff is too big to show here.
generated-docs/html/index/types/1965045911.js−2
This diff is too big to show here.
generated-docs/html/index/types/1966670740.js−2
This diff is too big to show here.
generated-docs/html/index/types/1967420878.js−2
This diff is too big to show here.
generated-docs/html/index/types/1969976507.js−2
This diff is too big to show here.
generated-docs/html/index/types/1970789052.js−2
This diff is too big to show here.
generated-docs/html/index/types/197175202.js−2
This diff is too big to show here.
generated-docs/html/index/types/1972713587.js−2
This diff is too big to show here.
generated-docs/html/index/types/1973516452.js−2
This diff is too big to show here.
generated-docs/html/index/types/197578755.js−2
This diff is too big to show here.
generated-docs/html/index/types/1980087980.js−2
This diff is too big to show here.
generated-docs/html/index/types/1981118853.js−2
This diff is too big to show here.
generated-docs/html/index/types/1981283568.js−2
This diff is too big to show here.
generated-docs/html/index/types/1982772090.js−2
This diff is too big to show here.
generated-docs/html/index/types/1985760170.js−2
This diff is too big to show here.
generated-docs/html/index/types/1986878174.js−2
This diff is too big to show here.
generated-docs/html/index/types/1987334649.js−2
This diff is too big to show here.
generated-docs/html/index/types/1987483604.js−2
This diff is too big to show here.
generated-docs/html/index/types/1989153181.js−2
This diff is too big to show here.
generated-docs/html/index/types/1990919563.js−2
This diff is too big to show here.
generated-docs/html/index/types/1994836397.js−2
This diff is too big to show here.
generated-docs/html/index/types/199746263.js−2
This diff is too big to show here.
generated-docs/html/index/types/1998935285.js−2
This diff is too big to show here.
generated-docs/html/index/types/1999454002.js−2
This diff is too big to show here.
generated-docs/html/index/types/2000048763.js−2
This diff is too big to show here.
generated-docs/html/index/types/2001947444.js−2
This diff is too big to show here.
generated-docs/html/index/types/2001997742.js−2
This diff is too big to show here.
generated-docs/html/index/types/2004367363.js−2
This diff is too big to show here.
generated-docs/html/index/types/2006251934.js−2
This diff is too big to show here.
generated-docs/html/index/types/2006686597.js−2
This diff is too big to show here.
generated-docs/html/index/types/2007797145.js−2
This diff is too big to show here.
generated-docs/html/index/types/200827727.js−2
This diff is too big to show here.
generated-docs/html/index/types/2011958249.js−2
This diff is too big to show here.
generated-docs/html/index/types/2013605334.js−2
This diff is too big to show here.
generated-docs/html/index/types/201633192.js−2
This diff is too big to show here.
generated-docs/html/index/types/2016542071.js−2
This diff is too big to show here.
generated-docs/html/index/types/2017069925.js−2
This diff is too big to show here.
generated-docs/html/index/types/2017589462.js−2
This diff is too big to show here.
generated-docs/html/index/types/2020395948.js−2
This diff is too big to show here.
generated-docs/html/index/types/2020538849.js−2
This diff is too big to show here.
generated-docs/html/index/types/2020813803.js−2
This diff is too big to show here.
generated-docs/html/index/types/2021819219.js−2
This diff is too big to show here.
generated-docs/html/index/types/2021824024.js−2
This diff is too big to show here.
generated-docs/html/index/types/2023466093.js−2
This diff is too big to show here.
generated-docs/html/index/types/2024490699.js−2
This diff is too big to show here.
generated-docs/html/index/types/2024761682.js−2
This diff is too big to show here.
generated-docs/html/index/types/20249745.js−2
This diff is too big to show here.
generated-docs/html/index/types/2025110120.js−2
This diff is too big to show here.
generated-docs/html/index/types/2026565475.js−2
This diff is too big to show here.
generated-docs/html/index/types/2029028662.js−2
This diff is too big to show here.
generated-docs/html/index/types/2030361672.js−2
This diff is too big to show here.
generated-docs/html/index/types/2031413276.js−2
This diff is too big to show here.
generated-docs/html/index/types/2032420707.js−2
This diff is too big to show here.
generated-docs/html/index/types/2033321634.js−2
This diff is too big to show here.
generated-docs/html/index/types/2035478585.js−2
This diff is too big to show here.
generated-docs/html/index/types/2035830136.js−2
This diff is too big to show here.
generated-docs/html/index/types/2036831376.js−2
This diff is too big to show here.
generated-docs/html/index/types/2042054411.js−2
This diff is too big to show here.
generated-docs/html/index/types/2043823358.js−2
This diff is too big to show here.
generated-docs/html/index/types/2048440963.js−2
This diff is too big to show here.
generated-docs/html/index/types/2049046393.js−2
This diff is too big to show here.
generated-docs/html/index/types/2049407398.js−2
This diff is too big to show here.
generated-docs/html/index/types/2050431453.js−2
This diff is too big to show here.
generated-docs/html/index/types/2050779484.js−2
This diff is too big to show here.
generated-docs/html/index/types/2053284831.js−2
This diff is too big to show here.
generated-docs/html/index/types/2054142834.js−2
This diff is too big to show here.
generated-docs/html/index/types/2056031036.js−2
This diff is too big to show here.
generated-docs/html/index/types/2056148543.js−2
This diff is too big to show here.
generated-docs/html/index/types/2056518048.js−2
This diff is too big to show here.
generated-docs/html/index/types/2056636466.js−2
This diff is too big to show here.
generated-docs/html/index/types/2057952270.js−2
This diff is too big to show here.
generated-docs/html/index/types/2059080167.js−2
This diff is too big to show here.
generated-docs/html/index/types/2059685597.js−2
This diff is too big to show here.
generated-docs/html/index/types/2061254071.js−2
This diff is too big to show here.
generated-docs/html/index/types/2061367949.js−2
This diff is too big to show here.
generated-docs/html/index/types/2061778575.js−2
This diff is too big to show here.
generated-docs/html/index/types/2062088952.js−2
This diff is too big to show here.
generated-docs/html/index/types/2063697772.js−2
This diff is too big to show here.
generated-docs/html/index/types/2064254007.js−2
This diff is too big to show here.
generated-docs/html/index/types/2064303202.js−2
This diff is too big to show here.
generated-docs/html/index/types/2064308007.js−2
This diff is too big to show here.
generated-docs/html/index/types/2068140898.js−2
This diff is too big to show here.
generated-docs/html/index/types/2068865576.js−2
This diff is too big to show here.
generated-docs/html/index/types/206977256.js−2
This diff is too big to show here.
generated-docs/html/index/types/2073405728.js−2
This diff is too big to show here.
generated-docs/html/index/types/2076924586.js−2
This diff is too big to show here.
generated-docs/html/index/types/2077513610.js−2
This diff is too big to show here.
generated-docs/html/index/types/2077598679.js−2
This diff is too big to show here.
generated-docs/html/index/types/2079099802.js−2
This diff is too big to show here.
generated-docs/html/index/types/2084627749.js−2
This diff is too big to show here.
generated-docs/html/index/types/2084946512.js−2
This diff is too big to show here.
generated-docs/html/index/types/2087579841.js−2
This diff is too big to show here.
generated-docs/html/index/types/2088227361.js−2
This diff is too big to show here.
generated-docs/html/index/types/2089178662.js−2
This diff is too big to show here.
generated-docs/html/index/types/2091126513.js−2
This diff is too big to show here.
generated-docs/html/index/types/2092802876.js−2
This diff is too big to show here.
generated-docs/html/index/types/2093169503.js−2
This diff is too big to show here.
generated-docs/html/index/types/2098022030.js−2
This diff is too big to show here.
generated-docs/html/index/types/2098421055.js−2
This diff is too big to show here.
generated-docs/html/index/types/2100030722.js−2
This diff is too big to show here.
generated-docs/html/index/types/2103080044.js−2
This diff is too big to show here.
generated-docs/html/index/types/2104106002.js−2
This diff is too big to show here.
generated-docs/html/index/types/2104205063.js−2
This diff is too big to show here.
generated-docs/html/index/types/2107731372.js−2
This diff is too big to show here.
generated-docs/html/index/types/2109248111.js−2
This diff is too big to show here.
generated-docs/html/index/types/2109596142.js−2
This diff is too big to show here.
generated-docs/html/index/types/2110201572.js−2
This diff is too big to show here.
generated-docs/html/index/types/2113561535.js−2
This diff is too big to show here.
generated-docs/html/index/types/2113704844.js−2
This diff is too big to show here.
generated-docs/html/index/types/2115453124.js−2
This diff is too big to show here.
generated-docs/html/index/types/2121609312.js−2
This diff is too big to show here.
generated-docs/html/index/types/2126821303.js−2
This diff is too big to show here.
generated-docs/html/index/types/2127306067.js−2
This diff is too big to show here.
generated-docs/html/index/types/2127347375.js−2
This diff is too big to show here.
generated-docs/html/index/types/2133420237.js−2
This diff is too big to show here.
generated-docs/html/index/types/2142710036.js−2
This diff is too big to show here.
generated-docs/html/index/types/2143899553.js−2
This diff is too big to show here.
generated-docs/html/index/types/2144397956.js−2
This diff is too big to show here.
generated-docs/html/index/types/215695079.js−2
This diff is too big to show here.
generated-docs/html/index/types/219009864.js−2
This diff is too big to show here.
generated-docs/html/index/types/219081769.js−2
This diff is too big to show here.
generated-docs/html/index/types/219350315.js−2
This diff is too big to show here.
generated-docs/html/index/types/223229175.js−2
This diff is too big to show here.
generated-docs/html/index/types/223550420.js−2
This diff is too big to show here.
generated-docs/html/index/types/225797636.js−2
This diff is too big to show here.
generated-docs/html/index/types/226784896.js−2
This diff is too big to show here.
generated-docs/html/index/types/229107307.js−2
This diff is too big to show here.
generated-docs/html/index/types/230943629.js−2
This diff is too big to show here.
generated-docs/html/index/types/23120246.js−2
This diff is too big to show here.
generated-docs/html/index/types/236980193.js−2
This diff is too big to show here.
generated-docs/html/index/types/238681137.js−2
This diff is too big to show here.
generated-docs/html/index/types/24120184.js−2
This diff is too big to show here.
generated-docs/html/index/types/242486520.js−2
This diff is too big to show here.
generated-docs/html/index/types/245203064.js−2
This diff is too big to show here.
generated-docs/html/index/types/248557844.js−2
This diff is too big to show here.
generated-docs/html/index/types/24960441.js−2
This diff is too big to show here.
generated-docs/html/index/types/253036581.js−2
This diff is too big to show here.
generated-docs/html/index/types/253200986.js−2
This diff is too big to show here.
generated-docs/html/index/types/255270583.js−2
This diff is too big to show here.
generated-docs/html/index/types/256864638.js−2
This diff is too big to show here.
generated-docs/html/index/types/259050460.js−2
This diff is too big to show here.
generated-docs/html/index/types/260728587.js−2
This diff is too big to show here.
generated-docs/html/index/types/262771787.js−2
This diff is too big to show here.
generated-docs/html/index/types/265875588.js−2
This diff is too big to show here.
generated-docs/html/index/types/265933781.js−2
This diff is too big to show here.
generated-docs/html/index/types/2660309.js−2
This diff is too big to show here.
generated-docs/html/index/types/266274469.js−2
This diff is too big to show here.
generated-docs/html/index/types/269763769.js−2
This diff is too big to show here.
generated-docs/html/index/types/270911995.js−2
This diff is too big to show here.
generated-docs/html/index/types/272004106.js−2
This diff is too big to show here.
generated-docs/html/index/types/273297833.js−2
This diff is too big to show here.
generated-docs/html/index/types/274476759.js−2
This diff is too big to show here.
generated-docs/html/index/types/276135030.js−2
This diff is too big to show here.
generated-docs/html/index/types/277900468.js−2
This diff is too big to show here.
generated-docs/html/index/types/279496439.js−2
This diff is too big to show here.
generated-docs/html/index/types/280101869.js−2
This diff is too big to show here.
generated-docs/html/index/types/282986754.js−2
This diff is too big to show here.
generated-docs/html/index/types/283306593.js−2
This diff is too big to show here.
generated-docs/html/index/types/284719474.js−2
This diff is too big to show here.
generated-docs/html/index/types/28941862.js−2
This diff is too big to show here.
generated-docs/html/index/types/290106197.js−2
This diff is too big to show here.
generated-docs/html/index/types/292296680.js−2
This diff is too big to show here.
generated-docs/html/index/types/294839098.js−2
This diff is too big to show here.
generated-docs/html/index/types/307112115.js−2
This diff is too big to show here.
generated-docs/html/index/types/307643337.js−2
This diff is too big to show here.
generated-docs/html/index/types/308348279.js−2
This diff is too big to show here.
generated-docs/html/index/types/308418723.js−2
This diff is too big to show here.
generated-docs/html/index/types/308844343.js−2
This diff is too big to show here.
generated-docs/html/index/types/310044487.js−2
This diff is too big to show here.
generated-docs/html/index/types/312423007.js−2
This diff is too big to show here.
generated-docs/html/index/types/315743816.js−2
This diff is too big to show here.
generated-docs/html/index/types/317407655.js−2
This diff is too big to show here.
generated-docs/html/index/types/322550005.js−2
This diff is too big to show here.
generated-docs/html/index/types/336004725.js−2
This diff is too big to show here.
generated-docs/html/index/types/340509329.js−2
This diff is too big to show here.
generated-docs/html/index/types/342870308.js−2
This diff is too big to show here.
generated-docs/html/index/types/346425214.js−2
This diff is too big to show here.
generated-docs/html/index/types/346948801.js−2
This diff is too big to show here.
generated-docs/html/index/types/347385574.js−2
This diff is too big to show here.
generated-docs/html/index/types/347559434.js−2
This diff is too big to show here.
generated-docs/html/index/types/350727571.js−2
This diff is too big to show here.
generated-docs/html/index/types/350967018.js−2
This diff is too big to show here.
generated-docs/html/index/types/364282958.js−2
This diff is too big to show here.
generated-docs/html/index/types/364453998.js−2
This diff is too big to show here.
generated-docs/html/index/types/366255317.js−2
This diff is too big to show here.
generated-docs/html/index/types/366375136.js−2
This diff is too big to show here.
generated-docs/html/index/types/367602148.js−2
This diff is too big to show here.
generated-docs/html/index/types/367608031.js−2
This diff is too big to show here.
generated-docs/html/index/types/367929097.js−2
This diff is too big to show here.
generated-docs/html/index/types/368042588.js−2
This diff is too big to show here.
generated-docs/html/index/types/368889561.js−2
This diff is too big to show here.
generated-docs/html/index/types/377627868.js−2
This diff is too big to show here.
generated-docs/html/index/types/379534707.js−2
This diff is too big to show here.
generated-docs/html/index/types/381526628.js−2
This diff is too big to show here.
generated-docs/html/index/types/387269820.js−2
This diff is too big to show here.
generated-docs/html/index/types/387981234.js−2
This diff is too big to show here.
generated-docs/html/index/types/387986822.js−2
This diff is too big to show here.
generated-docs/html/index/types/392492855.js−2
This diff is too big to show here.
generated-docs/html/index/types/397338768.js−2
This diff is too big to show here.
generated-docs/html/index/types/397778906.js−2
This diff is too big to show here.
generated-docs/html/index/types/399174377.js−2
This diff is too big to show here.
generated-docs/html/index/types/399700500.js−2
This diff is too big to show here.
generated-docs/html/index/types/400398361.js−2
This diff is too big to show here.
generated-docs/html/index/types/400528959.js−2
This diff is too big to show here.
generated-docs/html/index/types/401134389.js−2
This diff is too big to show here.
generated-docs/html/index/types/404768862.js−2
This diff is too big to show here.
generated-docs/html/index/types/405885794.js−2
This diff is too big to show here.
generated-docs/html/index/types/406264981.js−2
This diff is too big to show here.
generated-docs/html/index/types/408579158.js−2
This diff is too big to show here.
generated-docs/html/index/types/408840963.js−2
This diff is too big to show here.
generated-docs/html/index/types/410769077.js−2
This diff is too big to show here.
generated-docs/html/index/types/411746196.js−2
This diff is too big to show here.
generated-docs/html/index/types/412745866.js−2
This diff is too big to show here.
generated-docs/html/index/types/41315769.js−2
This diff is too big to show here.
generated-docs/html/index/types/416157356.js−2
This diff is too big to show here.
generated-docs/html/index/types/41642420.js−2
This diff is too big to show here.
generated-docs/html/index/types/421754312.js−2
This diff is too big to show here.
generated-docs/html/index/types/429250790.js−2
This diff is too big to show here.
generated-docs/html/index/types/430269268.js−2
This diff is too big to show here.
generated-docs/html/index/types/433711478.js−2
This diff is too big to show here.
generated-docs/html/index/types/437258399.js−2
This diff is too big to show here.
generated-docs/html/index/types/438289438.js−2
This diff is too big to show here.
generated-docs/html/index/types/442926758.js−2
This diff is too big to show here.
generated-docs/html/index/types/446653794.js−2
This diff is too big to show here.
generated-docs/html/index/types/448370036.js−2
This diff is too big to show here.
generated-docs/html/index/types/448693365.js−2
This diff is too big to show here.
generated-docs/html/index/types/451626441.js−2
This diff is too big to show here.
generated-docs/html/index/types/452515265.js−2
This diff is too big to show here.
generated-docs/html/index/types/452851914.js−2
This diff is too big to show here.
generated-docs/html/index/types/452919806.js−2
This diff is too big to show here.
generated-docs/html/index/types/458361649.js−2
This diff is too big to show here.
generated-docs/html/index/types/461358312.js−2
This diff is too big to show here.
generated-docs/html/index/types/464468023.js−2
This diff is too big to show here.
generated-docs/html/index/types/46558173.js−2
This diff is too big to show here.
generated-docs/html/index/types/465787138.js−2
This diff is too big to show here.
generated-docs/html/index/types/465975917.js−2
This diff is too big to show here.
generated-docs/html/index/types/466277274.js−2
This diff is too big to show here.
generated-docs/html/index/types/466881284.js−2
This diff is too big to show here.
generated-docs/html/index/types/467921490.js−2
This diff is too big to show here.
generated-docs/html/index/types/472225674.js−2
This diff is too big to show here.
generated-docs/html/index/types/473960726.js−2
This diff is too big to show here.
generated-docs/html/index/types/47463766.js−2
This diff is too big to show here.
generated-docs/html/index/types/474907625.js−2
This diff is too big to show here.
generated-docs/html/index/types/474912430.js−2
This diff is too big to show here.
generated-docs/html/index/types/475544628.js−2
This diff is too big to show here.
generated-docs/html/index/types/476625292.js−2
This diff is too big to show here.
generated-docs/html/index/types/479530035.js−2
This diff is too big to show here.
generated-docs/html/index/types/480049737.js−2
This diff is too big to show here.
generated-docs/html/index/types/480135465.js−2
This diff is too big to show here.
generated-docs/html/index/types/484876154.js−2
This diff is too big to show here.
generated-docs/html/index/types/488205666.js−2
This diff is too big to show here.
generated-docs/html/index/types/488258102.js−2
This diff is too big to show here.
generated-docs/html/index/types/488467796.js−2
This diff is too big to show here.
generated-docs/html/index/types/492914970.js−2
This diff is too big to show here.
generated-docs/html/index/types/49550466.js−2
This diff is too big to show here.
generated-docs/html/index/types/495933182.js−2
This diff is too big to show here.
generated-docs/html/index/types/497544299.js−2
This diff is too big to show here.
generated-docs/html/index/types/500871754.js−2
This diff is too big to show here.
generated-docs/html/index/types/503662502.js−2
This diff is too big to show here.
generated-docs/html/index/types/505077409.js−2
This diff is too big to show here.
generated-docs/html/index/types/506644462.js−2
This diff is too big to show here.
generated-docs/html/index/types/509130885.js−2
This diff is too big to show here.
generated-docs/html/index/types/509911763.js−2
This diff is too big to show here.
generated-docs/html/index/types/510585788.js−2
This diff is too big to show here.
generated-docs/html/index/types/510656637.js−2
This diff is too big to show here.
generated-docs/html/index/types/511262067.js−2
This diff is too big to show here.
generated-docs/html/index/types/514245699.js−2
This diff is too big to show here.
generated-docs/html/index/types/514460381.js−2
This diff is too big to show here.
generated-docs/html/index/types/520383031.js−2
This diff is too big to show here.
generated-docs/html/index/types/521665684.js−2
This diff is too big to show here.
generated-docs/html/index/types/522077477.js−2
This diff is too big to show here.
generated-docs/html/index/types/530332937.js−2
This diff is too big to show here.
generated-docs/html/index/types/530337742.js−2
This diff is too big to show here.
generated-docs/html/index/types/531463271.js−2
This diff is too big to show here.
generated-docs/html/index/types/534053795.js−2
This diff is too big to show here.
generated-docs/html/index/types/534462096.js−2
This diff is too big to show here.
generated-docs/html/index/types/536848485.js−2
This diff is too big to show here.
generated-docs/html/index/types/537661877.js−2
This diff is too big to show here.
generated-docs/html/index/types/542611552.js−2
This diff is too big to show here.
generated-docs/html/index/types/543534265.js−2
This diff is too big to show here.
generated-docs/html/index/types/544072939.js−2
This diff is too big to show here.
generated-docs/html/index/types/549393473.js−2
This diff is too big to show here.
generated-docs/html/index/types/550952236.js−2
This diff is too big to show here.
generated-docs/html/index/types/551325565.js−2
This diff is too big to show here.
generated-docs/html/index/types/551608011.js−2
This diff is too big to show here.
generated-docs/html/index/types/552229963.js−2
This diff is too big to show here.
generated-docs/html/index/types/553251241.js−2
This diff is too big to show here.
generated-docs/html/index/types/556731375.js−2
This diff is too big to show here.
generated-docs/html/index/types/559124982.js−2
This diff is too big to show here.
generated-docs/html/index/types/560322021.js−2
This diff is too big to show here.
generated-docs/html/index/types/563782937.js−2
This diff is too big to show here.
generated-docs/html/index/types/567367170.js−2
This diff is too big to show here.
generated-docs/html/index/types/57059597.js−2
This diff is too big to show here.
generated-docs/html/index/types/57123454.js−2
This diff is too big to show here.
generated-docs/html/index/types/57188589.js−2
This diff is too big to show here.
generated-docs/html/index/types/573509192.js−2
This diff is too big to show here.
generated-docs/html/index/types/573814716.js−2
This diff is too big to show here.
generated-docs/html/index/types/576843040.js−2
This diff is too big to show here.
generated-docs/html/index/types/576918516.js−2
This diff is too big to show here.
generated-docs/html/index/types/579150039.js−2
This diff is too big to show here.
generated-docs/html/index/types/583441206.js−2
This diff is too big to show here.
generated-docs/html/index/types/587667765.js−2
This diff is too big to show here.
generated-docs/html/index/types/593550742.js−2
This diff is too big to show here.
generated-docs/html/index/types/594430082.js−2
This diff is too big to show here.
generated-docs/html/index/types/598252830.js−2
This diff is too big to show here.
generated-docs/html/index/types/59889134.js−2
This diff is too big to show here.
generated-docs/html/index/types/603904616.js−2
This diff is too big to show here.
generated-docs/html/index/types/60461084.js−2
This diff is too big to show here.
generated-docs/html/index/types/605113569.js−2
This diff is too big to show here.
generated-docs/html/index/types/605562627.js−2
This diff is too big to show here.
generated-docs/html/index/types/606744087.js−2
This diff is too big to show here.
generated-docs/html/index/types/609132456.js−2
This diff is too big to show here.
generated-docs/html/index/types/609744554.js−2
This diff is too big to show here.
generated-docs/html/index/types/612070242.js−2
This diff is too big to show here.
generated-docs/html/index/types/613013591.js−2
This diff is too big to show here.
generated-docs/html/index/types/613072760.js−2
This diff is too big to show here.
generated-docs/html/index/types/613075543.js−2
This diff is too big to show here.
generated-docs/html/index/types/616471733.js−2
This diff is too big to show here.
generated-docs/html/index/types/616476538.js−2
This diff is too big to show here.
generated-docs/html/index/types/616590077.js−2
This diff is too big to show here.
generated-docs/html/index/types/617391587.js−2
This diff is too big to show here.
generated-docs/html/index/types/61808545.js−2
This diff is too big to show here.
generated-docs/html/index/types/618322290.js−2
This diff is too big to show here.
generated-docs/html/index/types/618707920.js−2
This diff is too big to show here.
generated-docs/html/index/types/619956887.js−2
This diff is too big to show here.
generated-docs/html/index/types/621089338.js−2
This diff is too big to show here.
generated-docs/html/index/types/621094143.js−2
This diff is too big to show here.
generated-docs/html/index/types/622686574.js−2
This diff is too big to show here.
generated-docs/html/index/types/625624726.js−2
This diff is too big to show here.
generated-docs/html/index/types/626637067.js−2
This diff is too big to show here.
generated-docs/html/index/types/629029765.js−2
This diff is too big to show here.
generated-docs/html/index/types/63432659.js−2
This diff is too big to show here.
generated-docs/html/index/types/63437464.js−2
This diff is too big to show here.
generated-docs/html/index/types/63462450.js−2
This diff is too big to show here.
generated-docs/html/index/types/63467255.js−2
This diff is too big to show here.
generated-docs/html/index/types/63522032.js−2
This diff is too big to show here.
generated-docs/html/index/types/635901960.js−2
This diff is too big to show here.
generated-docs/html/index/types/636170646.js−2
This diff is too big to show here.
generated-docs/html/index/types/636238303.js−2
This diff is too big to show here.
generated-docs/html/index/types/636246071.js−2
This diff is too big to show here.
generated-docs/html/index/types/638955237.js−2
This diff is too big to show here.
generated-docs/html/index/types/63959287.js−2
This diff is too big to show here.
generated-docs/html/index/types/643273621.js−2
This diff is too big to show here.
generated-docs/html/index/types/643849793.js−2
This diff is too big to show here.
generated-docs/html/index/types/64449693.js−2
This diff is too big to show here.
generated-docs/html/index/types/645216456.js−2
This diff is too big to show here.
generated-docs/html/index/types/645482173.js−2
This diff is too big to show here.
generated-docs/html/index/types/64564717.js−2
This diff is too big to show here.
generated-docs/html/index/types/64578915.js−2
This diff is too big to show here.
generated-docs/html/index/types/646482954.js−2
This diff is too big to show here.
generated-docs/html/index/types/646725214.js−2
This diff is too big to show here.
generated-docs/html/index/types/656529240.js−2
This diff is too big to show here.
generated-docs/html/index/types/657104067.js−2
This diff is too big to show here.
generated-docs/html/index/types/657183716.js−2
This diff is too big to show here.
generated-docs/html/index/types/657616790.js−2
This diff is too big to show here.
generated-docs/html/index/types/659775831.js−2
This diff is too big to show here.
generated-docs/html/index/types/66024.js−2
This diff is too big to show here.
generated-docs/html/index/types/660545990.js−2
This diff is too big to show here.
generated-docs/html/index/types/66055.js−2
This diff is too big to show here.
generated-docs/html/index/types/660626283.js−2
This diff is too big to show here.
generated-docs/html/index/types/663521795.js−2
This diff is too big to show here.
generated-docs/html/index/types/665966371.js−2
This diff is too big to show here.
generated-docs/html/index/types/66628313.js−2
This diff is too big to show here.
generated-docs/html/index/types/666411656.js−2
This diff is too big to show here.
generated-docs/html/index/types/668307956.js−2
This diff is too big to show here.
generated-docs/html/index/types/669015969.js−2
This diff is too big to show here.
generated-docs/html/index/types/669533779.js−2
This diff is too big to show here.
generated-docs/html/index/types/671210227.js−2
This diff is too big to show here.
generated-docs/html/index/types/67202.js−2
This diff is too big to show here.
generated-docs/html/index/types/672470451.js−2
This diff is too big to show here.
generated-docs/html/index/types/673483497.js−2
This diff is too big to show here.
generated-docs/html/index/types/675466341.js−2
This diff is too big to show here.
generated-docs/html/index/types/676598126.js−2
This diff is too big to show here.
generated-docs/html/index/types/678557664.js−2
This diff is too big to show here.
generated-docs/html/index/types/679541565.js−2
This diff is too big to show here.
generated-docs/html/index/types/680716906.js−2
This diff is too big to show here.
generated-docs/html/index/types/68576892.js−2
This diff is too big to show here.
generated-docs/html/index/types/687264747.js−2
This diff is too big to show here.
generated-docs/html/index/types/688792203.js−2
This diff is too big to show here.
generated-docs/html/index/types/69182322.js−2
This diff is too big to show here.
generated-docs/html/index/types/69187127.js−2
This diff is too big to show here.
generated-docs/html/index/types/692857257.js−2
This diff is too big to show here.
generated-docs/html/index/types/693056406.js−2
This diff is too big to show here.
generated-docs/html/index/types/693093867.js−2
This diff is too big to show here.
generated-docs/html/index/types/69320354.js−2
This diff is too big to show here.
generated-docs/html/index/types/699099133.js−2
This diff is too big to show here.
generated-docs/html/index/types/702309775.js−2
This diff is too big to show here.
generated-docs/html/index/types/703527918.js−2
This diff is too big to show here.
generated-docs/html/index/types/706425289.js−2
This diff is too big to show here.
generated-docs/html/index/types/707191817.js−2
This diff is too big to show here.
generated-docs/html/index/types/707824747.js−2
This diff is too big to show here.
generated-docs/html/index/types/708812768.js−2
This diff is too big to show here.
generated-docs/html/index/types/711471740.js−2
This diff is too big to show here.
generated-docs/html/index/types/716274324.js−2
This diff is too big to show here.
generated-docs/html/index/types/717667289.js−2
This diff is too big to show here.
generated-docs/html/index/types/72007.js−2
This diff is too big to show here.
generated-docs/html/index/types/721773373.js−2
This diff is too big to show here.
generated-docs/html/index/types/723751997.js−2
This diff is too big to show here.
generated-docs/html/index/types/725527832.js−2
This diff is too big to show here.
generated-docs/html/index/types/72670348.js−2
This diff is too big to show here.
generated-docs/html/index/types/728445701.js−2
This diff is too big to show here.
generated-docs/html/index/types/728830516.js−2
This diff is too big to show here.
generated-docs/html/index/types/730776115.js−2
This diff is too big to show here.
generated-docs/html/index/types/735966506.js−2
This diff is too big to show here.
generated-docs/html/index/types/736876334.js−2
This diff is too big to show here.
generated-docs/html/index/types/73829524.js−2
This diff is too big to show here.
generated-docs/html/index/types/740586444.js−2
This diff is too big to show here.
generated-docs/html/index/types/742153457.js−2
This diff is too big to show here.
generated-docs/html/index/types/745293605.js−2
This diff is too big to show here.
generated-docs/html/index/types/747509109.js−2
This diff is too big to show here.
generated-docs/html/index/types/747622536.js−2
This diff is too big to show here.
generated-docs/html/index/types/748204276.js−2
This diff is too big to show here.
generated-docs/html/index/types/748554680.js−2
This diff is too big to show here.
generated-docs/html/index/types/749837831.js−2
This diff is too big to show here.
generated-docs/html/index/types/750150812.js−2
This diff is too big to show here.
generated-docs/html/index/types/752098228.js−2
This diff is too big to show here.
generated-docs/html/index/types/752386403.js−2
This diff is too big to show here.
generated-docs/html/index/types/752592820.js−2
This diff is too big to show here.
generated-docs/html/index/types/753198628.js−2
This diff is too big to show here.
generated-docs/html/index/types/753910236.js−2
This diff is too big to show here.
generated-docs/html/index/types/754988016.js−2
This diff is too big to show here.
generated-docs/html/index/types/760949468.js−2
This diff is too big to show here.
generated-docs/html/index/types/76307835.js−2
This diff is too big to show here.
generated-docs/html/index/types/763244612.js−2
This diff is too big to show here.
generated-docs/html/index/types/77546432.js−2
This diff is too big to show here.
generated-docs/html/index/types/775565673.js−2
This diff is too big to show here.
generated-docs/html/index/types/777583157.js−2
This diff is too big to show here.
generated-docs/html/index/types/778152694.js−2
This diff is too big to show here.
generated-docs/html/index/types/785791611.js−2
This diff is too big to show here.
generated-docs/html/index/types/787463597.js−2
This diff is too big to show here.
generated-docs/html/index/types/789628709.js−2
This diff is too big to show here.
generated-docs/html/index/types/790042097.js−2
This diff is too big to show here.
generated-docs/html/index/types/800848702.js−2
This diff is too big to show here.
generated-docs/html/index/types/805373275.js−2
This diff is too big to show here.
generated-docs/html/index/types/80604003.js−2
This diff is too big to show here.
generated-docs/html/index/types/80678066.js−2
This diff is too big to show here.
generated-docs/html/index/types/808131868.js−2
This diff is too big to show here.
generated-docs/html/index/types/808203202.js−2
This diff is too big to show here.
generated-docs/html/index/types/808962765.js−2
This diff is too big to show here.
generated-docs/html/index/types/810859065.js−2
This diff is too big to show here.
generated-docs/html/index/types/812398080.js−2
This diff is too big to show here.
generated-docs/html/index/types/813819258.js−2
This diff is too big to show here.
generated-docs/html/index/types/81400.js−2
This diff is too big to show here.
generated-docs/html/index/types/81589627.js−2
This diff is too big to show here.
generated-docs/html/index/types/816082100.js−2
This diff is too big to show here.
generated-docs/html/index/types/816640036.js−2
This diff is too big to show here.
generated-docs/html/index/types/821488886.js−2
This diff is too big to show here.
generated-docs/html/index/types/821902559.js−2
This diff is too big to show here.
generated-docs/html/index/types/822470859.js−2
This diff is too big to show here.
generated-docs/html/index/types/823815735.js−2
This diff is too big to show here.
generated-docs/html/index/types/827519370.js−2
This diff is too big to show here.
generated-docs/html/index/types/827674208.js−2
This diff is too big to show here.
generated-docs/html/index/types/828621320.js−2
This diff is too big to show here.
generated-docs/html/index/types/829226750.js−2
This diff is too big to show here.
generated-docs/html/index/types/831548375.js−2
This diff is too big to show here.
generated-docs/html/index/types/832777122.js−2
This diff is too big to show here.
generated-docs/html/index/types/833004664.js−2
This diff is too big to show here.
generated-docs/html/index/types/833238925.js−2
This diff is too big to show here.
generated-docs/html/index/types/833387880.js−2
This diff is too big to show here.
generated-docs/html/index/types/833844355.js−2
This diff is too big to show here.
generated-docs/html/index/types/833849160.js−2
This diff is too big to show here.
generated-docs/html/index/types/835408366.js−2
This diff is too big to show here.
generated-docs/html/index/types/837351723.js−2
This diff is too big to show here.
generated-docs/html/index/types/839201434.js−2
This diff is too big to show here.
generated-docs/html/index/types/839663878.js−2
This diff is too big to show here.
generated-docs/html/index/types/845107156.js−2
This diff is too big to show here.
generated-docs/html/index/types/845622538.js−2
This diff is too big to show here.
generated-docs/html/index/types/851712552.js−2
This diff is too big to show here.
generated-docs/html/index/types/851809436.js−2
This diff is too big to show here.
generated-docs/html/index/types/852317982.js−2
This diff is too big to show here.
generated-docs/html/index/types/85289577.js−2
This diff is too big to show here.
generated-docs/html/index/types/857250471.js−2
This diff is too big to show here.
generated-docs/html/index/types/861868076.js−2
This diff is too big to show here.
generated-docs/html/index/types/862422825.js−2
This diff is too big to show here.
generated-docs/html/index/types/862473506.js−2
This diff is too big to show here.
generated-docs/html/index/types/862478311.js−2
This diff is too big to show here.
generated-docs/html/index/types/862794937.js−2
This diff is too big to show here.
generated-docs/html/index/types/864703527.js−2
This diff is too big to show here.
generated-docs/html/index/types/866366249.js−2
This diff is too big to show here.
generated-docs/html/index/types/867145001.js−2
This diff is too big to show here.
generated-docs/html/index/types/87.js−2
This diff is too big to show here.
generated-docs/html/index/types/870046135.js−2
This diff is too big to show here.
generated-docs/html/index/types/87042857.js−2
This diff is too big to show here.
generated-docs/html/index/types/870451818.js−2
This diff is too big to show here.
generated-docs/html/index/types/87047662.js−2
This diff is too big to show here.
generated-docs/html/index/types/872006457.js−2
This diff is too big to show here.
generated-docs/html/index/types/873654541.js−2
This diff is too big to show here.
generated-docs/html/index/types/87475998.js−2
This diff is too big to show here.
generated-docs/html/index/types/87504137.js−2
This diff is too big to show here.
generated-docs/html/index/types/876293388.js−2
This diff is too big to show here.
generated-docs/html/index/types/876385394.js−2
This diff is too big to show here.
generated-docs/html/index/types/87653092.js−2
This diff is too big to show here.
generated-docs/html/index/types/878940075.js−2
This diff is too big to show here.
generated-docs/html/index/types/88011954.js−2
This diff is too big to show here.
generated-docs/html/index/types/884035465.js−2
This diff is too big to show here.
generated-docs/html/index/types/887284043.js−2
This diff is too big to show here.
generated-docs/html/index/types/887335273.js−2
This diff is too big to show here.
generated-docs/html/index/types/888507243.js−2
This diff is too big to show here.
generated-docs/html/index/types/890497227.js−2
This diff is too big to show here.
generated-docs/html/index/types/891102657.js−2
This diff is too big to show here.
generated-docs/html/index/types/891107462.js−2
This diff is too big to show here.
generated-docs/html/index/types/892815886.js−2
This diff is too big to show here.
generated-docs/html/index/types/894956958.js−2
This diff is too big to show here.
generated-docs/html/index/types/896389483.js−2
This diff is too big to show here.
generated-docs/html/index/types/899804360.js−2
This diff is too big to show here.
generated-docs/html/index/types/904952176.js−2
This diff is too big to show here.
generated-docs/html/index/types/907401969.js−2
This diff is too big to show here.
generated-docs/html/index/types/909708554.js−2
This diff is too big to show here.
generated-docs/html/index/types/91098522.js−2
This diff is too big to show here.
generated-docs/html/index/types/912577561.js−2
This diff is too big to show here.
generated-docs/html/index/types/913614997.js−2
This diff is too big to show here.
generated-docs/html/index/types/91665267.js−2
This diff is too big to show here.
generated-docs/html/index/types/917203534.js−2
This diff is too big to show here.
generated-docs/html/index/types/918304491.js−2
This diff is too big to show here.
generated-docs/html/index/types/918501766.js−2
This diff is too big to show here.
generated-docs/html/index/types/918711428.js−2
This diff is too big to show here.
generated-docs/html/index/types/919126378.js−2
This diff is too big to show here.
generated-docs/html/index/types/922002573.js−2
This diff is too big to show here.
generated-docs/html/index/types/922224927.js−2
This diff is too big to show here.
generated-docs/html/index/types/92270697.js−2
This diff is too big to show here.
generated-docs/html/index/types/923073389.js−2
This diff is too big to show here.
generated-docs/html/index/types/923552941.js−2
This diff is too big to show here.
generated-docs/html/index/types/925378936.js−2
This diff is too big to show here.
generated-docs/html/index/types/92905315.js−2
This diff is too big to show here.
generated-docs/html/index/types/930760526.js−2
This diff is too big to show here.
generated-docs/html/index/types/932009732.js−2
This diff is too big to show here.
generated-docs/html/index/types/932846927.js−2
This diff is too big to show here.
generated-docs/html/index/types/933389839.js−2
This diff is too big to show here.
generated-docs/html/index/types/93358253.js−2
This diff is too big to show here.
generated-docs/html/index/types/933995269.js−2
This diff is too big to show here.
generated-docs/html/index/types/934809415.js−2
This diff is too big to show here.
generated-docs/html/index/types/934852242.js−2
This diff is too big to show here.
generated-docs/html/index/types/936748340.js−2
This diff is too big to show here.
generated-docs/html/index/types/937099949.js−2
This diff is too big to show here.
generated-docs/html/index/types/937333163.js−2
This diff is too big to show here.
generated-docs/html/index/types/937958684.js−2
This diff is too big to show here.
generated-docs/html/index/types/938951959.js−2
This diff is too big to show here.
generated-docs/html/index/types/939118519.js−2
This diff is too big to show here.
generated-docs/html/index/types/939310133.js−2
This diff is too big to show here.
generated-docs/html/index/types/940075277.js−2
This diff is too big to show here.
generated-docs/html/index/types/940159108.js−2
This diff is too big to show here.
generated-docs/html/index/types/94317450.js−2
This diff is too big to show here.
generated-docs/html/index/types/943228850.js−2
This diff is too big to show here.
generated-docs/html/index/types/944559539.js−2
This diff is too big to show here.
generated-docs/html/index/types/947792576.js−2
This diff is too big to show here.
generated-docs/html/index/types/948406407.js−2
This diff is too big to show here.
generated-docs/html/index/types/948707992.js−2
This diff is too big to show here.
generated-docs/html/index/types/950970283.js−2
This diff is too big to show here.
generated-docs/html/index/types/951553578.js−2
This diff is too big to show here.
generated-docs/html/index/types/952414378.js−2
This diff is too big to show here.
generated-docs/html/index/types/952653934.js−2
This diff is too big to show here.
generated-docs/html/index/types/953460935.js−2
This diff is too big to show here.
generated-docs/html/index/types/953928661.js−2
This diff is too big to show here.
generated-docs/html/index/types/956919401.js−2
This diff is too big to show here.
generated-docs/html/index/types/958189763.js−2
This diff is too big to show here.
generated-docs/html/index/types/962127499.js−2
This diff is too big to show here.
generated-docs/html/index/types/962188397.js−2
This diff is too big to show here.
generated-docs/html/index/types/962356843.js−2
This diff is too big to show here.
generated-docs/html/index/types/964284089.js−2
This diff is too big to show here.
generated-docs/html/index/types/968791428.js−2
This diff is too big to show here.
generated-docs/html/index/types/968871157.js−2
This diff is too big to show here.
generated-docs/html/index/types/982347189.js−2
This diff is too big to show here.
generated-docs/html/index/types/983722749.js−2
This diff is too big to show here.
generated-docs/html/index/types/984636553.js−2
This diff is too big to show here.
generated-docs/html/index/types/986840739.js−2
This diff is too big to show here.
generated-docs/html/index/types/987208067.js−2
This diff is too big to show here.
generated-docs/html/index/types/994446273.js−2
This diff is too big to show here.
generated-docs/html/index/types/995443815.js−2
This diff is too big to show here.
generated-docs/html/index/types/996119224.js−2
This diff is too big to show here.
generated-docs/html/index/types/996491990.js−2
This diff is too big to show here.
generated-docs/html/index/types/997105165.js−2
This diff is too big to show here.
generated-docs/html/index/types/999625991.js−2
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
packages/playground/README.md−73
This diff is too big to show here.
packages/playground/run.sh−22
This diff is too big to show here.
packages/playground/spago.yaml−8
This diff is too big to show here.
packages/playground/src/Main.purs−44
This diff is too big to show here.
packages/yoga-om-core/README.md−109
This diff is too big to show here.
packages/yoga-om-core/package.json−11
This diff is too big to show here.
packages/yoga-om-core/spago.yaml−40
This diff is too big to show here.
packages/yoga-om-layer/EXAMPLE_ERROR.md−92
This diff is too big to show here.
packages/yoga-om-layer/PLAYGROUND.md−87
This diff is too big to show here.
packages/yoga-om-layer/README.md−242
This diff is too big to show here.
packages/yoga-om-layer/spago.yaml−24
This diff is too big to show here.
packages/yoga-om-layer/src/Yoga/Om/Layer.purs−206
This diff is too big to show here.
packages/yoga-om-layer/test-errors.sh−99
This diff is too big to show here.
packages/yoga-om-layer/test-negative/AllSatisfied.expected−1
This diff is too big to show here.
packages/yoga-om-layer/test-negative/AllSatisfied.purs−19
This diff is too big to show here.
packages/yoga-om-layer/test-negative/DuplicateProvides.purs−24
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MissingConfig.expected−4
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MissingConfig.purs−19
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MissingConfigRun.expected−3
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MissingConfigRun.purs−20
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MissingDep.purs−18
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MissingLogger.expected−4
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MissingLogger.purs−20
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MissingOneField.expected−3
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MissingOneField.purs−21
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MultipleMissing.expected−4
This diff is too big to show here.
packages/yoga-om-layer/test-negative/MultipleMissing.purs−23
This diff is too big to show here.
packages/yoga-om-layer/test-negative/ShowDiff.expected−5
This diff is too big to show here.
packages/yoga-om-layer/test-negative/ShowDiff.purs−22
This diff is too big to show here.
packages/yoga-om-layer/test-negative/SimpleTypeMismatch.expected−1
This diff is too big to show here.
packages/yoga-om-layer/test-negative/SimpleTypeMismatch.purs−16
This diff is too big to show here.
packages/yoga-om-layer/test-negative/TypeMismatch.expected−1
This diff is too big to show here.
packages/yoga-om-layer/test-negative/TypeMismatch.purs−22
This diff is too big to show here.
packages/yoga-om-layer/test/Playground.purs−89
This diff is too big to show here.
packages/yoga-om-layer/test/Test/Main.purs−123
This diff is too big to show here.
packages/yoga-om-layer/try-error.sh−57
This diff is too big to show here.
packages/yoga-om-layer/try-example.sh−48
This diff is too big to show here.
packages/yoga-om-node/README.md−107
This diff is too big to show here.
packages/yoga-om-node/package.json−11
This diff is too big to show here.
packages/yoga-om-node/spago.yaml−28
This diff is too big to show here.
packages/yoga-om-node/src/Test/Main.purs−12
This diff is too big to show here.
packages/yoga-om-node/src/Yoga/Om/Node.purs−167
This diff is too big to show here.
packages/yoga-om-node/src/Yoga/Om/Node.test.purs−56
This diff is too big to show here.
packages/yoga-om-rom/README.md−132
This diff is too big to show here.
packages/yoga-om-rom/package.json−11
This diff is too big to show here.
packages/yoga-om-rom/spago.yaml−31
This diff is too big to show here.
packages/yoga-om-rom/src/Test/Main.purs−12
This diff is too big to show here.
packages/yoga-om-rom/src/Yoga/Om/Rom.purs−160
This diff is too big to show here.
packages/yoga-om-rom/src/Yoga/Om/Rom.test.purs−24
This diff is too big to show here.
packages/yoga-om-strom/BENCHMARK.md−215
This diff is too big to show here.
packages/yoga-om-strom/COMPARISON.md−335
This diff is too big to show here.
packages/yoga-om-strom/DEMO.md−383
This diff is too big to show here.
packages/yoga-om-strom/DO_EXAMPLES.md−496
This diff is too big to show here.
packages/yoga-om-strom/DO_NOTATION.md−491
This diff is too big to show here.
packages/yoga-om-strom/INDEX.md−337
This diff is too big to show here.
packages/yoga-om-strom/INTEGRATION_GUIDE.md−334
This diff is too big to show here.
packages/yoga-om-strom/KAFKA_INTEGRATION.md−596
This diff is too big to show here.
packages/yoga-om-strom/MERGING.md−474
This diff is too big to show here.
packages/yoga-om-strom/MINIBENCH_SETUP.md−169
This diff is too big to show here.
packages/yoga-om-strom/QUICKREF.md−346
This diff is too big to show here.
packages/yoga-om-strom/QUICK_ANSWERS.md−324
This diff is too big to show here.
packages/yoga-om-strom/README.md−443
This diff is too big to show here.
packages/yoga-om-strom/STATUS.md−327
This diff is too big to show here.
packages/yoga-om-strom/SUMMARY.md−362
This diff is too big to show here.
packages/yoga-om-strom/TESTING.md−329
This diff is too big to show here.
packages/yoga-om-strom/TEST_COVERAGE.md−300
This diff is too big to show here.
packages/yoga-om-strom/benchmark/Benchmark.purs−198
This diff is too big to show here.
packages/yoga-om-strom/benchmark/Main.purs−8
This diff is too big to show here.
packages/yoga-om-strom/compare-results.mjs−199
This diff is too big to show here.
packages/yoga-om-strom/examples/DoVsOperators.purs−539
This diff is too big to show here.
packages/yoga-om-strom/examples/KafkaIntegration.js−209
This diff is too big to show here.
packages/yoga-om-strom/examples/KafkaIntegration.purs−436
This diff is too big to show here.
packages/yoga-om-strom/examples/MergingShowcase.purs−642
This diff is too big to show here.
packages/yoga-om-strom/examples/RealWorldDo.purs−422
This diff is too big to show here.
packages/yoga-om-strom/package.json−18
This diff is too big to show here.
packages/yoga-om-strom/run-benchmark.mjs−2
This diff is too big to show here.
packages/yoga-om-strom/run-minibench-all.sh−66
This diff is too big to show here.
packages/yoga-om-strom/run-minibench-bun.mjs−6
This diff is too big to show here.
packages/yoga-om-strom/run-minibench-deno.mjs−6
This diff is too big to show here.
packages/yoga-om-strom/run-minibench-node.mjs−6
This diff is too big to show here.
packages/yoga-om-strom/spago.yaml−41
This diff is too big to show here.
packages/yoga-om-strom/src/Benchmark.purs−202
This diff is too big to show here.
packages/yoga-om-strom/src/Benchmark/HighRes.js−9
This diff is too big to show here.
packages/yoga-om-strom/src/Benchmark/HighRes.purs−7
This diff is too big to show here.
packages/yoga-om-strom/src/Benchmark/MinibenchMain.purs−324
This diff is too big to show here.
packages/yoga-om-strom/src/Test/Main.purs−13
This diff is too big to show here.
packages/yoga-om-strom/src/Yoga/Om/Strom.purs−1473
This diff is too big to show here.
packages/yoga-om-strom/src/Yoga/Om/Strom.test.purs−575
This diff is too big to show here.
packages/yoga-om-strom/src/Yoga/Om/Strom/Examples.purs−523
This diff is too big to show here.
packages/yoga-om-strom/test/Test/Strom/Spec.purs−459
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.
This diff is too big to show here.