polyphony 0.36 → 0.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/test.yml +11 -2
- data/.gitignore +2 -2
- data/.rubocop.yml +30 -0
- data/CHANGELOG.md +28 -2
- data/Gemfile +0 -11
- data/Gemfile.lock +15 -14
- data/README.md +2 -1
- data/Rakefile +7 -3
- data/TODO.md +28 -95
- data/docs/_config.yml +56 -7
- data/docs/_sass/custom/custom.scss +0 -30
- data/docs/_sass/overrides.scss +0 -46
- data/docs/{user-guide → _user-guide}/all-about-timers.md +0 -0
- data/docs/_user-guide/index.md +9 -0
- data/docs/{user-guide → _user-guide}/web-server.md +0 -0
- data/docs/api-reference/fiber.md +2 -2
- data/docs/api-reference/index.md +9 -0
- data/docs/api-reference/polyphony-process.md +1 -1
- data/docs/api-reference/thread.md +1 -1
- data/docs/faq.md +21 -11
- data/docs/getting-started/index.md +10 -0
- data/docs/getting-started/installing.md +2 -6
- data/docs/getting-started/overview.md +507 -0
- data/docs/getting-started/tutorial.md +27 -19
- data/docs/index.md +3 -2
- data/docs/main-concepts/concurrency.md +0 -5
- data/docs/main-concepts/design-principles.md +69 -21
- data/docs/main-concepts/extending.md +1 -1
- data/docs/main-concepts/index.md +9 -0
- data/examples/core/01-spinning-up-fibers.rb +1 -0
- data/examples/core/03-interrupting.rb +4 -1
- data/examples/core/04-handling-signals.rb +19 -0
- data/examples/core/xx-agent.rb +102 -0
- data/examples/core/xx-fork-cleanup.rb +22 -0
- data/examples/core/xx-sleeping.rb +14 -6
- data/examples/io/tunnel.rb +48 -0
- data/examples/io/xx-irb.rb +1 -1
- data/examples/performance/thread-vs-fiber/polyphony_mt_server.rb +7 -6
- data/examples/performance/thread-vs-fiber/polyphony_server.rb +13 -36
- data/examples/performance/thread-vs-fiber/polyphony_server_read_loop.rb +58 -0
- data/examples/performance/xx-array.rb +11 -0
- data/examples/performance/xx-fiber-switch.rb +9 -0
- data/examples/performance/xx-snooze.rb +15 -0
- data/ext/{gyro → polyphony}/extconf.rb +2 -2
- data/ext/{gyro → polyphony}/fiber.c +18 -22
- data/ext/{gyro → polyphony}/libev.c +0 -0
- data/ext/{gyro → polyphony}/libev.h +0 -0
- data/ext/polyphony/libev_agent.c +718 -0
- data/ext/polyphony/libev_queue.c +216 -0
- data/ext/{gyro/gyro.c → polyphony/polyphony.c} +16 -46
- data/ext/{gyro/gyro.h → polyphony/polyphony.h} +25 -39
- data/ext/polyphony/polyphony_ext.c +23 -0
- data/ext/{gyro → polyphony}/socket.c +21 -18
- data/ext/polyphony/thread.c +206 -0
- data/ext/{gyro → polyphony}/tracing.c +1 -1
- data/lib/polyphony.rb +40 -44
- data/lib/polyphony/adapters/fs.rb +1 -4
- data/lib/polyphony/adapters/irb.rb +1 -1
- data/lib/polyphony/adapters/postgres.rb +6 -5
- data/lib/polyphony/adapters/process.rb +27 -23
- data/lib/polyphony/adapters/trace.rb +110 -105
- data/lib/polyphony/core/channel.rb +35 -35
- data/lib/polyphony/core/exceptions.rb +29 -29
- data/lib/polyphony/core/global_api.rb +94 -91
- data/lib/polyphony/core/resource_pool.rb +83 -83
- data/lib/polyphony/core/sync.rb +16 -16
- data/lib/polyphony/core/thread_pool.rb +49 -37
- data/lib/polyphony/core/throttler.rb +30 -23
- data/lib/polyphony/event.rb +27 -0
- data/lib/polyphony/extensions/core.rb +25 -17
- data/lib/polyphony/extensions/fiber.rb +269 -267
- data/lib/polyphony/extensions/io.rb +56 -26
- data/lib/polyphony/extensions/openssl.rb +5 -9
- data/lib/polyphony/extensions/socket.rb +29 -10
- data/lib/polyphony/extensions/thread.rb +19 -12
- data/lib/polyphony/net.rb +64 -60
- data/lib/polyphony/version.rb +1 -1
- data/polyphony.gemspec +4 -7
- data/test/helper.rb +14 -1
- data/test/stress.rb +17 -12
- data/test/test_agent.rb +124 -0
- data/test/{test_async.rb → test_event.rb} +15 -7
- data/test/test_ext.rb +25 -4
- data/test/test_fiber.rb +19 -10
- data/test/test_global_api.rb +4 -4
- data/test/test_io.rb +46 -24
- data/test/test_queue.rb +74 -0
- data/test/test_signal.rb +3 -40
- data/test/test_socket.rb +33 -0
- data/test/test_thread.rb +38 -16
- data/test/test_thread_pool.rb +2 -2
- data/test/test_throttler.rb +0 -1
- data/test/test_trace.rb +6 -5
- metadata +41 -57
- data/docs/_includes/nav.html +0 -51
- data/docs/_includes/prevnext.html +0 -17
- data/docs/_layouts/default.html +0 -106
- data/docs/api-reference.md +0 -11
- data/docs/api-reference/gyro-async.md +0 -57
- data/docs/api-reference/gyro-child.md +0 -29
- data/docs/api-reference/gyro-queue.md +0 -44
- data/docs/api-reference/gyro-timer.md +0 -51
- data/docs/api-reference/gyro.md +0 -25
- data/docs/getting-started.md +0 -10
- data/docs/main-concepts.md +0 -10
- data/docs/user-guide.md +0 -10
- data/examples/core/forever_sleep.rb +0 -19
- data/ext/gyro/async.c +0 -148
- data/ext/gyro/child.c +0 -127
- data/ext/gyro/gyro_ext.c +0 -33
- data/ext/gyro/io.c +0 -474
- data/ext/gyro/queue.c +0 -142
- data/ext/gyro/selector.c +0 -205
- data/ext/gyro/signal.c +0 -118
- data/ext/gyro/thread.c +0 -298
- data/ext/gyro/timer.c +0 -134
- data/test/test_timer.rb +0 -56
data/test/test_throttler.rb
CHANGED
data/test/test_trace.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require_relative 'helper'
|
4
|
+
require 'polyphony/adapters/trace'
|
4
5
|
|
5
6
|
class TraceTest < MiniTest::Test
|
6
7
|
def test_tracing_disabled
|
@@ -11,13 +12,13 @@ class TraceTest < MiniTest::Test
|
|
11
12
|
assert_equal 0, records.size
|
12
13
|
ensure
|
13
14
|
t&.disable
|
14
|
-
|
15
|
+
Polyphony.trace(nil)
|
15
16
|
end
|
16
17
|
|
17
18
|
def test_tracing_enabled
|
18
19
|
records = []
|
19
20
|
t = Polyphony::Trace.new(:fiber_all) { |r| records << r if r[:event] =~ /^fiber_/ }
|
20
|
-
|
21
|
+
Polyphony.trace(true)
|
21
22
|
t.enable
|
22
23
|
snooze
|
23
24
|
t.disable
|
@@ -28,14 +29,14 @@ class TraceTest < MiniTest::Test
|
|
28
29
|
assert_equal [Fiber.current], records.map { |r| r[:fiber] }.uniq
|
29
30
|
ensure
|
30
31
|
t&.disable
|
31
|
-
|
32
|
+
Polyphony.trace(nil)
|
32
33
|
end
|
33
34
|
|
34
35
|
def test_2_fiber_trace
|
35
36
|
records = []
|
36
37
|
t = Polyphony::Trace.new(:fiber_all) { |r| records << r if r[:event] =~ /^fiber_/ }
|
37
38
|
t.enable
|
38
|
-
|
39
|
+
Polyphony.trace(true)
|
39
40
|
|
40
41
|
f = spin { sleep 0 }
|
41
42
|
suspend
|
@@ -61,6 +62,6 @@ class TraceTest < MiniTest::Test
|
|
61
62
|
], events
|
62
63
|
ensure
|
63
64
|
t&.disable
|
64
|
-
|
65
|
+
Polyphony.trace(nil)
|
65
66
|
end
|
66
67
|
end
|
metadata
CHANGED
@@ -1,29 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: polyphony
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
4
|
+
version: '0.42'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sharon Rosner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-03
|
11
|
+
date: 2020-07-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: modulation
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '1.0'
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - "~>"
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '1.0'
|
27
13
|
- !ruby/object:Gem::Dependency
|
28
14
|
name: httparty
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,28 +86,28 @@ dependencies:
|
|
100
86
|
requirements:
|
101
87
|
- - '='
|
102
88
|
- !ruby/object:Gem::Version
|
103
|
-
version: 0.
|
89
|
+
version: 0.85.1
|
104
90
|
type: :development
|
105
91
|
prerelease: false
|
106
92
|
version_requirements: !ruby/object:Gem::Requirement
|
107
93
|
requirements:
|
108
94
|
- - '='
|
109
95
|
- !ruby/object:Gem::Version
|
110
|
-
version: 0.
|
96
|
+
version: 0.85.1
|
111
97
|
- !ruby/object:Gem::Dependency
|
112
98
|
name: pg
|
113
99
|
requirement: !ruby/object:Gem::Requirement
|
114
100
|
requirements:
|
115
101
|
- - '='
|
116
102
|
- !ruby/object:Gem::Version
|
117
|
-
version: 1.1.
|
103
|
+
version: 1.1.4
|
118
104
|
type: :development
|
119
105
|
prerelease: false
|
120
106
|
version_requirements: !ruby/object:Gem::Requirement
|
121
107
|
requirements:
|
122
108
|
- - '='
|
123
109
|
- !ruby/object:Gem::Version
|
124
|
-
version: 1.1.
|
110
|
+
version: 1.1.4
|
125
111
|
- !ruby/object:Gem::Dependency
|
126
112
|
name: rake-compiler
|
127
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -226,19 +212,19 @@ dependencies:
|
|
226
212
|
requirements:
|
227
213
|
- - "~>"
|
228
214
|
- !ruby/object:Gem::Version
|
229
|
-
version: 0.
|
215
|
+
version: 0.3.0
|
230
216
|
type: :development
|
231
217
|
prerelease: false
|
232
218
|
version_requirements: !ruby/object:Gem::Requirement
|
233
219
|
requirements:
|
234
220
|
- - "~>"
|
235
221
|
- !ruby/object:Gem::Version
|
236
|
-
version: 0.
|
222
|
+
version: 0.3.0
|
237
223
|
description:
|
238
224
|
email: ciconia@gmail.com
|
239
225
|
executables: []
|
240
226
|
extensions:
|
241
|
-
- ext/
|
227
|
+
- ext/polyphony/extconf.rb
|
242
228
|
extra_rdoc_files:
|
243
229
|
- README.md
|
244
230
|
files:
|
@@ -256,19 +242,14 @@ files:
|
|
256
242
|
- TODO.md
|
257
243
|
- bin/polyphony-debug
|
258
244
|
- docs/_config.yml
|
259
|
-
- docs/_includes/nav.html
|
260
|
-
- docs/_includes/prevnext.html
|
261
|
-
- docs/_layouts/default.html
|
262
245
|
- docs/_sass/custom/custom.scss
|
263
246
|
- docs/_sass/overrides.scss
|
264
|
-
- docs/
|
247
|
+
- docs/_user-guide/all-about-timers.md
|
248
|
+
- docs/_user-guide/index.md
|
249
|
+
- docs/_user-guide/web-server.md
|
265
250
|
- docs/api-reference/exception.md
|
266
251
|
- docs/api-reference/fiber.md
|
267
|
-
- docs/api-reference/
|
268
|
-
- docs/api-reference/gyro-child.md
|
269
|
-
- docs/api-reference/gyro-queue.md
|
270
|
-
- docs/api-reference/gyro-timer.md
|
271
|
-
- docs/api-reference/gyro.md
|
252
|
+
- docs/api-reference/index.md
|
272
253
|
- docs/api-reference/io.md
|
273
254
|
- docs/api-reference/object.md
|
274
255
|
- docs/api-reference/polyphony-baseexception.md
|
@@ -286,19 +267,17 @@ files:
|
|
286
267
|
- docs/assets/img/echo-fibers.svg
|
287
268
|
- docs/assets/img/sleeping-fiber.svg
|
288
269
|
- docs/faq.md
|
289
|
-
- docs/getting-started.md
|
270
|
+
- docs/getting-started/index.md
|
290
271
|
- docs/getting-started/installing.md
|
272
|
+
- docs/getting-started/overview.md
|
291
273
|
- docs/getting-started/tutorial.md
|
292
274
|
- docs/index.md
|
293
|
-
- docs/main-concepts.md
|
294
275
|
- docs/main-concepts/concurrency.md
|
295
276
|
- docs/main-concepts/design-principles.md
|
296
277
|
- docs/main-concepts/exception-handling.md
|
297
278
|
- docs/main-concepts/extending.md
|
298
279
|
- docs/main-concepts/fiber-scheduling.md
|
299
|
-
- docs/
|
300
|
-
- docs/user-guide/all-about-timers.md
|
301
|
-
- docs/user-guide/web-server.md
|
280
|
+
- docs/main-concepts/index.md
|
302
281
|
- examples/adapters/pg_client.rb
|
303
282
|
- examples/adapters/pg_notify.rb
|
304
283
|
- examples/adapters/pg_pool.rb
|
@@ -310,7 +289,8 @@ files:
|
|
310
289
|
- examples/core/01-spinning-up-fibers.rb
|
311
290
|
- examples/core/02-awaiting-fibers.rb
|
312
291
|
- examples/core/03-interrupting.rb
|
313
|
-
- examples/core/
|
292
|
+
- examples/core/04-handling-signals.rb
|
293
|
+
- examples/core/xx-agent.rb
|
314
294
|
- examples/core/xx-at_exit.rb
|
315
295
|
- examples/core/xx-caller.rb
|
316
296
|
- examples/core/xx-channels.rb
|
@@ -318,6 +298,7 @@ files:
|
|
318
298
|
- examples/core/xx-deferring-an-operation.rb
|
319
299
|
- examples/core/xx-erlang-style-genserver.rb
|
320
300
|
- examples/core/xx-exception-backtrace.rb
|
301
|
+
- examples/core/xx-fork-cleanup.rb
|
321
302
|
- examples/core/xx-fork-spin.rb
|
322
303
|
- examples/core/xx-fork-terminate.rb
|
323
304
|
- examples/core/xx-forking.rb
|
@@ -348,6 +329,7 @@ files:
|
|
348
329
|
- examples/core/xx-trace.rb
|
349
330
|
- examples/core/xx-using-a-mutex.rb
|
350
331
|
- examples/core/xx-worker-thread.rb
|
332
|
+
- examples/io/tunnel.rb
|
351
333
|
- examples/io/xx-backticks.rb
|
352
334
|
- examples/io/xx-echo_client.rb
|
353
335
|
- examples/io/xx-echo_client_from_stdin.rb
|
@@ -371,27 +353,14 @@ files:
|
|
371
353
|
- examples/performance/snooze_raw.rb
|
372
354
|
- examples/performance/thread-vs-fiber/polyphony_mt_server.rb
|
373
355
|
- examples/performance/thread-vs-fiber/polyphony_server.rb
|
356
|
+
- examples/performance/thread-vs-fiber/polyphony_server_read_loop.rb
|
374
357
|
- examples/performance/thread-vs-fiber/threaded_server.rb
|
375
358
|
- examples/performance/thread-vs-fiber/xx-httparty_multi.rb
|
376
359
|
- examples/performance/thread-vs-fiber/xx-httparty_threaded.rb
|
377
360
|
- examples/performance/thread_pool_perf.rb
|
378
|
-
-
|
379
|
-
-
|
380
|
-
-
|
381
|
-
- ext/gyro/fiber.c
|
382
|
-
- ext/gyro/gyro.c
|
383
|
-
- ext/gyro/gyro.h
|
384
|
-
- ext/gyro/gyro_ext.c
|
385
|
-
- ext/gyro/io.c
|
386
|
-
- ext/gyro/libev.c
|
387
|
-
- ext/gyro/libev.h
|
388
|
-
- ext/gyro/queue.c
|
389
|
-
- ext/gyro/selector.c
|
390
|
-
- ext/gyro/signal.c
|
391
|
-
- ext/gyro/socket.c
|
392
|
-
- ext/gyro/thread.c
|
393
|
-
- ext/gyro/timer.c
|
394
|
-
- ext/gyro/tracing.c
|
361
|
+
- examples/performance/xx-array.rb
|
362
|
+
- examples/performance/xx-fiber-switch.rb
|
363
|
+
- examples/performance/xx-snooze.rb
|
395
364
|
- ext/libev/Changes
|
396
365
|
- ext/libev/LICENSE
|
397
366
|
- ext/libev/README
|
@@ -408,6 +377,18 @@ files:
|
|
408
377
|
- ext/libev/ev_win32.c
|
409
378
|
- ext/libev/ev_wrap.h
|
410
379
|
- ext/libev/test_libev_win32.c
|
380
|
+
- ext/polyphony/extconf.rb
|
381
|
+
- ext/polyphony/fiber.c
|
382
|
+
- ext/polyphony/libev.c
|
383
|
+
- ext/polyphony/libev.h
|
384
|
+
- ext/polyphony/libev_agent.c
|
385
|
+
- ext/polyphony/libev_queue.c
|
386
|
+
- ext/polyphony/polyphony.c
|
387
|
+
- ext/polyphony/polyphony.h
|
388
|
+
- ext/polyphony/polyphony_ext.c
|
389
|
+
- ext/polyphony/socket.c
|
390
|
+
- ext/polyphony/thread.c
|
391
|
+
- ext/polyphony/tracing.c
|
411
392
|
- lib/polyphony.rb
|
412
393
|
- lib/polyphony/adapters/fs.rb
|
413
394
|
- lib/polyphony/adapters/irb.rb
|
@@ -422,6 +403,7 @@ files:
|
|
422
403
|
- lib/polyphony/core/sync.rb
|
423
404
|
- lib/polyphony/core/thread_pool.rb
|
424
405
|
- lib/polyphony/core/throttler.rb
|
406
|
+
- lib/polyphony/event.rb
|
425
407
|
- lib/polyphony/extensions/core.rb
|
426
408
|
- lib/polyphony/extensions/fiber.rb
|
427
409
|
- lib/polyphony/extensions/io.rb
|
@@ -436,20 +418,22 @@ files:
|
|
436
418
|
- test/helper.rb
|
437
419
|
- test/run.rb
|
438
420
|
- test/stress.rb
|
439
|
-
- test/
|
421
|
+
- test/test_agent.rb
|
422
|
+
- test/test_event.rb
|
440
423
|
- test/test_ext.rb
|
441
424
|
- test/test_fiber.rb
|
442
425
|
- test/test_global_api.rb
|
443
426
|
- test/test_io.rb
|
444
427
|
- test/test_kernel.rb
|
445
428
|
- test/test_process_supervision.rb
|
429
|
+
- test/test_queue.rb
|
446
430
|
- test/test_resource_pool.rb
|
447
431
|
- test/test_signal.rb
|
432
|
+
- test/test_socket.rb
|
448
433
|
- test/test_supervise.rb
|
449
434
|
- test/test_thread.rb
|
450
435
|
- test/test_thread_pool.rb
|
451
436
|
- test/test_throttler.rb
|
452
|
-
- test/test_timer.rb
|
453
437
|
- test/test_trace.rb
|
454
438
|
homepage: https://digital-fabric.github.io/polyphony
|
455
439
|
licenses:
|
data/docs/_includes/nav.html
DELETED
@@ -1,51 +0,0 @@
|
|
1
|
-
<nav role="navigation" aria-label="Main navigation">
|
2
|
-
<ul class="navigation-list">
|
3
|
-
{%- assign pages_list = site.html_pages | sort:"nav_order" -%}
|
4
|
-
{%- for node in pages_list -%}
|
5
|
-
{%- unless node.nav_exclude -%}
|
6
|
-
{%- if node.parent == nil -%}
|
7
|
-
<li class="navigation-list-item
|
8
|
-
{% if page.url == node.url %} active{% endif %}
|
9
|
-
{% if node.section %}section-title{% endif %}
|
10
|
-
">
|
11
|
-
{%- if page.parent == node.title or page.grand_parent == node.title -%}
|
12
|
-
{%- assign first_level_url = node.section_link | node.url | absolute_url -%}
|
13
|
-
{%- endif -%}
|
14
|
-
{%- if node.section -%}
|
15
|
-
<span class="section-title">{{ node.title }}</span>
|
16
|
-
{%- else -%}
|
17
|
-
<a href="{{ node.url | absolute_url }}" class="navigation-list-link{% if page.url == node.url %} active{% endif %}">{{ node.title }}</a>
|
18
|
-
{%- endif -%}
|
19
|
-
{%- if node.has_children -%}
|
20
|
-
{%- if node.alphabetical_order -%}
|
21
|
-
{%- assign children_list = site.html_pages | where: "parent", node.title | sort:"title" -%}
|
22
|
-
{%- else -%}
|
23
|
-
{%- assign children_list = site.html_pages | where: "parent", node.title | sort:"nav_order" -%}
|
24
|
-
{%- endif -%}
|
25
|
-
<ul class="navigation-list-child-list ">
|
26
|
-
{%- for child in children_list -%}
|
27
|
-
<li class="navigation-list-item {% if page.url == child.url or page.parent == child.title %} active{% endif %}">
|
28
|
-
{%- if page.url == child.url or page.parent == child.title -%}
|
29
|
-
{%- assign second_level_url = child.url | absolute_url -%}
|
30
|
-
{%- endif -%}
|
31
|
-
<a href="{{ child.url | absolute_url }}" class="navigation-list-link{% if page.url == child.url %} active{% endif %}">{{ child.title }}</a>
|
32
|
-
{%- if child.has_children -%}
|
33
|
-
{%- assign grand_children_list = site.html_pages | where: "parent", child.title | sort:"nav_order" -%}
|
34
|
-
<ul class="navigation-list-child-list">
|
35
|
-
{%- for grand_child in grand_children_list -%}
|
36
|
-
<li class="navigation-list-item {% if page.url == grand_child.url %} active{% endif %}">
|
37
|
-
<a href="{{ grand_child.url | absolute_url }}" class="navigation-list-link{% if page.url == grand_child.url %} active{% endif %}">{{ grand_child.title }}</a>
|
38
|
-
</li>
|
39
|
-
{%- endfor -%}
|
40
|
-
</ul>
|
41
|
-
{%- endif -%}
|
42
|
-
</li>
|
43
|
-
{%- endfor -%}
|
44
|
-
</ul>
|
45
|
-
{%- endif -%}
|
46
|
-
</li>
|
47
|
-
{%- endif -%}
|
48
|
-
{%- endunless -%}
|
49
|
-
{%- endfor -%}
|
50
|
-
</ul>
|
51
|
-
</nav>
|
@@ -1,17 +0,0 @@
|
|
1
|
-
{%- for node in site.html_pages -%}
|
2
|
-
{%- if page.prev_title == node.title -%}
|
3
|
-
{%- assign prev_url = node.url -%}
|
4
|
-
{%- endif -%}
|
5
|
-
{%- if page.next_title == node.title -%}
|
6
|
-
{%- assign next_url = node.url -%}
|
7
|
-
{%- endif -%}
|
8
|
-
{%- endfor -%}
|
9
|
-
<div id="prevnext">
|
10
|
-
{%- if prev_url -%}
|
11
|
-
<span class="prev"><a href="{{prev_url | relative_url}}">☜ {{page.prev_title}}</a></span>
|
12
|
-
{%- endif -%}
|
13
|
-
{%- if next_url -%}
|
14
|
-
<span class="next"><a href="{{next_url | relative_url}}">{{page.next_title}} ☞</a></span>
|
15
|
-
{%- endif -%}
|
16
|
-
<span class="clear"> </span>
|
17
|
-
</div>
|
data/docs/_layouts/default.html
DELETED
@@ -1,106 +0,0 @@
|
|
1
|
-
---
|
2
|
-
layout: table_wrappers
|
3
|
-
---
|
4
|
-
|
5
|
-
<!DOCTYPE html>
|
6
|
-
|
7
|
-
<html lang="{{ site.lang | default: "en-US" }}">
|
8
|
-
{% include head.html %}
|
9
|
-
<body>
|
10
|
-
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
|
11
|
-
<symbol id="link" viewBox="0 0 16 16">
|
12
|
-
<title>Link</title>
|
13
|
-
<path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path>
|
14
|
-
</symbol>
|
15
|
-
</svg>
|
16
|
-
|
17
|
-
<div class="page-wrap">
|
18
|
-
<div class="side-bar">
|
19
|
-
<div class="site-header">
|
20
|
-
<a href="{{ site.url }}{{ site.baseurl }}" class="site-title lh-tight">{% include title.html %}</a>
|
21
|
-
<button class="menu-button fs-3 js-main-nav-trigger" data-text-toggle="Hide" type="button">Menu</button>
|
22
|
-
</div>
|
23
|
-
|
24
|
-
<div class="navigation main-nav js-main-nav">
|
25
|
-
{% include nav.html %}
|
26
|
-
</div>
|
27
|
-
<footer class="site-footer">
|
28
|
-
<p class="text-small text-grey-dk-000 mb-4">This site uses <a href="https://github.com/pmarsceill/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll.</p>
|
29
|
-
</footer>
|
30
|
-
</div>
|
31
|
-
<div class="main-content-wrap js-main-content" tabindex="0">
|
32
|
-
<div class="main-content">
|
33
|
-
<div class="page-header js-page-header">
|
34
|
-
{% if site.search_enabled != false %}
|
35
|
-
<div class="search">
|
36
|
-
<div class="search-input-wrap">
|
37
|
-
<input type="text" class="js-search-input search-input" tabindex="0" placeholder="Search {{ site.title }}" aria-label="Search {{ site.title }}" autocomplete="off">
|
38
|
-
<svg width="14" height="14" viewBox="0 0 28 28" xmlns="http://www.w3.org/2000/svg" class="search-icon"><title>Search</title><g fill-rule="nonzero"><path d="M17.332 20.735c-5.537 0-10-4.6-10-10.247 0-5.646 4.463-10.247 10-10.247 5.536 0 10 4.601 10 10.247s-4.464 10.247-10 10.247zm0-4c3.3 0 6-2.783 6-6.247 0-3.463-2.7-6.247-6-6.247s-6 2.784-6 6.247c0 3.464 2.7 6.247 6 6.247z"/><path d="M11.672 13.791L.192 25.271 3.02 28.1 14.5 16.62z"/></g></svg>
|
39
|
-
</div>
|
40
|
-
<div class="js-search-results search-results-wrap"></div>
|
41
|
-
</div>
|
42
|
-
{% endif %}
|
43
|
-
{% if site.aux_links != nil %}
|
44
|
-
<ul class="list-style-none text-small aux-nav">
|
45
|
-
{% for link in site.aux_links %}
|
46
|
-
<li class="d-inline-block my-0{% unless forloop.last %} mr-2{% endunless %}"><a href="{{ link.last }}">{{ link.first }}</a></li>
|
47
|
-
{% endfor %}
|
48
|
-
</ul>
|
49
|
-
{% endif %}
|
50
|
-
</div>
|
51
|
-
<div class="page">
|
52
|
-
{% unless page.url == "/" %}
|
53
|
-
{% if page.parent %}
|
54
|
-
<nav class="breadcrumb-nav">
|
55
|
-
<ol class="breadcrumb-nav-list">
|
56
|
-
{% if page.grand_parent %}
|
57
|
-
<li class="breadcrumb-nav-list-item"><a href="{{ first_level_url }}">{{ page.grand_parent }}</a></li>
|
58
|
-
<li class="breadcrumb-nav-list-item"><a href="{{ second_level_url }}">{{ page.parent }}</a></li>
|
59
|
-
{% else %}
|
60
|
-
<li class="breadcrumb-nav-list-item"><a href="{{ first_level_url }}">{{ page.parent }}</a></li>
|
61
|
-
{% endif %}
|
62
|
-
<li class="breadcrumb-nav-list-item"><span>{{ page.title }}</span></li>
|
63
|
-
</ol>
|
64
|
-
</nav>
|
65
|
-
{% endif %}
|
66
|
-
{% endunless %}
|
67
|
-
<div id="main-content" class="page-content" role="main">
|
68
|
-
{% if site.heading_anchors != false %}
|
69
|
-
{% include vendor/anchor_headings.html html=content beforeHeading="true" anchorBody="<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><use xlink:href=\"#link\"></use></svg>" anchorClass="anchor-heading" %}
|
70
|
-
{% else %}
|
71
|
-
{{ content }}
|
72
|
-
{% endif %}
|
73
|
-
|
74
|
-
{% if page.prev_title or page.next_title %}
|
75
|
-
{% include prevnext.html %}
|
76
|
-
{% endif %}
|
77
|
-
|
78
|
-
{% if page.has_children == true and page.has_toc != false %}
|
79
|
-
<hr>
|
80
|
-
<h2 class="text-delta">Table of contents</h2>
|
81
|
-
{% assign children_list = site.pages | sort:"nav_order" %}
|
82
|
-
<ul>
|
83
|
-
{% for child in children_list %}
|
84
|
-
{% if child.parent == page.title and child.title != page.title %}
|
85
|
-
<li>
|
86
|
-
<a href="{{ child.url | absolute_url }}">{{ child.title }}</a>{% if child.summary %} - {{ child.summary }}{% endif %}
|
87
|
-
</li>
|
88
|
-
{% endif %}
|
89
|
-
{% endfor %}
|
90
|
-
</ul>
|
91
|
-
{% endif %}
|
92
|
-
|
93
|
-
{% if site.footer_content != nil %}
|
94
|
-
<hr>
|
95
|
-
<footer role="contentinfo">
|
96
|
-
<p class="text-small text-grey-dk-000 mb-0">{{ site.footer_content }}</p>
|
97
|
-
</footer>
|
98
|
-
{% endif %}
|
99
|
-
|
100
|
-
</div>
|
101
|
-
</div>
|
102
|
-
</div>
|
103
|
-
</div>
|
104
|
-
|
105
|
-
</body>
|
106
|
-
</html>
|