esolang 0.1.2 → 0.1.4

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.
data/doc/css/style.css ADDED
@@ -0,0 +1,497 @@
1
+ html {
2
+ width: 100%;
3
+ height: 100%;
4
+ }
5
+ body {
6
+ font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
7
+ font-size: 13px;
8
+ width: 100%;
9
+ margin: 0;
10
+ padding: 0;
11
+ display: flex;
12
+ display: -webkit-flex;
13
+ display: -ms-flexbox;
14
+ }
15
+
16
+ #nav {
17
+ position: relative;
18
+ width: 100%;
19
+ height: 100%;
20
+ border: 0;
21
+ border-right: 1px dotted #eee;
22
+ overflow: auto;
23
+ }
24
+ .nav_wrap {
25
+ margin: 0;
26
+ padding: 0;
27
+ width: 20%;
28
+ height: 100%;
29
+ position: relative;
30
+ display: flex;
31
+ display: -webkit-flex;
32
+ display: -ms-flexbox;
33
+ flex-shrink: 0;
34
+ -webkit-flex-shrink: 0;
35
+ -ms-flex: 1 0;
36
+ }
37
+ #resizer {
38
+ position: absolute;
39
+ right: -5px;
40
+ top: 0;
41
+ width: 10px;
42
+ height: 100%;
43
+ cursor: col-resize;
44
+ z-index: 9999;
45
+ }
46
+ #main {
47
+ flex: 5 1;
48
+ -webkit-flex: 5 1;
49
+ -ms-flex: 5 1;
50
+ outline: none;
51
+ position: relative;
52
+ background: #fff;
53
+ padding: 1.2em;
54
+ padding-top: 0.2em;
55
+ box-sizing: border-box;
56
+ }
57
+
58
+ @media (max-width: 920px) {
59
+ .nav_wrap { width: 100%; top: 0; right: 0; overflow: visible; position: absolute; }
60
+ #resizer { display: none; }
61
+ #nav {
62
+ z-index: 9999;
63
+ background: #fff;
64
+ display: none;
65
+ position: absolute;
66
+ top: 40px;
67
+ right: 12px;
68
+ width: 500px;
69
+ max-width: 80%;
70
+ height: 80%;
71
+ overflow-y: scroll;
72
+ border: 1px solid #999;
73
+ border-collapse: collapse;
74
+ box-shadow: -7px 5px 25px #aaa;
75
+ border-radius: 2px;
76
+ }
77
+ }
78
+
79
+ @media (min-width: 920px) {
80
+ body { height: 100%; overflow: hidden; }
81
+ #main { height: 100%; overflow: auto; }
82
+ #search { display: none; }
83
+ }
84
+
85
+ #main img { max-width: 100%; }
86
+ h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dotted #d5d5d5; }
87
+ h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; }
88
+ h1.title { margin-bottom: 10px; }
89
+ h1.alphaindex { margin-top: 0; font-size: 22px; }
90
+ h2 {
91
+ padding: 0;
92
+ padding-bottom: 3px;
93
+ border-bottom: 1px #aaa solid;
94
+ font-size: 1.4em;
95
+ margin: 1.8em 0 0.5em;
96
+ position: relative;
97
+ }
98
+ h2 small { font-weight: normal; font-size: 0.7em; display: inline; position: absolute; right: 0; }
99
+ h2 small a {
100
+ display: block;
101
+ height: 20px;
102
+ border: 1px solid #aaa;
103
+ border-bottom: 0;
104
+ border-top-left-radius: 5px;
105
+ background: #f8f8f8;
106
+ position: relative;
107
+ padding: 2px 7px;
108
+ }
109
+ .clear { clear: both; }
110
+ .inline { display: inline; }
111
+ .inline p:first-child { display: inline; }
112
+ .docstring, .tags, #filecontents { font-size: 15px; line-height: 1.5145em; }
113
+ .docstring p > code, .docstring p > tt, .tags p > code, .tags p > tt {
114
+ color: #c7254e; background: #f9f2f4; padding: 2px 4px; font-size: 1em;
115
+ border-radius: 4px;
116
+ }
117
+ .docstring h1, .docstring h2, .docstring h3, .docstring h4 { padding: 0; border: 0; border-bottom: 1px dotted #bbb; }
118
+ .docstring h1 { font-size: 1.2em; }
119
+ .docstring h2 { font-size: 1.1em; }
120
+ .docstring h3, .docstring h4 { font-size: 1em; border-bottom: 0; padding-top: 10px; }
121
+ .summary_desc .object_link a, .docstring .object_link a {
122
+ font-family: monospace; font-size: 1.05em;
123
+ color: #05a; background: #EDF4FA; padding: 2px 4px; font-size: 1em;
124
+ border-radius: 4px;
125
+ }
126
+ .rdoc-term { padding-right: 25px; font-weight: bold; }
127
+ .rdoc-list p { margin: 0; padding: 0; margin-bottom: 4px; }
128
+ .summary_desc pre.code .object_link a, .docstring pre.code .object_link a {
129
+ padding: 0px; background: inherit; color: inherit; border-radius: inherit;
130
+ }
131
+
132
+ /* style for <table> */
133
+ #filecontents table, .docstring table { border-collapse: collapse; }
134
+ #filecontents table th, #filecontents table td,
135
+ .docstring table th, .docstring table td { border: 1px solid #ccc; padding: 8px; padding-right: 17px; }
136
+ #filecontents table tr:nth-child(odd),
137
+ .docstring table tr:nth-child(odd) { background: #eee; }
138
+ #filecontents table tr:nth-child(even),
139
+ .docstring table tr:nth-child(even) { background: #fff; }
140
+ #filecontents table th, .docstring table th { background: #fff; }
141
+
142
+ /* style for <ul> */
143
+ #filecontents li > p, .docstring li > p { margin: 0px; }
144
+ #filecontents ul, .docstring ul { padding-left: 20px; }
145
+ /* style for <dl> */
146
+ #filecontents dl, .docstring dl { border: 1px solid #ccc; }
147
+ #filecontents dt, .docstring dt { background: #ddd; font-weight: bold; padding: 3px 5px; }
148
+ #filecontents dd, .docstring dd { padding: 5px 0px; margin-left: 18px; }
149
+ #filecontents dd > p, .docstring dd > p { margin: 0px; }
150
+
151
+ .note {
152
+ color: #222;
153
+ margin: 20px 0;
154
+ padding: 10px;
155
+ border: 1px solid #eee;
156
+ border-radius: 3px;
157
+ display: block;
158
+ }
159
+ .docstring .note {
160
+ border-left-color: #ccc;
161
+ border-left-width: 5px;
162
+ }
163
+ .note.todo { background: #ffffc5; border-color: #ececaa; }
164
+ .note.returns_void { background: #efefef; }
165
+ .note.deprecated { background: #ffe5e5; border-color: #e9dada; }
166
+ .note.title.deprecated { background: #ffe5e5; border-color: #e9dada; }
167
+ .note.private { background: #ffffc5; border-color: #ececaa; }
168
+ .note.title { padding: 3px 6px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; display: inline; }
169
+ .summary_signature + .note.title { margin-left: 7px; }
170
+ h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; }
171
+ .note.title { background: #efefef; }
172
+ .note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; }
173
+ .note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; }
174
+ .note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; }
175
+ .note.title.private { background: #d5d5d5; border-color: #c5c5c5; }
176
+ .note.title.not_defined_here { background: transparent; border: none; font-style: italic; }
177
+ .discussion .note { margin-top: 6px; }
178
+ .discussion .note:first-child { margin-top: 0; }
179
+
180
+ h3.inherited {
181
+ font-style: italic;
182
+ font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
183
+ font-weight: normal;
184
+ padding: 0;
185
+ margin: 0;
186
+ margin-top: 12px;
187
+ margin-bottom: 3px;
188
+ font-size: 13px;
189
+ }
190
+ p.inherited {
191
+ padding: 0;
192
+ margin: 0;
193
+ margin-left: 25px;
194
+ }
195
+
196
+ .box_info dl {
197
+ margin: 0;
198
+ border: 0;
199
+ width: 100%;
200
+ font-size: 1em;
201
+ display: flex;
202
+ display: -webkit-flex;
203
+ display: -ms-flexbox;
204
+ }
205
+ .box_info dl dt {
206
+ flex-shrink: 0;
207
+ -webkit-flex-shrink: 1;
208
+ -ms-flex-shrink: 1;
209
+ width: 100px;
210
+ text-align: right;
211
+ font-weight: bold;
212
+ border: 1px solid #aaa;
213
+ border-width: 1px 0px 0px 1px;
214
+ padding: 6px 0;
215
+ padding-right: 10px;
216
+ }
217
+ .box_info dl dd {
218
+ flex-grow: 1;
219
+ -webkit-flex-grow: 1;
220
+ -ms-flex: 1;
221
+ max-width: 420px;
222
+ padding: 6px 0;
223
+ padding-right: 20px;
224
+ border: 1px solid #aaa;
225
+ border-width: 1px 1px 0 0;
226
+ overflow: hidden;
227
+ position: relative;
228
+ }
229
+ .box_info dl:last-child > * {
230
+ border-bottom: 1px solid #aaa;
231
+ }
232
+ .box_info dl:nth-child(odd) > * { background: #eee; }
233
+ .box_info dl:nth-child(even) > * { background: #fff; }
234
+ .box_info dl > * { margin: 0; }
235
+
236
+ ul.toplevel { list-style: none; padding-left: 0; font-size: 1.1em; }
237
+ .index_inline_list { padding-left: 0; font-size: 1.1em; }
238
+
239
+ .index_inline_list li {
240
+ list-style: none;
241
+ display: inline-block;
242
+ padding: 0 12px;
243
+ line-height: 30px;
244
+ margin-bottom: 5px;
245
+ }
246
+
247
+ dl.constants { margin-left: 10px; }
248
+ dl.constants dt { font-weight: bold; font-size: 1.1em; margin-bottom: 5px; }
249
+ dl.constants.compact dt { display: inline-block; font-weight: normal }
250
+ dl.constants dd { width: 75%; white-space: pre; font-family: monospace; margin-bottom: 18px; }
251
+ dl.constants .docstring .note:first-child { margin-top: 5px; }
252
+
253
+ .summary_desc {
254
+ margin-left: 32px;
255
+ display: block;
256
+ font-family: sans-serif;
257
+ font-size: 1.1em;
258
+ margin-top: 8px;
259
+ line-height: 1.5145em;
260
+ margin-bottom: 0.8em;
261
+ }
262
+ .summary_desc tt { font-size: 0.9em; }
263
+ dl.constants .note { padding: 2px 6px; padding-right: 12px; margin-top: 6px; }
264
+ dl.constants .docstring { margin-left: 32px; font-size: 0.9em; font-weight: normal; }
265
+ dl.constants .tags { padding-left: 32px; font-size: 0.9em; line-height: 0.8em; }
266
+ dl.constants .discussion *:first-child { margin-top: 0; }
267
+ dl.constants .discussion *:last-child { margin-bottom: 0; }
268
+
269
+ .method_details { border-top: 1px dotted #ccc; margin-top: 25px; padding-top: 0; }
270
+ .method_details.first { border: 0; margin-top: 5px; }
271
+ .method_details.first h3.signature { margin-top: 1em; }
272
+ p.signature, h3.signature {
273
+ font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace;
274
+ padding: 6px 10px; margin-top: 1em;
275
+ background: #E8F4FF; border: 1px solid #d8d8e5; border-radius: 5px;
276
+ }
277
+ p.signature tt,
278
+ h3.signature tt { font-family: Monaco, Consolas, Courier, monospace; }
279
+ p.signature .overload,
280
+ h3.signature .overload { display: block; }
281
+ p.signature .extras,
282
+ h3.signature .extras { font-weight: normal; font-family: sans-serif; color: #444; font-size: 1em; }
283
+ p.signature .not_defined_here,
284
+ h3.signature .not_defined_here,
285
+ p.signature .aliases,
286
+ h3.signature .aliases { display: block; font-weight: normal; font-size: 0.9em; font-family: sans-serif; margin-top: 0px; color: #555; }
287
+ p.signature .aliases .names,
288
+ h3.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace; font-weight: bold; color: #000; font-size: 1.2em; }
289
+
290
+ .tags .tag_title { font-size: 1.05em; margin-bottom: 0; font-weight: bold; }
291
+ .tags .tag_title tt { color: initial; padding: initial; background: initial; }
292
+ .tags ul { margin-top: 5px; padding-left: 30px; list-style: square; }
293
+ .tags ul li { margin-bottom: 3px; }
294
+ .tags ul .name { font-family: monospace; font-weight: bold; }
295
+ .tags ul .note { padding: 3px 6px; }
296
+ .tags { margin-bottom: 12px; }
297
+
298
+ .tags .examples .tag_title { margin-bottom: 10px; font-weight: bold; }
299
+ .tags .examples .inline p { padding: 0; margin: 0; font-weight: bold; font-size: 1em; }
300
+ .tags .examples .inline p:before { content: "▸"; font-size: 1em; margin-right: 5px; }
301
+
302
+ .tags .overload .overload_item { list-style: none; margin-bottom: 25px; }
303
+ .tags .overload .overload_item .signature {
304
+ padding: 2px 8px;
305
+ background: #F1F8FF; border: 1px solid #d8d8e5; border-radius: 3px;
306
+ }
307
+ .tags .overload .signature { margin-left: -15px; font-family: monospace; display: block; font-size: 1.1em; }
308
+ .tags .overload .docstring { margin-top: 15px; }
309
+
310
+ .defines { display: none; }
311
+
312
+ #method_missing_details .notice.this { position: relative; top: -8px; color: #888; padding: 0; margin: 0; }
313
+
314
+ .showSource { font-size: 0.9em; }
315
+ .showSource a, .showSource a:visited { text-decoration: none; color: #666; }
316
+
317
+ #content a, #content a:visited { text-decoration: none; color: #05a; }
318
+ #content a:hover { background: #ffffa5; }
319
+
320
+ ul.summary {
321
+ list-style: none;
322
+ font-family: monospace;
323
+ font-size: 1em;
324
+ line-height: 1.5em;
325
+ padding-left: 0px;
326
+ }
327
+ ul.summary a, ul.summary a:visited {
328
+ text-decoration: none; font-size: 1.1em;
329
+ }
330
+ ul.summary li { margin-bottom: 5px; }
331
+ .summary_signature { padding: 4px 8px; background: #f8f8f8; border: 1px solid #f0f0f0; border-radius: 5px; }
332
+ .summary_signature:hover { background: #CFEBFF; border-color: #A4CCDA; cursor: pointer; }
333
+ .summary_signature.deprecated { background: #ffe5e5; border-color: #e9dada; }
334
+ ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;}
335
+ ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; }
336
+ #content .summary_signature:hover a,
337
+ #content .summary_signature:hover a:visited {
338
+ background: transparent;
339
+ color: #049;
340
+ }
341
+
342
+ p.inherited a { font-family: monospace; font-size: 0.9em; }
343
+ p.inherited { word-spacing: 5px; font-size: 1.2em; }
344
+
345
+ p.children { font-size: 1.2em; }
346
+ p.children a { font-size: 0.9em; }
347
+ p.children strong { font-size: 0.8em; }
348
+ p.children strong.modules { padding-left: 5px; }
349
+
350
+ ul.fullTree { display: none; padding-left: 0; list-style: none; margin-left: 0; margin-bottom: 10px; }
351
+ ul.fullTree ul { margin-left: 0; padding-left: 0; list-style: none; }
352
+ ul.fullTree li { text-align: center; padding-top: 18px; padding-bottom: 12px; background: url(data:image/gif;base64,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) no-repeat top center; }
353
+ ul.fullTree li:first-child { padding-top: 0; background: transparent; }
354
+ ul.fullTree li:last-child { padding-bottom: 0; }
355
+ .showAll ul.fullTree { display: block; }
356
+ .showAll .inheritName { display: none; }
357
+
358
+ #search { position: absolute; right: 12px; top: 0px; z-index: 9000; }
359
+ #search a {
360
+ display: block; float: left;
361
+ padding: 4px 8px; text-decoration: none; color: #05a; fill: #05a;
362
+ border: 1px solid #d8d8e5;
363
+ border-bottom-left-radius: 3px; border-bottom-right-radius: 3px;
364
+ background: #F1F8FF;
365
+ box-shadow: -1px 1px 3px #ddd;
366
+ }
367
+ #search a:hover { background: #f5faff; color: #06b; fill: #06b; }
368
+ #search a.active {
369
+ background: #568; padding-bottom: 20px; color: #fff; fill: #fff;
370
+ border: 1px solid #457;
371
+ border-top-left-radius: 5px; border-top-right-radius: 5px;
372
+ }
373
+ #search a.inactive { color: #999; fill: #999; }
374
+ .inheritanceTree, .toggleDefines {
375
+ float: right;
376
+ border-left: 1px solid #aaa;
377
+ position: absolute; top: 0; right: 0;
378
+ height: 100%;
379
+ background: #f6f6f6;
380
+ padding: 5px;
381
+ min-width: 55px;
382
+ text-align: center;
383
+ }
384
+
385
+ #menu { font-size: 1.3em; color: #bbb; }
386
+ #menu .title, #menu a { font-size: 0.7em; }
387
+ #menu .title a { font-size: 1em; }
388
+ #menu .title { color: #555; }
389
+ #menu a, #menu a:visited { color: #333; text-decoration: none; border-bottom: 1px dotted #bbd; }
390
+ #menu a:hover { color: #05a; }
391
+
392
+ #footer { margin-top: 15px; border-top: 1px solid #ccc; text-align: center; padding: 7px 0; color: #999; }
393
+ #footer a, #footer a:visited { color: #444; text-decoration: none; border-bottom: 1px dotted #bbd; }
394
+ #footer a:hover { color: #05a; }
395
+
396
+ #listing ul.alpha { font-size: 1.1em; }
397
+ #listing ul.alpha { margin: 0; padding: 0; padding-bottom: 10px; list-style: none; }
398
+ #listing ul.alpha li.letter { font-size: 1.4em; padding-bottom: 10px; }
399
+ #listing ul.alpha ul { margin: 0; padding-left: 15px; }
400
+ #listing ul small { color: #666; font-size: 0.7em; }
401
+
402
+ li.r1 { background: #f0f0f0; }
403
+ li.r2 { background: #fafafa; }
404
+
405
+ #content ul.summary li.deprecated .summary_signature a,
406
+ #content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; }
407
+
408
+ #toc {
409
+ position: relative;
410
+ float: right;
411
+ overflow-x: auto;
412
+ right: -3px;
413
+ margin-left: 20px;
414
+ margin-bottom: 20px;
415
+ padding: 20px; padding-right: 30px;
416
+ max-width: 300px;
417
+ z-index: 5000;
418
+ background: #fefefe;
419
+ border: 1px solid #ddd;
420
+ box-shadow: -2px 2px 6px #bbb;
421
+ }
422
+ #toc .title { margin: 0; }
423
+ #toc ol { padding-left: 1.8em; }
424
+ #toc li { font-size: 1.1em; line-height: 1.7em; }
425
+ #toc > ol > li { font-size: 1.1em; font-weight: bold; }
426
+ #toc ol > li > ol { font-size: 0.9em; }
427
+ #toc ol ol > li > ol { padding-left: 2.3em; }
428
+ #toc ol + li { margin-top: 0.3em; }
429
+ #toc.hidden { padding: 10px; background: #fefefe; box-shadow: none; }
430
+ #toc.hidden:hover { background: #fafafa; }
431
+ #filecontents h1 + #toc.nofloat { margin-top: 0; }
432
+ @media (max-width: 560px) {
433
+ #toc {
434
+ margin-left: 0;
435
+ margin-top: 16px;
436
+ float: none;
437
+ max-width: none;
438
+ }
439
+ }
440
+
441
+ /* syntax highlighting */
442
+ .source_code { display: none; padding: 3px 8px; border-left: 8px solid #ddd; margin-top: 5px; }
443
+ #filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
444
+ #filecontents pre.code, .docstring pre.code { display: block; }
445
+ .source_code .lines { padding-right: 12px; color: #555; text-align: right; }
446
+ #filecontents pre.code, .docstring pre.code,
447
+ .tags pre.example {
448
+ padding: 9px 14px;
449
+ margin-top: 4px;
450
+ border: 1px solid #e1e1e8;
451
+ background: #f7f7f9;
452
+ border-radius: 4px;
453
+ font-size: 1em;
454
+ overflow-x: auto;
455
+ line-height: 1.2em;
456
+ }
457
+ pre.code { color: #000; tab-size: 2; }
458
+ pre.code .info.file { color: #555; }
459
+ pre.code .val { color: #036A07; }
460
+ pre.code .tstring_content,
461
+ pre.code .heredoc_beg, pre.code .heredoc_end,
462
+ pre.code .qwords_beg, pre.code .qwords_end, pre.code .qwords_sep,
463
+ pre.code .words_beg, pre.code .words_end, pre.code .words_sep,
464
+ pre.code .qsymbols_beg, pre.code .qsymbols_end, pre.code .qsymbols_sep,
465
+ pre.code .symbols_beg, pre.code .symbols_end, pre.code .symbols_sep,
466
+ pre.code .tstring, pre.code .dstring { color: #036A07; }
467
+ pre.code .fid, pre.code .rubyid_new, pre.code .rubyid_to_s,
468
+ pre.code .rubyid_to_sym, pre.code .rubyid_to_f,
469
+ pre.code .dot + pre.code .id,
470
+ pre.code .rubyid_to_i pre.code .rubyid_each { color: #0085FF; }
471
+ pre.code .comment { color: #0066FF; }
472
+ pre.code .const, pre.code .constant { color: #585CF6; }
473
+ pre.code .label,
474
+ pre.code .symbol { color: #C5060B; }
475
+ pre.code .kw,
476
+ pre.code .rubyid_require,
477
+ pre.code .rubyid_extend,
478
+ pre.code .rubyid_include { color: #0000FF; }
479
+ pre.code .ivar { color: #318495; }
480
+ pre.code .gvar,
481
+ pre.code .rubyid_backref,
482
+ pre.code .rubyid_nth_ref { color: #6D79DE; }
483
+ pre.code .regexp, .dregexp { color: #036A07; }
484
+ pre.code a { border-bottom: 1px dotted #bbf; }
485
+ /* inline code */
486
+ *:not(pre) > code {
487
+ padding: 1px 3px 1px 3px;
488
+ border: 1px solid #E1E1E8;
489
+ background: #F7F7F9;
490
+ border-radius: 4px;
491
+ }
492
+
493
+ /* Color fix for links */
494
+ #content .summary_desc pre.code .id > .object_link a, /* identifier */
495
+ #content .docstring pre.code .id > .object_link a { color: #0085FF; }
496
+ #content .summary_desc pre.code .const > .object_link a, /* constant */
497
+ #content .docstring pre.code .const > .object_link a { color: #585CF6; }
@@ -0,0 +1,127 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>
7
+ File: README
8
+
9
+ &mdash; Documentation by YARD 0.9.34
10
+
11
+ </title>
12
+
13
+ <link rel="stylesheet" href="css/style.css" type="text/css" />
14
+
15
+ <link rel="stylesheet" href="css/common.css" type="text/css" />
16
+
17
+ <script type="text/javascript">
18
+ pathId = "README";
19
+ relpath = '';
20
+ </script>
21
+
22
+
23
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
24
+
25
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
26
+
27
+
28
+ </head>
29
+ <body>
30
+ <div class="nav_wrap">
31
+ <iframe id="nav" src="file_list.html?1"></iframe>
32
+ <div id="resizer"></div>
33
+ </div>
34
+
35
+ <div id="main" tabindex="-1">
36
+ <div id="header">
37
+ <div id="menu">
38
+
39
+ <a href="_index.html">Index</a> &raquo;
40
+ <span class="title">File: README</span>
41
+
42
+ </div>
43
+
44
+ <div id="search">
45
+
46
+ <a class="full_list_link" id="class_list_link"
47
+ href="class_list.html">
48
+
49
+ <svg width="24" height="24">
50
+ <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
51
+ <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
52
+ <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
53
+ </svg>
54
+ </a>
55
+
56
+ </div>
57
+ <div class="clear"></div>
58
+ </div>
59
+
60
+ <div id="content"><div id='filecontents'>
61
+ <h1 id="label-esolang">esolang</h1>
62
+
63
+ <p>A Ruby gem for interpreting esoteric programming languages.</p>
64
+
65
+ <p>Supported at the moment: Smallfuck, Boolfuck, Paintfuck, Brainfuck, Ook! (with method to feet the memory pointer with bananas)</p>
66
+
67
+ <p>This gem is inspired by <a href="https://www.codewars.com/kata/esolang-interpreters-number-1-introduction-to-esolangs-and-my-first-interpreter-ministringfuck">this</a> Kata Series on Codewars that ignited my passion for esolangs. Special thanks to the author <a href="https://www.codewars.com/users/donaldsebleung">donaldsebleung</a>.</p>
68
+
69
+ <p>Codesnippets for tests and examples are copies or variations from <a href="https://esolangs.org/">Esolangs wiki</a> or <a href="https://www.wikipedia.org/">Wikipedia</a></p>
70
+
71
+ <p>This is an ongoing fun and educational project, and the author assumes no liability for the accuracy and completeness of the implementations.</p>
72
+
73
+ <h2 id="label-Installation">Installation</h2>
74
+
75
+ <p>To use the <code>esolang</code> gem, you can install it via:</p>
76
+
77
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_gem'>gem</span> <span class='id identifier rubyid_install'>install</span> <span class='id identifier rubyid_esolang'>esolang</span>
78
+ </code></pre>
79
+
80
+ <h2 id="label-Example+Usage">Example Usage</h2>
81
+
82
+ <pre class="code ruby"><code class="ruby">require &#39;esolang&#39;
83
+ using Esolang::Refinements
84
+
85
+ code = &quot;;;;+;+;;+;+;
86
+ +;+;+;+;;+;;+;
87
+ ;;+;;+;+;;+;
88
+ ;;+;;+;+;;+;
89
+ +;;;;+;+;;+;
90
+ ;;+;;+;+;+;;
91
+ ;;;;;+;+;;
92
+ +;;;+;+;;;+;
93
+ +;;;;+;+;;+;
94
+ ;+;+;;+;;;+;
95
+ ;;+;;+;+;;+;
96
+ ;;+;+;;+;;+;
97
+ +;+;;;;+;+;;
98
+ ;+;+;+;
99
+
100
+ puts code.boolfuck
101
+ </code></pre>
102
+
103
+ <p>This gem adds string refinements. You can use the <code>boolfuck</code> method directly on a string:</p>
104
+
105
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_require'>require</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>esolang</span><span class='tstring_end'>&#39;</span></span>
106
+ <span class='id identifier rubyid_using'>using</span> <span class='const'><span class='object_link'><a href="Esolang.html" title="Esolang (module)">Esolang</a></span></span><span class='op'>::</span><span class='const'><span class='object_link'><a href="Esolang/Refinements.html" title="Esolang::Refinements (module)">Refinements</a></span></span>
107
+
108
+ <span class='id identifier rubyid_code'>code</span><span class='period'>.</span><span class='id identifier rubyid_boolfuck'>boolfuck</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>user_input</span><span class='tstring_end'>&#39;</span></span><span class='rparen'>)</span>
109
+ </code></pre>
110
+
111
+ <p>Alternatively, you can use the <code>Esolang</code> module:</p>
112
+
113
+ <pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_require'>require</span> <span class='tstring'><span class='tstring_beg'>&#39;</span><span class='tstring_content'>esolang</span><span class='tstring_end'>&#39;</span></span>
114
+
115
+ <span class='const'><span class='object_link'><a href="Esolang.html" title="Esolang (module)">Esolang</a></span></span><span class='period'>.</span><span class='id identifier rubyid_boolfuck'><span class='object_link'><a href="Esolang.html#boolfuck-class_method" title="Esolang.boolfuck (method)">boolfuck</a></span></span><span class='lparen'>(</span><span class='id identifier rubyid_code'>code</span><span class='comma'>,</span> <span class='id identifier rubyid_input'>input</span><span class='rparen'>)</span>
116
+ </code></pre>
117
+ </div></div>
118
+
119
+ <div id="footer">
120
+ Generated on Mon Jan 22 14:49:08 2024 by
121
+ <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
122
+ 0.9.34 (ruby-3.1.2).
123
+ </div>
124
+
125
+ </div>
126
+ </body>
127
+ </html>
@@ -0,0 +1,56 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
5
+ <meta charset="utf-8" />
6
+
7
+ <link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" />
8
+
9
+ <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" />
10
+
11
+
12
+
13
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
14
+
15
+ <script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
16
+
17
+
18
+ <title>File List</title>
19
+ <base id="base_target" target="_parent" />
20
+ </head>
21
+ <body>
22
+ <div id="content">
23
+ <div class="fixed_header">
24
+ <h1 id="full_list_header">File List</h1>
25
+ <div id="full_list_nav">
26
+
27
+ <span><a target="_self" href="class_list.html">
28
+ Classes
29
+ </a></span>
30
+
31
+ <span><a target="_self" href="method_list.html">
32
+ Methods
33
+ </a></span>
34
+
35
+ <span><a target="_self" href="file_list.html">
36
+ Files
37
+ </a></span>
38
+
39
+ </div>
40
+
41
+ <div id="search">Search: <input type="text" /></div>
42
+ </div>
43
+
44
+ <ul id="full_list" class="file">
45
+
46
+
47
+ <li id="object_README" class="odd">
48
+ <div class="item"><span class="object_link"><a href="index.html" title="README">README</a></span></div>
49
+ </li>
50
+
51
+
52
+
53
+ </ul>
54
+ </div>
55
+ </body>
56
+ </html>