fancy 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (94) hide show
  1. data/README.md +1 -0
  2. data/bin/fspec +3 -1
  3. data/boot/code_loader.rb +5 -1
  4. data/boot/compiler/parser/ext/fancy_parser.bundle +0 -0
  5. data/boot/fancy_ext.rb +2 -0
  6. data/boot/fancy_ext/bootstrap.rb +6 -0
  7. data/boot/fancy_ext/symbol.rb +9 -0
  8. data/boot/fancy_ext/thread.rb +22 -1
  9. data/boot/load.rb +1 -0
  10. data/boot/rbx-compiler/parser/Makefile +156 -0
  11. data/boot/rbx-compiler/parser/fancy_parser.bundle +0 -0
  12. data/boot/rbx-compiler/parser/lexer.c +2310 -0
  13. data/boot/rbx-compiler/parser/lexer.h +315 -0
  14. data/boot/rbx-compiler/parser/parser.c +2946 -0
  15. data/boot/rbx-compiler/parser/parser.h +151 -0
  16. data/doc/api/fancy.jsonp +1 -1
  17. data/doc/features.md +8 -0
  18. data/examples/actors.fy +5 -9
  19. data/examples/actors_primitive.fy +4 -3
  20. data/examples/actors_ring.fy +15 -14
  21. data/examples/dynamic.fy +8 -0
  22. data/examples/dynamic_output.fy +15 -0
  23. data/examples/parsing.fy +1 -0
  24. data/examples/person.fy +1 -2
  25. data/lib/array.fy +49 -11
  26. data/lib/block.fy +18 -24
  27. data/lib/boot.fy +1 -1
  28. data/lib/class.fy +6 -6
  29. data/lib/compiler/ast.fy +0 -1
  30. data/lib/compiler/ast/assign.fy +25 -0
  31. data/lib/compiler/ast/block.fy +1 -0
  32. data/lib/compiler/ast/identifier.fy +16 -0
  33. data/lib/compiler/ast/literals.fy +4 -0
  34. data/lib/compiler/ast/message_send.fy +16 -1
  35. data/lib/enumerable.fy +45 -18
  36. data/lib/enumerator.fy +15 -15
  37. data/lib/false_class.fy +8 -0
  38. data/lib/fancy_spec.fy +20 -20
  39. data/lib/future.fy +35 -18
  40. data/lib/hash.fy +2 -2
  41. data/lib/integer.fy +1 -17
  42. data/lib/iteration.fy +36 -36
  43. data/lib/object.fy +65 -30
  44. data/lib/package.fy +2 -2
  45. data/lib/package/installer.fy +6 -0
  46. data/lib/parser/ext/Makefile +156 -0
  47. data/lib/parser/ext/fancy_parser.bundle +0 -0
  48. data/lib/parser/ext/lexer.c +2392 -0
  49. data/lib/parser/ext/lexer.h +315 -0
  50. data/lib/parser/ext/lexer.lex +0 -10
  51. data/lib/parser/ext/parser.c +3251 -0
  52. data/lib/parser/ext/parser.h +161 -0
  53. data/lib/parser/ext/parser.y +0 -22
  54. data/lib/parser/methods.fy +1 -13
  55. data/lib/range.fy +3 -3
  56. data/lib/rbx.fy +1 -0
  57. data/lib/rbx/actor.fy +4 -4
  58. data/lib/rbx/alpha.fy +6 -0
  59. data/lib/rbx/array.fy +5 -44
  60. data/lib/rbx/bignum.fy +1 -12
  61. data/lib/rbx/block.fy +25 -0
  62. data/lib/rbx/class.fy +1 -7
  63. data/lib/rbx/date.fy +1 -5
  64. data/lib/rbx/file.fy +1 -4
  65. data/lib/rbx/fixnum.fy +4 -16
  66. data/lib/rbx/float.fy +1 -10
  67. data/lib/rbx/integer.fy +14 -2
  68. data/lib/rbx/io.fy +1 -5
  69. data/lib/rbx/mutex.fy +30 -0
  70. data/lib/rbx/object.fy +5 -11
  71. data/lib/rbx/process.fy +13 -0
  72. data/lib/rbx/range.fy +1 -5
  73. data/lib/rbx/string.fy +4 -11
  74. data/lib/rbx/thread.fy +9 -0
  75. data/lib/rbx/time.fy +1 -7
  76. data/lib/stack.fy +1 -1
  77. data/lib/string.fy +9 -9
  78. data/lib/symbol.fy +12 -7
  79. data/lib/tuple.fy +18 -3
  80. data/lib/vars.fy +3 -0
  81. data/ruby_lib/fspec +2 -2
  82. data/ruby_lib/fyi +2 -2
  83. data/ruby_lib/ifancy +2 -2
  84. data/tests/array.fy +25 -1
  85. data/tests/assignment.fy +55 -0
  86. data/tests/future.fy +28 -0
  87. data/tests/set.fy +20 -0
  88. data/tests/stack.fy +46 -0
  89. data/tests/string.fy +1 -1
  90. data/tests/tuple.fy +22 -0
  91. data/tools/fancy-mode.el +1 -1
  92. metadata +26 -8
  93. data/lib/compiler/ast/goto.fy +0 -46
  94. data/lib/message.fy +0 -6
@@ -0,0 +1,151 @@
1
+ /* A Bison parser, made by GNU Bison 2.3. */
2
+
3
+ /* Skeleton interface for Bison's Yacc-like parsers in C
4
+
5
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6
+ Free Software Foundation, Inc.
7
+
8
+ This program is free software; you can redistribute it and/or modify
9
+ it under the terms of the GNU General Public License as published by
10
+ the Free Software Foundation; either version 2, or (at your option)
11
+ any later version.
12
+
13
+ This program is distributed in the hope that it will be useful,
14
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ GNU General Public License for more details.
17
+
18
+ You should have received a copy of the GNU General Public License
19
+ along with this program; if not, write to the Free Software
20
+ Foundation, Inc., 51 Franklin Street, Fifth Floor,
21
+ Boston, MA 02110-1301, USA. */
22
+
23
+ /* As a special exception, you may create a larger work that contains
24
+ part or all of the Bison parser skeleton and distribute that work
25
+ under terms of your choice, so long as that work isn't itself a
26
+ parser generator using the skeleton or a modified version thereof
27
+ as a parser skeleton. Alternatively, if you modify or redistribute
28
+ the parser skeleton itself, you may (at your option) remove this
29
+ special exception, which will cause the skeleton and the resulting
30
+ Bison output files to be licensed under the GNU General Public
31
+ License without this special exception.
32
+
33
+ This special exception was added by the Free Software Foundation in
34
+ version 2.2 of Bison. */
35
+
36
+ /* Tokens. */
37
+ #ifndef YYTOKENTYPE
38
+ # define YYTOKENTYPE
39
+ /* Put the tokens into the symbol table, so that GDB and other debuggers
40
+ know about them. */
41
+ enum yytokentype {
42
+ LPAREN = 258,
43
+ RPAREN = 259,
44
+ LCURLY = 260,
45
+ RCURLY = 261,
46
+ LBRACKET = 262,
47
+ RBRACKET = 263,
48
+ LEFTHASH = 264,
49
+ RIGHTHASH = 265,
50
+ STAB = 266,
51
+ ARROW = 267,
52
+ THIN_ARROW = 268,
53
+ COMMA = 269,
54
+ SEMI = 270,
55
+ NL = 271,
56
+ COLON = 272,
57
+ RETURN_LOCAL = 273,
58
+ RETURN = 274,
59
+ TRY = 275,
60
+ CATCH = 276,
61
+ FINALLY = 277,
62
+ RETRY = 278,
63
+ SUPER = 279,
64
+ CLASS = 280,
65
+ DEF = 281,
66
+ DOT = 282,
67
+ DOLLAR = 283,
68
+ EQUALS = 284,
69
+ MATCH = 285,
70
+ CASE = 286,
71
+ IDENTIFIER = 287,
72
+ RUBY_SEND_OPEN = 288,
73
+ RUBY_OPER_OPEN = 289,
74
+ CONSTANT = 290,
75
+ INTEGER_LITERAL = 291,
76
+ HEX_LITERAL = 292,
77
+ OCT_LITERAL = 293,
78
+ BIN_LITERAL = 294,
79
+ DOUBLE_LITERAL = 295,
80
+ STRING_LITERAL = 296,
81
+ MULTI_STRING_LITERAL = 297,
82
+ SYMBOL_LITERAL = 298,
83
+ REGEX_LITERAL = 299,
84
+ OPERATOR = 300
85
+ };
86
+ #endif
87
+ /* Tokens. */
88
+ #define LPAREN 258
89
+ #define RPAREN 259
90
+ #define LCURLY 260
91
+ #define RCURLY 261
92
+ #define LBRACKET 262
93
+ #define RBRACKET 263
94
+ #define LEFTHASH 264
95
+ #define RIGHTHASH 265
96
+ #define STAB 266
97
+ #define ARROW 267
98
+ #define THIN_ARROW 268
99
+ #define COMMA 269
100
+ #define SEMI 270
101
+ #define NL 271
102
+ #define COLON 272
103
+ #define RETURN_LOCAL 273
104
+ #define RETURN 274
105
+ #define TRY 275
106
+ #define CATCH 276
107
+ #define FINALLY 277
108
+ #define RETRY 278
109
+ #define SUPER 279
110
+ #define CLASS 280
111
+ #define DEF 281
112
+ #define DOT 282
113
+ #define DOLLAR 283
114
+ #define EQUALS 284
115
+ #define MATCH 285
116
+ #define CASE 286
117
+ #define IDENTIFIER 287
118
+ #define RUBY_SEND_OPEN 288
119
+ #define RUBY_OPER_OPEN 289
120
+ #define CONSTANT 290
121
+ #define INTEGER_LITERAL 291
122
+ #define HEX_LITERAL 292
123
+ #define OCT_LITERAL 293
124
+ #define BIN_LITERAL 294
125
+ #define DOUBLE_LITERAL 295
126
+ #define STRING_LITERAL 296
127
+ #define MULTI_STRING_LITERAL 297
128
+ #define SYMBOL_LITERAL 298
129
+ #define REGEX_LITERAL 299
130
+ #define OPERATOR 300
131
+
132
+
133
+
134
+
135
+ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
136
+ typedef union YYSTYPE
137
+ #line 18 "/Users/backtype/projects/fancy/boot/rbx-compiler/parser/parser.y"
138
+ {
139
+ VALUE object;
140
+ ID symbol;
141
+ }
142
+ /* Line 1529 of yacc.c. */
143
+ #line 144 "/Users/backtype/projects/fancy/boot/rbx-compiler/parser/parser.h"
144
+ YYSTYPE;
145
+ # define yystype YYSTYPE /* obsolescent; will be withdrawn */
146
+ # define YYSTYPE_IS_DECLARED 1
147
+ # define YYSTYPE_IS_TRIVIAL 1
148
+ #endif
149
+
150
+ extern YYSTYPE yylval;
151
+
data/doc/api/fancy.jsonp CHANGED
@@ -1 +1 @@
1
- (function() { fancy.fdoc({title:"Fancy Documentation", classes:{"File":{ancestors:["File", "Enumerable", "IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Object", "Kernel"], doc:"<p>Instances of File represent files in the filesystem of the operating\nsystem on which Fancy is running.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":newline":{file:"lib/rbx/file.fy", doc:"<p>Writes a newline character to the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[189, 189]}, "write:":{file:"lib/rbx/file.fy", doc:"<p>Writes a given <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> to a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">str</code> </label><div>String to be written to a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</div></div></div>\n\n", arg:["str"], lines:[175, 175]}, "writeln:":{file:"lib/file.fy", doc:"<p>Writes a given argument as a String followed by a newline into the\nFile.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["x"], lines:[53, 53]}, "println:":{file:"lib/file.fy", doc:"<p>Writes a given argument as a String followed by a newline into the\nFile.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["x"], lines:[53, 53]}, "print:":{file:"lib/rbx/file.fy", doc:"<p>Writes a given <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> to a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">str</code> </label><div>String to be written to a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</div></div></div>\n\n", arg:["str"], lines:[175, 175]}, ":modes":{file:"lib/rbx/file.fy", doc:"<p>Returns the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> access modes <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> access modes <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[], lines:[144, 144]}, "modes:":{file:"lib/rbx/file.fy", doc:"<p>Sets the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> access modes <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">modes_arr</code> </label><div>New <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> access modes <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:["modes_arr"], lines:[154, 154]}, ":open?":{file:"lib/rbx/file.fy", doc:"<p>Indicates, if a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> is opened.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> opened, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[], lines:[164, 164]}, ":close":{file:"lib/rbx/file.fy", doc:"<p>Closes an opened <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[62, 62]}, ":directory?":{file:"lib/rbx/file.fy", doc:"<p>Indicates, if a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> is a <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> is a <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[], lines:[198, 198]}, "read:":{file:"lib/rbx/file.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">bytes</code> </label><div>Integer the amount of bytes to read from a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</div></div></div>\n\n", arg:["bytes"], lines:[183, 183]}}, methods:{"delete:":{file:"lib/rbx/file.fy", doc:"<p>Deletes a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> with a given <code data-lang=\"fancy\">filename</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Path to <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> to be deleted.</div></div></div>\n\n", arg:["filename"], lines:[113, 113]}, "open:modes:with:":{file:"lib/rbx/file.fy", doc:"<p>Opens a File with a given <code data-lang=\"fancy\">filename</code>, a <code data-lang=\"fancy\">modes_arr</code> (<code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>) and a <code data-lang=\"fancy\">block</code>.</p>\n\n<p>E.g. to open a File with read access and read all lines and print them to STDOUT:</p>\n\n<p> File open: \"foo.txt\" modes: ['read] with: |f| {</p>\n\n<pre><code> { f eof? } while_false: {\n f readln println\n }\n</code></pre>\n\n<p> }</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that gets called with the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> object that has been opened.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Filename to open/create.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">modes_arr</code> </label><div>Array of symbols that describe the desired operations to perform.</div></div></div>\n\n", arg:["filename", "modes_arr", "block"], lines:[33, 33]}, "touch:":{file:"lib/file.fy", doc:"<p>Creates a new empty file with the given <code data-lang=\"fancy\">filename</code>, if it doesn't already exist.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Name of <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> to be created, if not already existant.</div></div></div>\n\n", arg:["filename"], lines:[40, 40]}, "rename:to:":{file:"lib/rbx/file.fy", doc:"<p>Renames a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> on the filesystem.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">old_name</code> </label><div>Path to <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> to rename.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">new_name</code> </label><div>Path to new filename.</div></div></div>\n\n", arg:["old_name", "new_name"], lines:[134, 134]}, "exists?:":{file:"lib/rbx/file.fy", doc:"<p>Indicates if the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> with the given <code data-lang=\"fancy\">filename</code> exists.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Path to file to check for existance.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> exists, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["filename"], lines:[49, 49]}, "modes_str:":{file:"lib/rbx/file.fy", doc:"<p>Returns the appropriate <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of the <code data-lang=\"fancy\">modes_arr</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> that represents the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> access modifiers, as used by Ruby.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">modes_arr</code> </label><div>Array of symbols that describe the desired operations to perform.</div></div></div>\n\n", arg:["modes_arr"], lines:[94, 94]}, "directory?:":{file:"lib/rbx/file.fy", doc:"<p>Indicates, if a given <code data-lang=\"fancy\">path</code> refers to a <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">path</code> </label><div>Path to check if it's a <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if the <code data-lang=\"fancy\">path</code> refers to a <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["path"], lines:[124, 124]}, "open:modes:":{file:"lib/rbx/file.fy", doc:"<p>Similar to open:modes:with: but takes no <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> argument to be\ncalled with the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> instance.\nReturns the opened <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> instead and expects the caller to <code data-lang=\"fancy\">close</code> it manually.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Filename to open/create.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> instance that represents the opened <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">modes_arr</code> </label><div>Array of symbols that describe the desired operations to perform.</div></div></div>\n\n", arg:["filename", "modes_arr"], lines:[76, 76]}, "read:":{file:"lib/file.fy", doc:"<p>Reads all the contens (in ASCII mode) of a given file and returns\nthem as an Array of lines being read.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["filename"], lines:[24, 24]}}}, "Set":{ancestors:["Set", "FancyEnumerable", "Object", "Object", "Kernel"], doc:"<p>A simple Set data structure class.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{file:"lib/set.fy", doc:"<p>Initialize a new Set with a given collection of values.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">values</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FancyEnumerable\" class=\"class-ref selectable\">FancyEnumerable</code> of values to be used as values for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["values"], lines:[15, 15]}, ":-":{file:"lib/set.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other Set to use for creating difference Set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Difference Set by removing all values from <code data-lang=\"fancy\">self</code> that are in <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"], lines:[156, 156]}, ":initialize":{file:"lib/set.fy", doc:"<p>Initialize a new empty Set.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[26, 26]}, ":size":{file:"lib/set.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Amount of values in <code data-lang=\"fancy\">self</code> as a <code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code>.</div></div></div>\n\n", arg:[], lines:[42, 42]}, "remove:":{file:"lib/set.fy", doc:"<p>Removes a given object from a Set, if available.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be removed from <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["obj"], lines:[138, 138]}, ":inspect":{file:"lib/set.fy", doc:"<p>Returns a detailed <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of a Set.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[128, 128]}, ":<<":{file:"lib/set.fy", doc:"<p>Insert a value into the Set.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value to be inserted into <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["value"], lines:[88, 88]}, ":values":{file:"lib/set.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Values in self as an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[], lines:[34, 34]}, ":&":{file:"lib/set.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other Set to use for creating Set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Intersection Set containing only values that are in both <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"], lines:[169, 169]}, ":+":{file:"lib/set.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other Set to use for creating union Set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Union Set containing all values in both <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"], lines:[147, 147]}, ":==":{file:"lib/set.fy", doc:"<p>Indicates, if two Sets are equal.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Set\" class=\"class-ref selectable\">Set</code> to compare <code data-lang=\"fancy\">self</code> against.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if self is equal to <code data-lang=\"fancy\">other</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["other"], lines:[68, 68]}, "each:":{file:"lib/set.fy", doc:"<p>Calls a given Block for each element of the Set.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each value in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[111, 111]}, "includes?:":{file:"lib/set.fy", doc:"<p>Indicates, if the Set includes a given value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value to be checked for if included in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">value</code> in <code data-lang=\"fancy\">self</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["value"], lines:[100, 100]}, ":empty?":{file:"lib/set.fy", doc:"<p>Indicates, if a Set is empty.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if Set is emty, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[], lines:[52, 52]}, ":to_s":{file:"lib/set.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of a Set.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[120, 120]}}, methods:{":[]":{file:"lib/set.fy", doc:"<p>Initialize a new Set with a given collection of values.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">values</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FancyEnumerable\" class=\"class-ref selectable\">FancyEnumerable</code> of values used for new Set.</div></div></div>\n\n", arg:["values"], lines:[77, 77]}}}, "Struct":{ancestors:["Struct", "Enumerable", "Object", "Kernel"], doc:"<p>Structs are light-weight classes with predefined read-writable slots.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{"new:":{file:"lib/struct.fy", doc:"<p>Creates a new Struct class with the given slots.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slots</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of slotnames the new Struct should contain.</div></div></div>\n\n", arg:["slots"], lines:[14, 14]}}}, "Fancy Package":{ancestors:["Fancy Package", "Object", "Kernel"], doc:"<p>The Fancy Package System.</p>\n\n<p>This class is used for installing and uninstalling fancy packages on\nthe system.</p>\n\n<p>Example:\n $ fancy install bakkdoor/mongo.fy</p>\n\n<p>Will install the mongo.fy package from http://github.com/bakkdoor/mongo.fy\nin the latest released version or get the current HEAD (master\nbranch) revision.</p>\n\n<p>You can then load the package in your source file via\n require: \"mongo.fy\"</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{":add_to_loadpath":{file:"lib/package.fy", doc:"<p>Adds the Fancy Package install dir to the loadpath so you can\neasily <code data-lang=\"fancy\">require:</code> packages into your code.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[89, 89]}, "uninstall:":{file:"lib/package.fy", doc:"<p>Uninstalls a package with a given name (if installed).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">package_name</code> </label><div>Name of package to uninstall.</div></div></div>\n\n", arg:["package_name"], lines:[52, 52]}, ":list_packages":{file:"lib/package.fy", doc:"<p>Lists (prints) all installed packages on this system.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[60, 60]}, ":package_list_file":{file:"lib/package.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Path to installed_packages.txt <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> on system.</div></div></div>\n\n", arg:[], lines:[80, 80]}, ":root_dir":{file:"lib/package.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Fancy Package root install dir.</div></div></div>\n\n", arg:[], lines:[73, 73]}, "install:":{file:"lib/package.fy", doc:"<p>Installs a package with a given name.\nExpects package_name to be a string in the form of:\n user/repo\nWhich would get the package code from github.com/user/repo</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">package_name</code> </label><div>Name of package to install.</div></div></div>\n\n", arg:["package_name"], lines:[42, 42]}}}, "RespondsToProxy":{ancestors:["RespondsToProxy", "BasicObject", "Object", "Kernel"], doc:"<p>A RespondsToProxy is a Proxy that forwards any message sent to it to it's <code data-lang=\"fancy\">target</code> instance variable\nonly if it responds to that message. Any messages that <code data-lang=\"fancy\">target</code> doesn't respond to simply won't be sent\nand <code data-lang=\"fancy\">nil</code> will be returned.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{file:"lib/proxy.fy", doc:"<p>Initializes a new RespondsToProxy for <code data-lang=\"fancy\">target</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">target</code> </label><div>Target receiver object.</div></div></div>\n\n", arg:["@target"], lines:[48, 48]}, "unknown_message:with_params:":{file:"lib/proxy.fy", doc:"<p>Forwards all incoming message to <code data-lang=\"fancy\">self</code> to <code data-lang=\"fancy\">@target</code>\nonly if <code data-lang=\"fancy\">@target</code> responds to them.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">msg</code> </label><div>Incoming message name.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">params</code> </label><div>Paremeters of incoming message send.</div></div></div>\n\n", arg:["msg", "params"], lines:[62, 62]}}, methods:{}}, "Array":{ancestors:["Array", "FancyEnumerable", "Object", "Enumerable", "Object", "Kernel"], doc:"<p>Array class.\nArrays are dynamically resizable containers with a constant-time\nindex-based access to members.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":join":{file:"lib/array.fy", doc:"<p>Joins all elements with the empty <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.\n [\"hello\", \"world\", \"!\"] join # => \"hello,world!\"</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Elements of <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> joined to a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:[], lines:[230, 230]}, "index:":{file:"lib/rbx/array.fy", doc:"<p>Returns the index of an item (or nil, if it isn't in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">item</code> </label><div>Item/Value for which the index is requested within an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Index of the value passed in within the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>, or <code data-lang=\"fancy\">nil</code>, if value not present.</div></div></div>\n\n", arg:["item"], lines:[85, 85]}, "remove_if:":{file:"lib/array.fy", doc:"<p>Like <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> <code data-lang=\"fancy\" data-singleton-method-ref=\"remove:\" data-owner-class=\"Array\" class=\"singleton-method-ref selectable\">remove:</code>, but taking a condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.\nRemoves all elements that meet the given condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>, with all elements removed for which <code data-lang=\"fancy\">condition</code> yields true.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">condition</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (or <code data-lang=\"fancy\">Callable</code>) that indicates, if an element should be removed from <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["condition"], lines:[277, 277]}, ":second":{file:"lib/array.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The second element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[], lines:[82, 82]}, "select_with_index:":{file:"lib/array.fy", doc:"<p>Same as #select:, just gets also called with an additional argument\nfor each element's index value.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"], lines:[423, 423]}, ":first":{file:"lib/array.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The first element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[], lines:[75, 75]}, ":to_a":{file:"lib/array.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[322, 322]}, ":compact!":{file:"lib/array.fy", doc:"<p>Removes all nil-value elements in place.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:[], lines:[252, 252]}, "indices_of:":{file:"lib/array.fy", doc:"<p>Returns an Array of all indices of this item. Empty Array if item does not occur.\n [1, 'foo, 2, 'foo] indices_of: 'foo # => [1, 3]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">item</code> </label><div>Item/Value for which a list of indices is requested within an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all indices for a given value within an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> (possibly empty).</div></div></div>\n\n", arg:["item"], lines:[369, 369]}, "at:":{file:"lib/rbx/array.fy", doc:"<p>Returns the element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> at a given index.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index for value to retrieve.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value with the given index (if available), or <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["idx"], lines:[62, 62]}, "each:":{file:"lib/array.fy", doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"], lines:[126, 126]}, "reject:":{file:"lib/rbx/array.fy", doc:"<p>Returns a new Array with all the elements which yield nil or false\nwhen called with the given Block.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"], lines:[124, 124]}, "join:":{file:"lib/rbx/array.fy", doc:"<p>Joins all elements in the Array with a given <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.\n [1,2,3] join: \", \\\342\200\235 # => \\\342\200\2351, 2, 3\"</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">join_str</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> by which to <code data-lang=\"fancy\">join</code> all elements in <code data-lang=\"fancy\">self</code> into a new <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Joined <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> with all elements with <code data-lang=\"fancy\">join_str</code>.</div></div></div>\n\n", arg:["join_str"], lines:[145, 145]}, "remove_at:":{file:"lib/rbx/array.fy", doc:"<p>Removes an element at a given index.\nIf given an Array of indices, removes all the elements with these indices.\nReturns the deleted object if an index was given, the last deleted object for an Array given.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["index"], lines:[50, 50]}, "select!:":{file:"lib/array.fy", doc:"<p>Removes all elements in place, that don't meet the condition.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>, but changed with all elements removed that don't yield <code data-lang=\"fancy\">true</code> for <code data-lang=\"fancy\">condition</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">condition</code> </label><div>A condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (or something <code data-lang=\"fancy\">Callable</code>) for selecting items from <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["condition"], lines:[241, 241]}, ":indices":{file:"lib/array.fy", doc:"<p>Returns an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all the indices of an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.\n [1,2,3] indices # => [0,1,2]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all indices of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[357, 357]}, "values_at:":{file:"lib/array.fy", doc:"<p>Returns new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with elements at given indices.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx_arr</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of indices.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all the items with the given indices in <code data-lang=\"fancy\">idx_arr</code>.</div></div></div>\n\n", arg:["idx_arr"], lines:[202, 202]}, "at:put:":{file:"lib/rbx/array.fy", doc:"<p>Inserts a given object at a given index (position) in the Array.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index to set a value for.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Value (object) to be set at the given index.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">obj</div></div></div>\n\n\n<p></code></p>\n", arg:["idx", "obj"], lines:[73, 73]}, ":rest":{file:"lib/array.fy", doc:"<p>Returns all elements except the first one as a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>All elements in an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> after the first one.</div></div></div>\n\n", arg:[], lines:[105, 105]}, ":println":{file:"lib/array.fy", doc:"<p>Prints each element on a seperate line.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[287, 287]}, "all?:":{file:"lib/rbx/array.fy", doc:"<p>Takes condition-block and returns <code data-lang=\"fancy\">true</code> if all elements meet it.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>Predicate <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element until it returns <code data-lang=\"fancy\">false</code> for any one of them.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if all elements in <code data-lang=\"fancy\">self</code> yield <code data-lang=\"fancy\">true</code> for <code data-lang=\"fancy\">block</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["block"], lines:[115, 115]}, "append:":{file:"lib/array.fy", doc:"<p>Appends another <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> onto this one.</p>\n\n<p>Example:\n a = [1,2,3]\n a append: [3,4,5]\n a # => [1,2,3,3,4,5]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">arr</code> </label><div>Other <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> to be appended to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["arr"], lines:[47, 47]}, "from:to:":{file:"lib/array.fy", doc:"<p>Returns sub-array starting at from: and going to to:</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">from</code> </label><div>Start index for sub-array.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">to</code> </label><div>End index ofr sub-array.</div></div></div>\n\n", arg:["from", "to"], lines:[389, 389]}, "find_by:":{file:"lib/array.fy", doc:"<p>Like find: but takes a block that gets called with each element to find it.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The first element, for which <code data-lang=\"fancy\">block</code> yields <code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:["block"], lines:[191, 191]}, "find:":{file:"lib/array.fy", doc:"<p>Returns the item, if it's in the Array or nil (if not found).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">item</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> / Element to find in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">item</code> if, it's found in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>, otherwise <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["item"], lines:[176, 176]}, "any?:":{file:"lib/rbx/array.fy", doc:"<p>Takes condition-block and returns <code data-lang=\"fancy\">true</code> if any element meets it.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>Predicate <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element until it returns <code data-lang=\"fancy\">true</code> for any one of them.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if any element in <code data-lang=\"fancy\">self</code> yields <code data-lang=\"fancy\">true</code> for <code data-lang=\"fancy\">block</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["block"], lines:[105, 105]}, ":*":{file:"lib/array.fy", doc:"<p>Returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> that contains the elements of self num times\nin a row.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["num"], lines:[331, 331]}, "remove:":{file:"lib/array.fy", doc:"<p>Removes all occurances of obj in the Array.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be removed within <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>, with all occurances of <code data-lang=\"fancy\">obj</code> removed.</div></div></div>\n\n", arg:["obj"], lines:[264, 264]}, ":clone":{file:"lib/array.fy", doc:"<p>Clones (shallow copy) the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A shallow copy of the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[], lines:[27, 27]}, "reject!:":{file:"lib/rbx/array.fy", doc:"<p>Same as Array#reject: but doing so in-place (destructive).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"], lines:[132, 132]}, "[]:":{file:"lib/rbx/array.fy", doc:"<p>Inserts a given object at a given index (position) in the Array.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index to set a value for.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Value (object) to be set at the given index.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">obj</div></div></div>\n\n\n<p></code></p>\n", arg:["idx", "obj"], lines:[73, 73]}, ":inspect":{file:"lib/array.fy", doc:"<p>Returns a pretty-printed <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\">self</code>.\nExample:\n [1, 'foo, \"bar\", 42] inspect # => \"[1, 'foo, \\\"bar\\\", 42]\"</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Pretty-printed <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[308, 308]}, ":[]":{file:"lib/array.fy", doc:"<p>Given an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of 2 <code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code>s, it returns the sub-array between the given indices.\nIf given a single <code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code>, returns the element at that index.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">index</code> </label><div>Index to get the value for or <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of 2 indices used for a sub-array.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Element(s) stored in <code data-lang=\"fancy\">self</code> at <code data-lang=\"fancy\">index</code>, possibly <code data-lang=\"fancy\">nil</code> or an empty <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:["index"], lines:[68, 68]}, ":+":{file:"lib/array.fy", doc:"<p>Returns concatenation with another <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.\n [1,2,3] + [3,4,5] # => [1,2,3,3,4,5]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Concatenation of <code data-lang=\"fancy\">self</code> with another <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code></div></div></div>\n\n", arg:["other_arr"], lines:[346, 346]}, "select:":{file:"lib/array.fy", doc:"<p>Returns a new Array with all the elements in self that yield a\ntrue-ish value when called with the given Block.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>Predicate <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be used as filter.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all the elements for which <code data-lang=\"fancy\">block</code> doesn't yield <code data-lang=\"fancy\">false</code> or <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["block"], lines:[408, 408]}, ":third":{file:"lib/array.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The third element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[], lines:[89, 89]}, ":>>":{file:"lib/array.fy", doc:"<p>Returns new Array with elements of other_arr appended to these.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other_arr</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> to be appended to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>New <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with <code data-lang=\"fancy\">other_arr</code> and <code data-lang=\"fancy\">self</code> appended.</div></div></div>\n\n", arg:["other_arr"], lines:[217, 217]}, "each_with_index:":{file:"lib/array.fy", doc:"<p>Iterate over all elements in <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.\nCalls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each element and its index.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each element and its inde in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"], lines:[137, 137]}, "includes?:":{file:"lib/rbx/array.fy", doc:"<p>Indicates, if an Array includes a given value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to search for in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">obj</code> is in <code data-lang=\"fancy\">self</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["obj"], lines:[25, 25]}, ":fourth":{file:"lib/array.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The fourth element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[], lines:[96, 96]}, "last:":{file:"lib/rbx/array.fy", doc:"<p>Returns new Array with last n elements specified.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">count</code> </label><div>Number of last elements to get from an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with up to <code data-lang=\"fancy\">count</code> size of last elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["count"], lines:[95, 95]}, ":to_s":{file:"lib/array.fy", doc:"<p>Returns <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[], lines:[297, 297]}, ":=?":{file:"lib/array.fy", doc:"<p>Compares two Arrays where order does not matter.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> to compare this one to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if all elements of <code data-lang=\"fancy\">other</code> are in <code data-lang=\"fancy\">self</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["other"], lines:[159, 159]}}, methods:{"new:":{file:"lib/array.fy", doc:"<p>Creates a new Array with a given <code data-lang=\"fancy\">size</code> (default value is <code data-lang=\"fancy\">nil</code>).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">size</code> </label><div>Initial size of the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> to be created (values default to <code data-lang=\"fancy\">nil</code>).</div></div></div>\n\n", arg:["size"], lines:[17, 17]}, ":===":{file:"lib/array.fy", doc:"<p>Matches an <code data-lang=\"fancy\">Array</code> against another object.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">object</code> </label><div>Object to match <code data-lang=\"fancy\">self</code> against.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</code>, if no match, matched values (in an <code data-lang=\"fancy\">Array</code>) otherwise.</div></div></div>\n\n", arg:["object"], lines:[443, 443]}, "new:with:":{file:"lib/rbx/array.fy", doc:"<p>Creates a new Array with a given size and default-value.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["size", "default"], lines:[13, 13]}}}, "Fixnum":{ancestors:["Fixnum", "Number", "Object", "ImmediateValue", "Integer", "Precision", "Numeric", "Comparable", "Object", "Kernel"], doc:"<p>Standard class for integer values in Fancy.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "Directory":{ancestors:["Directory", "Object", "Kernel"], doc:"<p>Instances of <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> represent directories in the filesystem of\nthe operating system, in which Fancy is being run.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{"delete:":{file:"lib/rbx/directory.fy", doc:"<p>Deletes a directory with a given name, if it's empty.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">dirname</code> </label><div>Path to <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> to delete.</div></div></div>\n\n", arg:["dirname"], lines:[45, 45]}, "list:":{file:"lib/rbx/directory.fy", doc:"<p>Example usage:\n Directory list: \"tests/<em>*/</em>.fy\" # => [\"tests/file1.fy\", \"tests/more/file2.fy\"]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">pattern</code> </label><div>Directory pattern or name containing files to be returned as an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of files matching directory <code data-lang=\"fancy\">pattern</code>.</div></div></div>\n\n", arg:["pattern"], lines:[56, 56]}, "create:":{file:"lib/rbx/directory.fy", doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> on the filesystem, possibly throwing\nIOError Exceptions that might occur.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">dirname</code> </label><div>Path of <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> to create.</div></div></div>\n\n", arg:["dirname"], lines:[15, 15]}, "exists?:":{file:"lib/directory.fy", doc:"<p>Indicates, if a Directory exists with a given pathname.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">dirname</code> </label><div>Path of <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> to check for existance.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">@return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> exists, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["dirname"], lines:[15, 15]}, "create!:":{file:"lib/rbx/directory.fy", doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> on the filesystem, ignoring any\nExceptions that might occur.\nBasically works like running <code>mkdir -p</code> on the shell.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">dirname</code> </label><div>Path of <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> to create.</div></div></div>\n\n", arg:["dirname"], lines:[30, 30]}}}, "ProxyReceiver":{ancestors:["ProxyReceiver", "BasicObject", "Object", "Kernel"], doc:"<p>A ProxyReceiver is an object which proxies all message sends to it to 2 other objects.\nIt will send each message first to its <code data-lang=\"fancy\">proxy</code> instance variable and then to the <code data-lang=\"fancy\">obj</code> instance variable.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"unknown_message:with_params:":{file:"lib/proxy.fy", doc:"<p>Forwards all incoming messages to <code data-lang=\"fancy\">self</code> to <code data-lang=\"fancy\">@proxy</code> and then <code data-lang=\"fancy\">@obj</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">msg</code> </label><div>Incoming message name.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">params</code> </label><div>Paremeters of incoming message send.</div></div></div>\n\n", arg:["msg", "params"], lines:[26, 26]}, "initialize:for:":{file:"lib/proxy.fy", doc:"<p>Initializes a new ProxyReceiver with <code data-lang=\"fancy\">proxy</code> for <code data-lang=\"fancy\">obj</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">proxy</code> </label><div>Proxy receiver for <code data-lang=\"fancy\">obj</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Original receiver object.</div></div></div>\n\n", arg:["@proxy", "@obj"], lines:[16, 16]}}, methods:{}}, "NameError":{ancestors:["NameError", "StandardError", "Exception", "Object", "Kernel"], doc:"<p>NameError exception class. Used within Rubinius.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "Range":{ancestors:["Range", "FancyEnumerable", "Object", "Enumerable", "Object", "Kernel"], doc:"<p>Class of Range values. Are created by using Range literal syntax in Fancy.</p>\n\n<p>Example:\n (10..100) # Range from 10 to 100\n # the following code does the same as above:\n Range new: 10 to: 100</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"each:":{file:"lib/rbx/range.fy", doc:"<p>Calls <code data-lang=\"fancy\">block</code> on each value in <code data-lang=\"fancy\">self</code>. Used for iterating over a <code data-lang=\"fancy\" data-class-ref=\"Range\" class=\"class-ref selectable\">Range</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with every value in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[40, 40]}, "initialize:to:":{file:"lib/rbx/range.fy", doc:"<p>Initializes a new Range starting at <code data-lang=\"fancy\">start</code> and ending at <code data-lang=\"fancy\">end</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">end</code> </label><div>End element of Range.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">start</code> </label><div>Start element of Range.</div></div></div>\n\n", arg:["@start", "@end"], lines:[17, 17]}, ":to_s":{file:"lib/range.fy", doc:"<p>Same as Range#inspect</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[18, 18]}, ":inspect":{file:"lib/range.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[26, 26]}}, methods:{}}, "Thread":{ancestors:["Thread", "Object", "Kernel"], doc:"<p>Thread class.\nDeals with parallel execution.</p>\n\n<p>TODO:\n=> Still need to add more Fancy-ish wrapper methods and method\n documentation.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{"sleep:":{file:"lib/rbx/thread.fy", doc:"<p>Sets the Fancy process for a given amount of seconds to sleep.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["seconds"], lines:[78, 78]}}}, "Fancy Package Uninstaller":{ancestors:["Fancy Package Uninstaller", "Object", "Kernel"], doc:"<p><code data-lang=\"fancy\">Fancy</code> Package@ Uninstaller.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "Bignum":{ancestors:["Bignum", "Number", "Object", "Integer", "Precision", "Numeric", "Comparable", "Object", "Kernel"], doc:"<p>Class for large integer values in Fancy.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "MatchData":{ancestors:["MatchData", "Unmarshalable", "Object", "Kernel"], doc:"<p>MatchData instances are created when using the #=== match operator\n(e.g. by using match/case expressions).</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"at:":{file:"lib/rbx/match_data.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index of value to get.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value at index <code data-lang=\"fancy\">idx</code>.</div></div></div>\n\n", arg:["idx"], lines:[16, 16]}, ":to_a":{file:"lib/rbx/match_data.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> representation of <code data-lang=\"fancy\">self</code> containing matched values of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[24, 24]}}, methods:{}}, "NilClass":{ancestors:["NilClass", "ImmediateValue", "Object", "Kernel"], doc:"<p>NilClass. The class of the singleton <code data-lang=\"fancy\">nil</code> value.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"if_nil:else:":{file:"lib/nil_class.fy", doc:"<p>Calls <code data-lang=\"fancy\">then_block</code> with <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">then_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">else_block</code> </label><div>Gets ignored.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">then_block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["then_block", "else_block"], lines:[53, 53]}, "if_nil:":{file:"lib/nil_class.fy", doc:"<p>Calls <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[41, 41]}, ":nil?":{file:"lib/nil_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:[], lines:[61, 61]}, ":not":{file:"lib/nil_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:[], lines:[87, 87]}, "if_true:":{file:"lib/nil_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["block"], lines:[21, 21]}, "if_true:else:":{file:"lib/nil_class.fy", doc:"<p>Calls <code data-lang=\"fancy\">else_block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">else_block</code>.</div></div></div>\n\n", arg:["then_block", "else_block"], lines:[30, 30]}, ":to_a":{file:"lib/nil_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An empty <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[], lines:[79, 79]}, ":to_s":{file:"lib/nil_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An empty <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:[], lines:[69, 69]}, ":inspect":{file:"lib/nil_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</code> as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:[], lines:[95, 95]}}, methods:{":new":{file:"lib/nil_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:[], lines:[13, 13]}}}, "Regexp":{ancestors:["Regexp", "Object", "Kernel"], doc:"<p>Regular Expression class. Used by Regexp literals in Fancy.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "Date":{ancestors:["Date", "Comparable", "Object", "Kernel"], doc:"<p>Date class. Used for timely stuff.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "TCPSocket":{ancestors:["TCPSocket", "IPSocket", "BasicSocket", "IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Object", "Kernel"], doc:"<p>TCP Socket class.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{"open:port:":{file:"lib/rbx/tcp_socket.fy", doc:"<p>Creates and opens a new <code data-lang=\"fancy\" data-class-ref=\"TCPSocket\" class=\"class-ref selectable\">TCPSocket</code> on <code data-lang=\"fancy\">server</code> and <code data-lang=\"fancy\">port</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">server</code> </label><div>Server hostname to open Socket on.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">port</code> </label><div>Server port to open Socket on.</div></div></div>\n\n", arg:["server", "port"], lines:[17, 17]}}}, "Fancy Documentation":{ancestors:["Fancy Documentation", "Object", "Kernel"], doc:"<p>A Fancy Documentation object is a holder for docstrings and specs.\nKeeps a registry of documentation for anything Fancy.</p>\n\n<p>Provides methods for searching and formatting an Object's docstrings.\nThis can be be handy for users of the interactive Fancy REPL,\ndocument generators, instrospection tools, IDEs, anything!</p>\n\n<p>This object can be converted to just anything by using its format:\nmethod. Formatters can be registered with Fancy Documentation#formatter:is:</p>\n\n<p>By default two formatters are defined:</p>\n\n<p> 'fancy => Returns the Fancy::Documentation object\n 'string => Returns the docs string representation</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"format:":{file:"lib/documentation.fy", doc:"<p>If format is specified, the documentation string will be\nconverted using the corresponding formatter. This allows\nyou to extend Fancy documentation system, and produce\nhtml documents, man pages, or anything you can imagine.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["format"], lines:[58, 58]}, ":docs":{doc:"<p>An array of docstrings for the object beind documented.</p>\n\n<p>We have an array of docstrings because in Fancy, some\nthings like classes can be re-openned and the user may\nspecify new documentation for it each time. Thus we dont\nwant to loose the previous documentation but rather build\nupon it. That is, fancy supports incremental documentation.</p>\n\n<div class=\"doctags\"></div>\n\n"}, ":specs":{doc:"<p>An array of associated Fancy specs for the object\nbeing documented.</p>\n\n<p>Its a lot better to keep the associated specs in\nFancy Documentation objects instead of just having them\nin method instances. This allows us to associate any object\nwith an spec example.</p>\n\n<p>This way you can have a single Fancy spec example that\nis related to many objects (methods, constants, classes)\nthat are being specified. Later in documentation, we can\nprovide links to all specs where an object is being exercised.</p>\n\n<div class=\"doctags\"></div>\n\n"}}, methods:{"for:append:":{file:"lib/documentation.fy", doc:"<p>Append docstring to the documentation for obj.\nIf obj has no documentation, one is created for it.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["obj", "docstring"], lines:[70, 70]}, "remove:":{file:"lib/rbx/documentation.fy", doc:"<p>Removes the documentation for obj.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["obj"], lines:[55, 55]}, "formatter:is:":{file:"lib/documentation.fy", doc:"<p>Registers a callable object as formatter under name.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["name", "callable"], lines:[91, 91]}, ":formatters":{file:"lib/documentation.fy", doc:"<p>Obtain the hash of known documentation formatters.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[100, 100]}, "for:is:":{file:"lib/rbx/documentation.fy", doc:"<p>Create a Fancy::Documentation instance.</p>\n\n<p>Note: As we're bootstrapping, we cannot set documentation here as\nan string literal.</p>\n\n<p>We are the very first thing to load, so just create a new\nFancy::Documentation object without using new:, and set it as\nfancy docs.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["obj", "docstring"], lines:[38, 38]}, "for:":{file:"lib/rbx/documentation.fy", doc:"<p>Obtains the Fancy Documentation for obj.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["obj"], lines:[50, 50]}, "formatter:":{file:"lib/documentation.fy", doc:"<p>Obtains a formatter by a given name. Returns a callable object.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["name"], lines:[83, 83]}}}, "TrueClass":{ancestors:["TrueClass", "ImmediateValue", "Object", "Kernel"], doc:"<p>TrueClass. The class of the singleton <code data-lang=\"fancy\">true</code> value.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":not":{file:"lib/true_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:[], lines:[70, 70]}, "if_true:":{file:"lib/true_class.fy", doc:"<p>Calls <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[24, 24]}, "if_true:else:":{file:"lib/true_class.fy", doc:"<p>Calls <code data-lang=\"fancy\">then_block</code> with <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">then_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">else_block</code> </label><div>Gets ignored.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">then_block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["then_block", "else_block"], lines:[36, 36]}, ":true?":{file:"lib/true_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:[], lines:[44, 44]}, ":to_a":{file:"lib/true_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An empty <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[], lines:[62, 62]}, ":to_s":{file:"lib/true_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:[], lines:[52, 52]}, ":inspect":{file:"lib/true_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:[], lines:[52, 52]}}, methods:{":new":{file:"lib/true_class.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:[], lines:[13, 13]}}}, "Console":{ancestors:["Console", "Object", "Kernel"], doc:"<p>Console class. Used for <code data-lang=\"fancy\">STDIO</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{":newline":{file:"lib/rbx/console.fy", doc:"<p>Prints a newline to <code data-lang=\"fancy\">STDOUT</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[7, 7]}, ":readln":{file:"lib/rbx/console.fy", doc:"<p>Reads a line from <code data-lang=\"fancy\">STDIN</code> and returns it as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Line (<code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>) read from <code data-lang=\"fancy\">STDIN</code>.</div></div></div>\n\n", arg:[], lines:[55, 55]}, "println:":{file:"lib/rbx/console.fy", doc:"<p>Prints a given object on <code data-lang=\"fancy\">STDOUT</code>, followed by a newline.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be printed on <code data-lang=\"fancy\">STDOUT</code>, followed by a newline.</div></div></div>\n\n", arg:["obj"], lines:[27, 27]}, "print:":{file:"lib/rbx/console.fy", doc:"<p>Prints a given object on <code data-lang=\"fancy\">STDOUT</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be printed on <code data-lang=\"fancy\">STDOUT</code>.</div></div></div>\n\n", arg:["obj"], lines:[17, 17]}, ":clear":{file:"lib/rbx/console.fy", doc:"<p>Clears the <code data-lang=\"fancy\" data-class-ref=\"Console\" class=\"class-ref selectable\">Console</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[61, 61]}, "readln:":{file:"lib/rbx/console.fy", doc:"<p>Prints a given message to <code data-lang=\"fancy\">STDOUT</code>, followed by reading a line from\n<code data-lang=\"fancy\">STDIN</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> that should be printed to <code data-lang=\"fancy\">STDOUT</code> before reading from <code data-lang=\"fancy\">STDIN</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Line (<code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>) read from <code data-lang=\"fancy\">STDIN</code>.</div></div></div>\n\n", arg:["message"], lines:[40, 40]}}}, "FancyEnumerable":{ancestors:["FancyEnumerable", "Object", "Kernel"], doc:"<p>Mixin-Class with useful methods for collections that implement an <code data-lang=\"fancy\" data-method=\"each:\" class=\"selectable\">each:</code> method.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":first":{file:"lib/enumerable.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>First element in <code data-lang=\"fancy\">self</code> or <code data-lang=\"fancy\">nil</code>, if empty.</div></div></div>\n\n", arg:[], lines:[276, 276]}, "sort_by:":{file:"lib/enumerable.fy", doc:"<p>Sorts a collection by a given comparison block.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> taking 2 arguments used to compare elements in a collection.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Sorted <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[411, 411]}, "inject:into:":{file:"lib/enumerable.fy", doc:"<p>Same as reduce:init_val: but taking the initial value as first\nand the reducing block as second parameter.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["val", "block"], lines:[226, 226]}, "partition_by:":{file:"lib/enumerable.fy", doc:"<p>Example:\n 0 upto: 10 . partition_by: <code data-lang=\"fancy\">{&lt;</code> 3} # => [[0, 1, 2], [3, 4, 5, 6, 7, 8, 9, 10]]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that gets used to decide when to partition elements in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>s, partitioned by equal return values of calling <code data-lang=\"fancy\">block</code> with each element</div></div></div>\n\n", arg:["block"], lines:[371, 371]}, "each:in_between:":{file:"lib/enumerable.fy", doc:"<p>Similar to <code data-lang=\"fancy\" data-method=\"each:\" class=\"selectable\">each:</code> but calls an additional <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> between\ncalling the first <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> for each element in self.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["each_block", "between_block"], lines:[23, 23]}, ":max":{file:"lib/enumerable.fy", doc:"<p>Returns the maximum value in the Enumerable (via the '>' comparison message).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Maximum value in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[325, 325]}, "map:":{file:"lib/enumerable.fy", doc:"<p>Returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with the results of calling a given block for every element.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that gets called with each element in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> containing all values of calling <code data-lang=\"fancy\">block</code> with each element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[102, 102]}, ":last":{file:"lib/enumerable.fy", doc:"<p>Returns the last element in an Enumerable.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Last element in <code data-lang=\"fancy\">self</code> or <code data-lang=\"fancy\">nil</code>, if empty.</div></div></div>\n\n", arg:[], lines:[286, 286]}, ":uniq":{file:"lib/enumerable.fy", doc:"<p>Returns a new Array with all unique values (double entries are skipped).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all unique elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[235, 235]}, "take_while:":{file:"lib/enumerable.fy", doc:"<p>Returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> by taking elements from the beginning\nas long as they meet the given condition block.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all elements from the beginning until <code data-lang=\"fancy\">condition</code> yields <code data-lang=\"fancy\">false</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">condition</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that is used as a condition for filtering.</div></div></div>\n\n", arg:["condition"], lines:[145, 145]}, ":product":{file:"lib/enumerable.fy", doc:"<p>Calculates the product of all the elements in the <code data-lang=\"fancy\">Enumerable</code>\n(assuming them to be <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code>s (implementing <code data-lang=\"fancy\">+</code> &amp; <code data-lang=\"fancy\">*</code>)).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[352, 352]}, "reject:":{file:"lib/enumerable.fy", doc:"<p>Similar to <code data-lang=\"fancy\" data-method=\"select:\" class=\"selectable\">select:</code> but inverse.\nReturns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with all elements that don't meet the given condition block.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["condition"], lines:[130, 130]}, "in_groups_of:":{file:"lib/enumerable.fy", doc:"<p>Example usage:\n [1,2,3,4,5] in_groups_of: 3 # => [[1,2,3],[4,5]]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>s with a max size of <code data-lang=\"fancy\">size</code> (grouped).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">size</code> </label><div>Maximum size of each group.</div></div></div>\n\n", arg:["size"], lines:[422, 422]}, ":empty?":{file:"lib/enumerable.fy", doc:"<p>Indicates, if the Enumerable is empty (has no elements).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if size of <code data-lang=\"fancy\">self</code> is 0, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[], lines:[265, 265]}, ":compact":{file:"lib/enumerable.fy", doc:"<p>Returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with all values removed that are <code data-lang=\"fancy\">nil</code> ( return <code data-lang=\"fancy\">true</code> on <code data-lang=\"fancy\">nil?</code> ).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with all non-nil elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[301, 301]}, "superior_by:":{file:"lib/enumerable.fy", doc:"<p>Returns the superiour element in the <code data-lang=\"fancy\">Enumerable</code> that has met\nthe given comparison block with all other elements.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["comparison_block"], lines:[309, 309]}, ":average":{file:"lib/enumerable.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Average value in <code data-lang=\"fancy\">self</code> (expecting <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code>s or Objects implementing <code data-lang=\"fancy\">+</code> and <code data-lang=\"fancy\">*</code>).</div></div></div>\n\n", arg:[], lines:[359, 359]}, "all?:":{file:"lib/enumerable.fy", doc:"<p>Similar to <code data-lang=\"fancy\" data-class-ref=\"FancyEnumerable\" class=\"class-ref selectable\">FancyEnumerable</code> <code data-lang=\"fancy\" data-singleton-method-ref=\"any?:\" data-owner-class=\"FancyEnumerable\" class=\"singleton-method-ref selectable\">any?:</code> just checking for all elements.\nIndicates, if all elements meet the condition.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["condition"], lines:[57, 57]}, "find_by:":{file:"lib/enumerable.fy", doc:"<p>Similar to <code data-lang=\"fancy\" data-method=\"find:\" class=\"selectable\">find:</code> but takes a block that is called for each element to find it.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"], lines:[91, 91]}, "find:":{file:"lib/enumerable.fy", doc:"<p>Returns <code data-lang=\"fancy\">nil</code>, if <code data-lang=\"fancy\">item</code> (or anything that returns <code data-lang=\"fancy\">true</code> when comparing to <code data-lang=\"fancy\">item</code>) isn't found.\nOtherwise returns that element that is equal to <code data-lang=\"fancy\">item</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">item</code> </label><div>Item to be found in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The first element that is equal to <code data-lang=\"fancy\">item</code> or <code data-lang=\"fancy\">nil</code>, if none found.</div></div></div>\n\n", arg:["item"], lines:[79, 79]}, "drop:":{file:"lib/enumerable.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">amount</code> </label><div>Amount of elements to skip in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all but the first <code data-lang=\"fancy\">amount</code> elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["amount"], lines:[200, 200]}, ":size":{file:"lib/enumerable.fy", doc:"<p>Returns the size of an Enumerable.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Amount of elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[251, 251]}, "any?:":{file:"lib/enumerable.fy", doc:"<p>Indicates, if any element meets the condition.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">condition</code> yields <code data-lang=\"fancy\">true</code> for any element, <code data-lang=\"fancy\">false</code> otherwise.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">condition</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (or <code data-lang=\"fancy\">Callable</code>) that is used to check if any element in <code data-lang=\"fancy\">self</code> yields true for it.</div></div></div>\n\n", arg:["condition"], lines:[43, 43]}, "take:":{file:"lib/enumerable.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">amount</code> </label><div>Amount of elements to take from <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>First <code data-lang=\"fancy\">amount</code> elements of <code data-lang=\"fancy\">self</code> in an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:["amount"], lines:[187, 187]}, "drop_while:":{file:"lib/enumerable.fy", doc:"<p>Similar to <code data-lang=\"fancy\" data-method=\"take_while:\" class=\"selectable\">take_while:</code> but inverse.\nReturns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> by skipping elements from the beginning\nas long as they meet the given condition block.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["condition"], lines:[163, 163]}, ":sum":{file:"lib/enumerable.fy", doc:"<p>Calculates the sum of all the elements in the <code data-lang=\"fancy\">Enumerable</code>\n(assuming them to be <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code>s (implementing '+' &amp; '*')).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[343, 343]}, "select:":{file:"lib/enumerable.fy", doc:"<p>Returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with all elements that meet the given condition block.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> containing all elements in <code data-lang=\"fancy\">self</code> that yield <code data-lang=\"fancy\">true</code> when called with <code data-lang=\"fancy\">condition</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">condition</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that is used as a filter on all elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["condition"], lines:[117, 117]}, "includes?:":{file:"lib/enumerable.fy", doc:"<p>Indicates, if a collection includes a given element.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">item</code> </label><div>Item to check if it's included in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">item</code> in <code data-lang=\"fancy\">self</code>, otherwise <code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:["item"], lines:[15, 15]}, "reduce:init_val:":{file:"lib/enumerable.fy", doc:"<p>Calculates a value based on a given block to be called on an accumulator\nvalue and an initial value.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block", "init_val"], lines:[213, 213]}, ":random":{file:"lib/enumerable.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Random element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[394, 394]}, ":min":{file:"lib/enumerable.fy", doc:"<p>Returns the minimum value in the Enumerable (via the '&lt;' comparison message).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Minimum value in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[334, 334]}}, methods:{}}, "Tuple":{ancestors:["Rubinius Tuple", "FancyEnumerable", "Object", "Enumerable", "Object", "Kernel"], doc:"<p>Tuples are fixed-size containers providing index-based access to its\nelements.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":second":{file:"lib/tuple.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The second element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[31, 31]}, ":==":{file:"lib/tuple.fy", doc:"<p>Compares two <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code>s with each other.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> to compare <code data-lang=\"fancy\">self</code> with.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if tuples are equal element-wise, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["other"], lines:[82, 82]}, ":third":{file:"lib/tuple.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The third element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[39, 39]}, "at:":{file:"lib/rbx/tuple.fy", doc:"<p>Returns an element at a given indes.\nPossibly throws an <code data-lang=\"fancy\" data-class-ref=\"Rubinius\" class=\"class-ref selectable\">Rubinius</code> <code data-lang=\"fancy\" data-class-ref=\"Rubinius ObjectBoundsExceededError\" class=\"class-ref selectable\">ObjectBoundsExceededError</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index for the element to get.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Element at the given index within the <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> or <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["idx"], lines:[34, 34]}, "each:":{file:"lib/tuple.fy", doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each element in the <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Return value of calling <code data-lang=\"fancy\">block</code> on the last item in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[57, 57]}, ":first":{file:"lib/tuple.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The first element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[23, 23]}, ":fourth":{file:"lib/tuple.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The fourth element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[47, 47]}, "at:put:":{file:"lib/rbx/tuple.fy", doc:"<p>Sets a value for a given index within a <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index of element to set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">val</code> </label><div>Value to set at given index.</div></div></div>\n\n", arg:["idx", "val"], lines:[44, 44]}, ":inspect":{file:"lib/tuple.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[90, 90]}, "[]:":{file:"lib/rbx/tuple.fy", doc:"<p>Sets a value for a given index within a <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index of element to set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">val</code> </label><div>Value to set at given index.</div></div></div>\n\n", arg:["idx", "val"], lines:[44, 44]}, ":[]":{file:"lib/tuple.fy", doc:"<p>Forwards to <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code>#at:.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["idx"], lines:[15, 15]}}, methods:{"new:":{file:"lib/rbx/tuple.fy", doc:"<p>Initializes a new <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> with a given amount of element slots.\nE.g. if <code data-lang=\"fancy\">size</code> is <code data-lang=\"fancy\">2</code>, creates a 2-Tuple.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">size</code> </label><div>Size of the <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> (amount of values to hold).</div></div></div>\n\n", arg:["size"], lines:[16, 16]}, ":===":{file:"lib/tuple.fy", doc:"<p>Matches <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> class against an object.\nIf the given object is a Tuple instance, return a Tuple object.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be matched against</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Tuple instance containing the values of <code data-lang=\"fancy\">obj</code> to be used in pattern matching.</div></div></div>\n\n", arg:["obj"], lines:[112, 112]}}}, "NoMethodError":{ancestors:["NoMethodError", "NameError", "StandardError", "Exception", "Object", "Kernel"], doc:"<p>Exception class that gets thrown when a method wasn't found within a class.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":method_name":{file:"lib/rbx/no_method_error.fy", doc:"<p>Returns the name of the method that was not found as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Name of the method not found (as <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>).</div></div></div>\n\n", arg:[], lines:[13, 13]}}, methods:{}}, "Fancy BreakIteration":{ancestors:["Fancy BreakIteration", "StandardError", "Exception", "Object", "Kernel"], doc:"<p>Raised to break the current iteration.\nIt is rescued by Block#loop.</p>\n\n<p>Example:\n 10 times: |i| {</p>\n\n<pre><code> i println\n if: (i == 3) then: {\n Fancy BreakIteration new raise!\n }\n</code></pre>\n\n<p> }\n \"Done!\" println</p>\n\n<p>Produces:\n 0\n 1\n 2\n 3\n Done!</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "Actor":{ancestors:["Actor", "Object", "Kernel"], doc:"<p>Primitive Actor class.\nActors can be sent messages asynchronously. They process incoming messages\n(which can be any object, including Tuples, Arrays, Numbers ...) in a\nfirst-come, first-serve manner.</p>\n\n<p>Actors are used to implement asynchronous and future message sends in Fancy\nusing the <code data-lang=\"fancy\">@</code> and <code data-lang=\"fancy\">@@</code> syntax.</p>\n\n<p>Example usage:</p>\n\n<p> a = Actor spawn: {</p>\n\n<pre><code> loop: {\n match Actor receive {\n case 'hello -&gt; \"Hello World\" println\n case 'quit -&gt;\n \"OK, done!\" println\n break # Quit loop and let actor die\n }\n }\n</code></pre>\n\n<p> }</p>\n\n<p> 10 times: {</p>\n\n<pre><code> a ! 'hello # send 'hello to actor asynchronously\n</code></pre>\n\n<p> }\n a ! 'quit</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{"spawn:":{file:"lib/rbx/actor.fy", doc:"<p>Example usage:</p>\n\n<p> Actor spawn: {</p>\n\n<pre><code> loop: {\n Actor receive println # print all incoming messages\n }\n</code></pre>\n\n<p> }</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that represents the <code data-lang=\"fancy\" data-class-ref=\"Actor\" class=\"class-ref selectable\">Actor</code>'s code body to be executed in a new <code data-lang=\"fancy\" data-class-ref=\"Thread\" class=\"class-ref selectable\">Thread</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"Actor\" class=\"class-ref selectable\">Actor</code> running <code data-lang=\"fancy\">block</code> in a seperate <code data-lang=\"fancy\" data-class-ref=\"Thread\" class=\"class-ref selectable\">Thread</code>.</div></div></div>\n\n", arg:["block"], lines:[51, 51]}}}, "FancySpec SpecTest":{ancestors:["FancySpec SpecTest", "Object", "Kernel"], doc:"<p>FancySpec test case class.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{"failed_test:":{file:"lib/fancy_spec.fy", doc:"<p>Gets called when a SpecTest failed.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">actual_and_expected</code> </label><div>Pair of actual and expected values for a failed test case.</div></div></div>\n\n", arg:["test"], lines:[157, 157]}, "failed_negative_test:":{file:"lib/fancy_spec.fy", doc:"<p>Gets called when a negative SpecTest (using <code data-lang=\"fancy\" data-class-ref=\"NegativeMatcher\" class=\"class-ref selectable\">NegativeMatcher</code>) failed.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value that should not have occured.</div></div></div>\n\n", arg:["test"], lines:[169, 169]}}}, "String":{ancestors:["String", "FancyEnumerable", "Object", "Enumerable", "Comparable", "Object", "Kernel"], doc:"<p>Strings are sequences of characters and behave as such.\nAll literal Strings within Fancy code are instances of the String\nclass.</p>\n\n<p>They also include FancyEnumerable, which means you can use all the\ncommon sequence methods on them, like +map:+, +select:+ etc.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"append:":{file:"lib/rbx/string.fy", doc:"<p>Appends another <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> onto this <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<p>Example usage:\n str = \"hello\"\n str append: \" world!\"\n str # => \"hello world!\"</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">string</code> </label><div>Other <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> to append on <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>, but modified.</div></div></div>\n\n", arg:["string"], lines:[143, 143]}, ":blank?":{file:"lib/string.fy", doc:"<p>Indicates, if a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> consists only of whitespace.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">self</code> consists only of whitespace, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[], lines:[42, 42]}, "from:to:":{file:"lib/rbx/string.fy", doc:"<p>Returns a Substring from <code data-lang=\"fancy\">from</code> to <code data-lang=\"fancy\">to</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">from</code> </label><div>Start index.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">to</code> </label><div>End index.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Substring starting at index <code data-lang=\"fancy\">from</code> and ending at <code data-lang=\"fancy\">to</code>.</div></div></div>\n\n", arg:["from", "to"], lines:[41, 41]}, ":*":{file:"lib/string.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> that is the num-fold concatenation of itself.\n \"foo\" * 3 # => \\\342\200\235foofoofoo\"</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">num</code> </label><div>Amount of concatenations to do with <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> that is the num-fold concatenation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["num"], lines:[58, 58]}, ":lines":{file:"lib/string.fy", doc:"<p>Returns the lines of a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> as an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all the lines in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[102, 102]}, ":eval":{file:"lib/rbx/string.fy", doc:"<p>Evaluates a <code data-lang=\"fancy\">String</code> in the current <code data-lang=\"fancy\">Binding</code> and returns its value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of evaluating <code data-lang=\"fancy\">self</code> as Fancy code.</div></div></div>\n\n", arg:[], lines:[85, 85]}, ":<<":{file:"lib/string.fy", doc:"<p>Appends <code data-lang=\"fancy\">object's</code> <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation to <code data-lang=\"fancy\">self</code>.</p>\n\n<p>Example usage:\n str = \"hello\"\n str &lt;&lt; \" \"\n str &lt;&lt; 42\n str # => \"hello 42\"</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">object</code> </label><div>An <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> who's <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation will be appended to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>, but modified.</div></div></div>\n\n", arg:["object"], lines:[119, 119]}, ":[]":{file:"lib/rbx/string.fy", doc:"<p>Given an Array of 2 Numbers, it returns the substring between the given indices.\nIf given a Number, returns the character at that index.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["index"], lines:[30, 30]}, ":words":{file:"lib/string.fy", doc:"<p>\"hello world\" words # => [\"hello\", \"world\"]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all the whitespace seperated words in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[72, 72]}, "at:":{file:"lib/rbx/string.fy", doc:"<p>Returns the character (as a <code data-lang=\"fancy\">String</code>) at index <code data-lang=\"fancy\">idx</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index of the character to retrieve.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Character in <code data-lang=\"fancy\">self</code> at position <code data-lang=\"fancy\">idx</code>.</div></div></div>\n\n", arg:["idx"], lines:[59, 59]}, ":whitespace?":{file:"lib/string.fy", doc:"<p>Indicates, if a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> is empty or a single whitespace character.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">self</code> consists only of a single whitespace character or is empty, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[], lines:[32, 32]}, "each:":{file:"lib/rbx/string.fy", doc:"<p>Calls a given <code data-lang=\"fancy\">Block</code> with each character in a <code data-lang=\"fancy\">String</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\">Block</code> to be called for each character in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[49, 49]}, ":skip_leading_indentation":{file:"lib/string.fy", doc:"<p>Remove leading white space for multi-line strings.\nThis method expects the first character to be an line return.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[127, 127]}, ":split":{file:"lib/rbx/string.fy", doc:"<p>Splits a string by whitespace.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">Array</code> of all non-whitespace Substrings in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[77, 77]}, "split:":{file:"lib/rbx/string.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">str</code> </label><div><code data-lang=\"fancy\">String</code> where <code data-lang=\"fancy\">self</code> should be split at.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An <code data-lang=\"fancy\">Array</code> of <code data-lang=\"fancy\">String</code> values in <code data-lang=\"fancy\">self</code> that are seperated by <code data-lang=\"fancy\">str</code>.</div></div></div>\n\n", arg:["str"], lines:[68, 68]}, ":++":{file:"lib/string.fy", doc:"<p>Concatenate <code data-lang=\"fancy\">self</code> with another Object's <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation.\n \"foo\\\342\200\235 ++ 42 # => \\\342\200\235foo42\\\342\200\235</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Object to concatenate <code data-lang=\"fancy\">self</code> with as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Concatenation of <code data-lang=\"fancy\">self</code> with <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"], lines:[22, 22]}, "includes?:":{file:"lib/rbx/string.fy", doc:"<p>Indicates if a given substring is in <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">substring</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> to be checked if it's in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">substring</code> is in <code data-lang=\"fancy\">self</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["substring"], lines:[154, 154]}, ":rest":{file:"lib/string.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> containing all but the first character.\n \"hello\" rest # => \"ello\"</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> containing all but the first character.</div></div></div>\n\n", arg:[], lines:[92, 92]}, ":raise!":{file:"lib/string.fy", doc:"<p>Raises a new <code data-lang=\"fancy\" data-class-ref=\"StandardError\" class=\"class-ref selectable\">StandardError</code> with self as the message.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[80, 80]}, ":eval_global":{file:"lib/rbx/string.fy", doc:"<p>Same as <code data-lang=\"fancy\">String#eval</code> but evaluates <code data-lang=\"fancy\">self</code> in the global binding.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[93, 93]}}, methods:{}}, "Block":{ancestors:["Rubinius BlockEnvironment", "Object", "Kernel"], doc:"<p>The Block class (also BlockEnvironment) is the class of all\nBlock-literal values.\nA Block is a piece of unevaluated code, that can be passed around as\nany other value and evaluated by calling the +call+ or +call:+ methods.</p>\n\n<p>Blocks also work properly with their enclosing environment in that\nthey preserve any local variables that get used within the Block,\neven if the context in which they got defined has been destroyed.\n=> Blocks are proper closures.</p>\n\n<p>See: http://en.wikipedia.org/wiki/Closure_(computer_science) for\nmore information.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"if:":{file:"lib/block.fy", doc:"<p>Calls <code data-lang=\"fancy\">self</code> if <code data-lang=\"fancy\">obj</code> is true-ish.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Condition object to determine if <code data-lang=\"fancy\">self</code> should be called.</div></div></div>\n\n", arg:["obj"], lines:[106, 106]}, ":&&":{file:"lib/block.fy", doc:"<p>Short-circuiting &amp;&amp; (boolean AND).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["other_block"], lines:[86, 86]}, ":receiver":{file:"lib/rbx/block.fy", doc:"<p>Returns the receiver of the <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (value for <code data-lang=\"fancy\">self</code>)</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Receiver object of a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</div></div></div>\n\n", arg:[], lines:[13, 13]}, "while_nil:":{file:"lib/block.fy", doc:"<p>Executes a given Block while self evals to nil\nExample:\ni = 0\n{ i >= 10 } while_false: {\n i println\n i = i + 1\n}</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"], lines:[28, 28]}, "unless:":{file:"lib/block.fy", doc:"<p>Opposite of Block#if:. Calls <code data-lang=\"fancy\">self</code> if <code data-lang=\"fancy\">obj</code> is false-ish.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Condition object to determine if <code data-lang=\"fancy\">self</code> should not be called.</div></div></div>\n\n", arg:["obj"], lines:[116, 116]}, "while_false:":{file:"lib/block.fy", doc:"<p>Executes a given Block while self evals to nil\nExample:\ni = 0\n{ i >= 10 } while_false: {\n i println\n i = i + 1\n}</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"], lines:[28, 28]}, "until_do:":{file:"lib/block.fy", doc:"<p>Calls a given Block as long as <code data-lang=\"fancy\">self</code> yields <code data-lang=\"fancy\">nil</code> or <code data-lang=\"fancy\">false</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called while <code data-lang=\"fancy\">self</code> yields <code data-lang=\"fancy\">nil</code> or <code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:["block"], lines:[65, 65]}, ":===":{file:"lib/block.fy", doc:"<p>Matches a <code data-lang=\"fancy\">Block</code> against another object by calling <code data-lang=\"fancy\">self</code> with <code data-lang=\"fancy\">val</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">self</code> with <code data-lang=\"fancy\">val</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">val</code> </label><div>Other object to match <code data-lang=\"fancy\">self</code> against.</div></div></div>\n\n", arg:["val"], lines:[127, 127]}, "while_do:":{file:"lib/block.fy", doc:"<p>Calls <code data-lang=\"fancy\">work</code> while calling <code data-lang=\"fancy\">self</code> yields a <code data-lang=\"fancy\">true-ish</code> value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">work</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to call while <code data-lang=\"fancy\">self</code> yields <code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:["work"], lines:[54, 54]}, "until:":{file:"lib/block.fy", doc:"<p>Calls <code data-lang=\"fancy\">self</code> while <code data-lang=\"fancy\">block</code> yields <code data-lang=\"fancy\">nil</code> or <code data-lang=\"fancy\">false</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>Condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called to determine if <code data-lang=\"fancy\">self</code> should be called.</div></div></div>\n\n", arg:["block"], lines:[75, 75]}, "receiver:":{file:"lib/rbx/block.fy", doc:"<p>Sets the receiver (value for <code data-lang=\"fancy\">self</code>) of a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">recv</code> </label><div>New receiver object for a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</div></div></div>\n\n", arg:["recv"], lines:[22, 22]}, "while_true:":{file:"lib/block.fy", doc:"<p>Calls <code data-lang=\"fancy\">work</code> while calling <code data-lang=\"fancy\">self</code> yields a <code data-lang=\"fancy\">true-ish</code> value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">work</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to call while <code data-lang=\"fancy\">self</code> yields <code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:["work"], lines:[54, 54]}, ":||":{file:"lib/block.fy", doc:"<p>Short-circuiting || (boolean OR).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["other_block"], lines:[96, 96]}}, methods:{}}, "Number":{ancestors:["Number", "Object", "Kernel"], doc:"<p>Number is a mixin-class for all number values (integer &amp; floats for\nnow).</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":negate":{file:"lib/number.fy", doc:"<p>Negates a Number (-1 becomes 1 and vice versa).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Negated value of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[119, 119]}, ":abs":{file:"lib/number.fy", doc:"<p>Returns the absolute (positive) value of a Number.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Absolute (positive) value of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[110, 110]}, ":even?":{file:"lib/number.fy", doc:"<p>Indicates, if a Number is even.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">self</code> is even, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[], lines:[129, 129]}, "upto:do:":{file:"lib/number.fy", doc:"<p>Calls <code data-lang=\"fancy\">block</code> with each <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> between <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">num</code>.\nExpects <code data-lang=\"fancy\">num</code> to be greater or equal to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that should be called with each <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> between <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">num</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">num</code> </label><div>Maximum <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> to call <code data-lang=\"fancy\">block</code> with.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["num", "block"], lines:[34, 34]}, ":odd?":{file:"lib/number.fy", doc:"<p>Indicates, if a Number is odd.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">self</code> is odd, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[], lines:[139, 139]}, "downto:":{file:"lib/number.fy", doc:"<p>Returns an Array with Numbers starting at <code data-lang=\"fancy\">self</code> and going down to <code data-lang=\"fancy\">num</code>.\nExpects <code data-lang=\"fancy\">num</code> to be smaller or equal to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">num</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> to create an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> down to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> containing numbers from <code data-lang=\"fancy\">self</code> down to <code data-lang=\"fancy\">num</code>.</div></div></div>\n\n", arg:["num"], lines:[51, 51]}, "upto:":{file:"lib/number.fy", doc:"<p>Returns an Array with Numbers starting at <code data-lang=\"fancy\">self</code> and going up to <code data-lang=\"fancy\">num</code>.\nExpects <code data-lang=\"fancy\">num</code> to be greater or equal to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">num</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> to create an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> up to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> containing numbers from <code data-lang=\"fancy\">self</code> to <code data-lang=\"fancy\">num</code>.</div></div></div>\n\n", arg:["num"], lines:[16, 16]}, ":squared":{file:"lib/number.fy", doc:"<p>Returns the square of a Number.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Squared value of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[85, 85]}, ":doubled":{file:"lib/number.fy", doc:"<p>Returns the double value of a Number.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Doubled value of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[95, 95]}, "downto:do:":{file:"lib/number.fy", doc:"<p>Calls <code data-lang=\"fancy\">block</code> with each <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> between <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">num</code>.\nExpects <code data-lang=\"fancy\">num</code> to be smaller or equal to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that should be called with each <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> between <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">num</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">num</code> </label><div>Minimum <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> to call <code data-lang=\"fancy\">block</code> with.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["num", "block"], lines:[70, 70]}}, methods:{}}, "Fancy Package RubyDependency":{ancestors:["Fancy Package RubyDependency", "Object", "Kernel"], doc:"<p>Same as <code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Package\" class=\"class-ref selectable\">Package</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Package Dependency\" class=\"class-ref selectable\">Dependency</code>, just for rubygem packages.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{file:"lib/package/dependency.fy", doc:"<p>Forward to message initialize:version:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@gem_name"], lines:[22, 22]}}, methods:{}}, "Float":{ancestors:["Float", "Number", "Object", "Precision", "Numeric", "Comparable", "Object", "Kernel"], doc:"<p>Standard class for floating point number values in Fancy.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "FancySpec":{ancestors:["FancySpec", "Object", "Kernel"], doc:"<p>The FancySpec class is used for defining FancySpec testsuites.\nHave a look at the tests/ directory to see some examples.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{file:"lib/fancy_spec.fy", doc:"<p>Forward to message initialize:test_obj:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@description"], lines:[16, 16]}, "it:for:when:":{file:"lib/fancy_spec.fy", doc:"<p>Example usage:\n it: \"should be an empty Array\" with: 'empty? when: {</p>\n\n<pre><code> arr = [1,2,3]\n 3 times: { arr pop }\n arr empty? is == true\n</code></pre>\n\n<p> }</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">spec_info_string</code> </label><div>Info <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> related to the test case defined in <code data-lang=\"fancy\">spec_block</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">method_name</code> </label><div>Name of Method that this testcase is related to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">spec_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that holds the testcase's code (including assertions).</div></div></div>\n\n", arg:["spec_info_string", "method_name", "spec_block"], lines:[78, 78]}, ":run":{file:"lib/fancy_spec.fy", doc:"<p>Runs a FancySpec's test cases.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[113, 113]}, "initialize:test_obj:":{file:"lib/fancy_spec.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">description</code> </label><div>Description <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> for testcase.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">test_obj</code> </label><div>Object to be tested, defaults to <code data-lang=\"fancy\">description</code>.</div></div></div>\n\n", arg:["@description", "@test_obj"], lines:[16, 16]}, "it:with:when:":{file:"lib/fancy_spec.fy", doc:"<p>Example usage:\n it: \"should be an empty Array\" with: 'empty? when: {</p>\n\n<pre><code> arr = [1,2,3]\n 3 times: { arr pop }\n arr empty? is == true\n</code></pre>\n\n<p> }</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">spec_info_string</code> </label><div>Info <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> related to the test case defined in <code data-lang=\"fancy\">spec_block</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">method_name</code> </label><div>Name of Method that this testcase is related to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">spec_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that holds the testcase's code (including assertions).</div></div></div>\n\n", arg:["spec_info_string", "method_name", "spec_block"], lines:[78, 78]}, "before_each:":{file:"lib/fancy_spec.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be run before each test case.</div></div></div>\n\n", arg:["block"], lines:[96, 96]}, "after_each:":{file:"lib/fancy_spec.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be run after each test case.</div></div></div>\n\n", arg:["block"], lines:[104, 104]}, "it:when:":{file:"lib/fancy_spec.fy", doc:"<p>Example usage:\n it: \"should be an empty Array\" when: {</p>\n\n<pre><code> arr = [1,2,3]\n 3 times: { arr pop }\n arr empty? is == true\n</code></pre>\n\n<p> }</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">spec_info_string</code> </label><div>Info <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> related to the test case defined in <code data-lang=\"fancy\">spec_block</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">spec_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that holds the testcase's code (including assertions).</div></div></div>\n\n", arg:["spec_info_string", "spec_block"], lines:[60, 60]}}, methods:{"describe:for:with:":{file:"lib/fancy_spec.fy", doc:"<p>Similar to FancySpec##describe:with: but also taking an explicit <code data-lang=\"fancy\">test_obj</code>.</p>\n\n<p>FancySpec describe: \"My cool class\" for: MyCoolClass with: {\n # test cases using it:for:when: here.\n}</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["description", "test_obj", "block"], lines:[42, 42]}, "describe:with:":{file:"lib/fancy_spec.fy", doc:"<p>Factory method for creating FancySpec instances.\nCalls <code data-lang=\"fancy\">block</code> with the new FancySpec instance as the receiver, then runs it.</p>\n\n<p>FancySpec describe: MyTestClass with: {\n # test cases using it:for:when: here.\n}</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["test_obj", "block"], lines:[28, 28]}}}, "FalseClass":{ancestors:["FalseClass", "ImmediateValue", "Object", "Kernel"], doc:"<p>FalseClass. The class of the singleton <code data-lang=\"fancy\">false</code> value.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":not":{file:"lib/false_class.fy", doc:"<p>Boolean negation of <code data-lang=\"fancy\">false</code> => <code data-lang=\"fancy\">true</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</div></div></div>\n\n\n<p></code></p>\n", arg:[], lines:[54, 54]}, "if_true:":{file:"lib/false_class.fy", doc:"<p>Returns <code data-lang=\"fancy\">nil</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"], lines:[14, 14]}, "if_true:else:":{file:"lib/false_class.fy", doc:"<p>Calls <code data-lang=\"fancy\">else_block</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["then_block", "else_block"], lines:[19, 19]}, ":to_a":{file:"lib/false_class.fy", doc:"<p>Returns an empty <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[44, 44]}, ":to_s":{file:"lib/false_class.fy", doc:"<p>Returns <code data-lang=\"fancy\">false</code> as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[37, 37]}, ":inspect":{file:"lib/false_class.fy", doc:"<p>Returns <code data-lang=\"fancy\">false</code> as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[37, 37]}, ":false?":{file:"lib/false_class.fy", doc:"<p>Returns <code data-lang=\"fancy\">true</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[32, 32]}}, methods:{}}, "FancySpec PositiveMatcher":{ancestors:["FancySpec PositiveMatcher", "Object", "Kernel"], doc:"<p>PositiveMatcher expects its actual value to be equal to an\nexpected value.\nIf the values are not equal, a SpecTest failure is generated.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"unknown_message:with_params:":{file:"lib/fancy_spec.fy", doc:"<p>Forwards any other message and parameters to the object itself\nand checks the return value.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["msg", "params"], lines:[325, 325]}}, methods:{}}, "Fancy Documentation RDiscount":{ancestors:["Fancy Documentation RDiscount", "Object", "Kernel"], doc:"<p>A documentation formatter using ruby's RDiscount markdown</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{"rdiscount:":{file:"lib/documentation.fy", doc:"<p>Format string as HTML using RDiscount ruby gem.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["doc"], lines:[123, 123]}}}, "TCPServer":{ancestors:["TCPServer", "Socket ListenAndAccept", "IO Socketable", "TCPSocket", "IPSocket", "BasicSocket", "IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Object", "Kernel"], doc:"<p>TCP Server</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "Object":{ancestors:["Object", "Kernel"], doc:"<p>Root class of Fancy's class hierarchy.\nAll classes inherit from Object.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"send_async:with_params:":{file:"lib/object.fy", doc:"<p>Sends <code data-lang=\"fancy\">message</code> with <code data-lang=\"fancy\">params</code> to <code data-lang=\"fancy\">self</code> asynchronously and immediately returns <code data-lang=\"fancy\">nil</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">params</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of parameters as part of sending <code data-lang=\"fancy\">message</code> asynchronously to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>Message to be sent asynchronously to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</div></div></div>\n\n\n<p></code></p>\n", arg:["message", "params"], lines:[513, 513]}, "if_false:else:":{file:"lib/object.fy", doc:"<p>Calls <code data-lang=\"fancy\">else_block</code> (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">then_block</code> </label><div>Does not get called (default behaviour).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">else_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">else_block</code>.</div></div></div>\n\n", arg:["then_block", "else_block"], lines:[104, 104]}, ":break":{file:"lib/object.fy", doc:"<p>Breaks / Stops current iteration.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[421, 421]}, ":to_enum":{file:"lib/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FancyEnumerator\" class=\"class-ref selectable\">FancyEnumerator</code> for <code data-lang=\"fancy\">self</code> using 'each: for iteration.</div></div></div>\n\n", arg:[], lines:[155, 155]}, "returning:do:":{file:"lib/object.fy", doc:"<p>Returns <code data-lang=\"fancy\">value</code> after calling <code data-lang=\"fancy\">block</code> with it.\nUseful for returning some object after using it, e.g.:</p>\n\n<p> # this will return [1,2]\n returning: [] do: |arr| {</p>\n\n<pre><code> arr &lt;&lt; 1\n arr &lt;&lt; 2\n</code></pre>\n\n<p> }</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that gets called with <code data-lang=\"fancy\">value</code> before returning <code data-lang=\"fancy\">value</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value that gets returned at the end.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">value</div></div></div>\n\n\n<p></code></p>\n", arg:["value", "block"], lines:[335, 335]}, ":to_a":{file:"lib/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[139, 139]}, "do:while:":{file:"lib/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">cond_block</code> </label><div>Condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> used to determine if <code data-lang=\"fancy\">body_block@</code> should be called again.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">body_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called at least once and as long as <code data-lang=\"fancy\">cond_block</code> yields a true-ish value.</div></div></div>\n\n", arg:["body_block", "cond_block"], lines:[248, 248]}, "while:do:":{file:"lib/object.fy", doc:"<p>Same as:\ncond_block while_do: body_block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond_block", "body_block"], lines:[230, 230]}, "next:":{file:"lib/object.fy", doc:"<p>Returns <code data-lang=\"fancy\">value</code> for current iteration and skip to the next one.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value for next iteration.</div></div></div>\n\n", arg:["value"], lines:[413, 413]}, ":?":{file:"lib/object.fy", doc:"<p>Calls #value on <code data-lang=\"fancy\">future</code>. Shortcut method.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">future</code> </label><div>Future object to get the value from.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Result of calling #value on <code data-lang=\"fancy\">future</code>.</div></div></div>\n\n", arg:["future"], lines:[379, 379]}, ":&&":{file:"lib/object.fy", doc:"<p>Boolean conjunction.\nIf <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> are both true-ish (non-nil, non-false), returns <code data-lang=\"fancy\">other</code>.\nIf <code data-lang=\"fancy\">other</code> is a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>, calls it and returns its return value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Object or <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (for short-circuit evaluation) to compare <code data-lang=\"fancy\">self</code> to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">other</code> if both <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> are true-ish, <code data-lang=\"fancy\">self</code> otherwise.</div></div></div>\n\n", arg:["other"], lines:[183, 183]}, ":does_not":{file:"lib/fancy_spec.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"NegativeMatcher\" class=\"class-ref selectable\">NegativeMatcher</code> for self.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[412, 412]}, ":actor":{file:"lib/object.fy", doc:"<p>Returns the Object's actor.\nIf none exists at this moment, a new one will be created\nand starts running in the background.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[489, 489]}, "loop:":{file:"lib/object.fy", doc:"<p>Infinitely calls the block (loops).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called endlessly (loop).</div></div></div>\n\n", arg:["block"], lines:[26, 26]}, ":dclone":{file:"lib/rbx/object.fy", doc:"<p>Returns a deep clone of self using Ruby's Marshal class.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[23, 23]}, "if_true:":{file:"lib/object.fy", doc:"<p>Calls the <code data-lang=\"fancy\">block</code> (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[70, 70]}, "if_true:else:":{file:"lib/object.fy", doc:"<p>Calls the <code data-lang=\"fancy\">then_block</code> (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">then_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">else_block</code> </label><div>Does not get called (default behaviour).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">then_block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["then_block", "else_block"], lines:[83, 83]}, ":does":{file:"lib/fancy_spec.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"PositiveMatcher\" class=\"class-ref selectable\">PositiveMatcher</code> for self.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[393, 393]}, "do:":{file:"lib/object.fy", doc:"<p>Helper method that calls <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code> as the receiver.\nThis allows message cascading like code, e.g.:</p>\n\n<p> some_complex_object do: {</p>\n\n<pre><code> method_1: arg1\n method_2: arg2\n method_3: arg3\n</code></pre>\n\n<p> }</p>\n\n<p> # this is the same as:\n some_complex_object method_1: arg1\n some_complex_object method_2: arg2\n some_complex_object method_3: arg3</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called in the context of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[565, 565]}, "send_async:":{file:"lib/object.fy", doc:"<p>Forward to message send_async:with_params:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["message"], lines:[504, 504]}, "receive_message:with_params:":{file:"lib/rbx/object.fy", doc:"<p>Dynamically sends a given message with parameters to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">params</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of parameters used with <code data-lang=\"fancy\">message</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>Name of message to be sent to <code data-lang=\"fancy\">self</code> dynamically.</div></div></div>\n\n", arg:["message", "params"], lines:[116, 116]}, ":next":{file:"lib/object.fy", doc:"<p>Skip to the next iteration.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[403, 403]}, ":nil?":{file:"lib/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:[], lines:[115, 115]}, "receive_message:":{file:"lib/rbx/object.fy", doc:"<p>Dynamically sends a given message (without parameters) to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>Name of message to be sent to <code data-lang=\"fancy\">self</code> dynamically.</div></div></div>\n\n", arg:["message"], lines:[105, 105]}, ":yield":{file:"lib/object.fy", doc:"<p>Same as Fiber##yield.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[387, 387]}, "set_slot:value:":{file:"lib/rbx/object.fy", doc:"<p>Sets an object's slot with a given value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to be set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">val</code> </label><div>Value for slot to be set.</div></div></div>\n\n", arg:["slotname", "val"], lines:[43, 43]}, ":true?":{file:"lib/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:[], lines:[131, 131]}, ":!=":{file:"lib/object.fy", doc:"<p>Indicates, if two objects are not equal.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other object to compare against.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">self</code> is not equal to <code data-lang=\"fancy\">other</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["other"], lines:[59, 59]}, "responds_to?:":{file:"lib/rbx/object.fy", doc:"<p>Indicates if an object responds to a given message.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>The message to check for (preferably a Symbol).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">self</code> responds to <code data-lang=\"fancy\">message</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["message"], lines:[137, 137]}, "require:":{file:"lib/rbx/object.fy", doc:"<p>Loads and evaluates a given Fancy source file by trying to find the specified\nRelative paths are allowed (and by default expected).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">file_path</code> </label><div>in Fancy's loadpath (see <code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy CodeLoader\" class=\"class-ref selectable\">CodeLoader</code>).</div></div></div>\n\n", arg:["file_path"], lines:[18, 18]}, "yield:":{file:"lib/object.fy", doc:"<p>Same as Fiber##yield:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["values"], lines:[395, 395]}, ":to_s":{file:"lib/rbx/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> represenation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[32, 32]}, "define_singleton_method:with:":{file:"lib/rbx/object.fy", doc:"<p>Dynamically defines a method on <code data-lang=\"fancy\">self's</code> metaclass (a singleton method) using a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be used as the method's body.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the method to be defined on <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["name", "block"], lines:[64, 64]}, "if:then:":{file:"lib/object.fy", doc:"<p>Same as:\ncond if_true: block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond", "block"], lines:[212, 212]}, ":print":{file:"lib/object.fy", doc:"<p>Same as:\nConsole print: self</p>\n\n<p>Prints <code data-lang=\"fancy\">self</code> on STDOUT.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[48, 48]}, "until:do:":{file:"lib/object.fy", doc:"<p>Same as:\ncond_block until_do: body_block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond_block", "body_block"], lines:[239, 239]}, "documentation:":{file:"lib/object.fy", doc:"<p>Sets the documentation string for an Object.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">docstring</code> </label><div>New docstring for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["docstring"], lines:[306, 306]}, "is_a?:":{file:"lib/rbx/object.fy", doc:"<p>Indicates, if an object is an instance of a given Class.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">class</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> to check for if <code data-lang=\"fancy\">self</code> is an instance of.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">self</code> is an instance of <code data-lang=\"fancy\">class</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["class"], lines:[86, 86]}, ":die!":{file:"lib/object.fy", doc:"<p>Tells an object to let its actor to die (quit running).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[479, 479]}, ":should_not":{file:"lib/fancy_spec.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"NegativeMatcher\" class=\"class-ref selectable\">NegativeMatcher</code> for self.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[412, 412]}, "do:until:":{file:"lib/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">cond_block</code> </label><div>Condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> used to determine if <code data-lang=\"fancy\">body_block@</code> should be called again.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">body_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called at least once and as long as <code data-lang=\"fancy\">cond_block</code> yields a false-ish value.</div></div></div>\n\n", arg:["body_block", "cond_block"], lines:[258, 258]}, ":<=>":{file:"lib/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other object to compare against.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>-1 if <code data-lang=\"fancy\">self</code> is smaller, 0 if <code data-lang=\"fancy\">self</code> is equal or 1 if <code data-lang=\"fancy\">self</code> is greater or equal compared to <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"], lines:[541, 541]}, ":is":{file:"lib/fancy_spec.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"PositiveMatcher\" class=\"class-ref selectable\">PositiveMatcher</code> for self.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[393, 393]}, "if:then:else:":{file:"lib/object.fy", doc:"<p>Same as:\ncond if_true: then_block else: else_block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond", "then_block", "else_block"], lines:[221, 221]}, "if_nil:else:":{file:"lib/object.fy", doc:"<p>Calls <code data-lang=\"fancy\">else_block</code> (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">then_block</code> </label><div>Does not get called (default behaviour).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">else_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">else_block</code>.</div></div></div>\n\n", arg:["then_block", "else_block"], lines:[104, 104]}, ":if_responds?":{file:"lib/object.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"RespondsToProxy\" class=\"class-ref selectable\">RespondsToProxy</code> for <code data-lang=\"fancy\">self</code> that forwards any messages\nonly if <code data-lang=\"fancy\">self</code> responds to them.</p>\n\n<p>Example usage:</p>\n\n<p> # only send 'some_message: if object responds to it:\n object if_responds? some_message: some_parameter</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>RespondsToProxy for <code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:[], lines:[353, 353]}, "unless:do:":{file:"lib/object.fy", doc:"<p>Same as:\ncond if_true: { nil } else: block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond", "block"], lines:[268, 268]}, ":documentation":{file:"lib/object.fy", doc:"<p>Returns the <code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Documentation\" class=\"class-ref selectable\">Documentation</code> object for an Object.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Documentation\" class=\"class-ref selectable\">Documentation</code> object for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[296, 296]}, "kind_of?:":{file:"lib/rbx/object.fy", doc:"<p>Same as Object#is_a?:\nIndicates, if an object is an instance of a given Class.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["class"], lines:[95, 95]}, "send_future:":{file:"lib/object.fy", doc:"<p>Forward to message send_future:with_params:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["message"], lines:[492, 492]}, ":println":{file:"lib/object.fy", doc:"<p>Same as:\nConsole println: self</p>\n\n<p>Prints <code data-lang=\"fancy\">self</code> on <code data-lang=\"fancy\">STDOUT</code>, followed by a newline.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[37, 37]}, ":is_not":{file:"lib/fancy_spec.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"NegativeMatcher\" class=\"class-ref selectable\">NegativeMatcher</code> for self.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[412, 412]}, ":should":{file:"lib/fancy_spec.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"PositiveMatcher\" class=\"class-ref selectable\">PositiveMatcher</code> for self.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[393, 393]}, "if_nil:":{file:"lib/object.fy", doc:"<p>Does nothing (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</div></div></div>\n\n\n<p></code></p>\n", arg:["block"], lines:[92, 92]}, "undefine_singleton_method:":{file:"lib/rbx/object.fy", doc:"<p>Undefines a singleton method of <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the method to be undefined no <code data-lang=\"fancy\">self's</code> metaclass.</div></div></div>\n\n", arg:["name"], lines:[74, 74]}, "to_enum:":{file:"lib/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FancyEnumerator\" class=\"class-ref selectable\">FancyEnumerator</code> for <code data-lang=\"fancy\">self</code> using <code data-lang=\"fancy\">iterator</code> for iteration.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">iterator</code> </label><div>Message to use for iteration on <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["iterator"], lines:[164, 164]}, ":identity":{file:"lib/object.fy", doc:"<p>The identity method simply returns self.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[316, 316]}, "break:":{file:"lib/object.fy", doc:"<p>Returns <code data-lang=\"fancy\">value</code> from iteratioen.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value to return from iteration.</div></div></div>\n\n", arg:["value"], lines:[431, 431]}, "backtick:":{file:"lib/object.fy", doc:"<p>This is the default implementation for backtick: which gets called when using the backtick syntax.\nFor example:\n<code>cat README</code>\nGets translated to the following message send:\nself backtick: \"cat README\"\nWhich allows for custom implementations of the backtick: method, if needed.\nThis default implementation works the same way as in Ruby, Perl or Bash.\nIt returns the output of running the given string on the command line as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["str"], lines:[368, 368]}, "unless:do:else:":{file:"lib/object.fy", doc:"<p>Same as:\ncond if_true: else_block else: block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond", "block", "else_block"], lines:[277, 277]}, "extend:":{file:"lib/rbx/object.fy", doc:"<p>Extends <code data-lang=\"fancy\">self</code> with the methods in <code data-lang=\"fancy\">class</code> (by including its methods in <code data-lang=\"fancy\">self's</code> metaclass).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">class</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> to extend <code data-lang=\"fancy\">self</code> with.</div></div></div>\n\n", arg:["class"], lines:[146, 146]}, ":false?":{file:"lib/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:[], lines:[123, 123]}, "send_future:with_params:":{file:"lib/object.fy", doc:"<p>Creates a <code data-lang=\"fancy\" data-class-ref=\"FutureSend\" class=\"class-ref selectable\">FutureSend</code> object (a Future / Promise) that will hold the value of sending <code data-lang=\"fancy\">message</code> to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">params</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of parameters of the <code data-lang=\"fancy\" data-class-ref=\"FutureSend\" class=\"class-ref selectable\">FutureSend</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>Message to be sent as a <code data-lang=\"fancy\" data-class-ref=\"FutureSend\" class=\"class-ref selectable\">FutureSend</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FutureSend\" class=\"class-ref selectable\">FutureSend</code> object that will hold the return value of <code data-lang=\"fancy\">message</code> with <code data-lang=\"fancy\">params</code> on <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["message", "params"], lines:[501, 501]}, ":||":{file:"lib/object.fy", doc:"<p>Boolean disjunction.\nIf <code data-lang=\"fancy\">self</code> is true-ish (non-nil, non-false) returns <code data-lang=\"fancy\">self</code>.\nOtherwise returns <code data-lang=\"fancy\">other</code> (if <code data-lang=\"fancy\">other</code> is a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>, calls it first and returns its return value)</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Object or <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (for short-circuit evaluation) to compare <code data-lang=\"fancy\">self</code> to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code> if <code data-lang=\"fancy\">self</code> is true-ish, <code data-lang=\"fancy\">other</code> otherwise.</div></div></div>\n\n", arg:["other"], lines:[201, 201]}, "synchronized:":{file:"lib/object.fy", doc:"<p>Runs a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> in a synchronized fashion if called by multiple Threads.\nUses a <code data-lang=\"fancy\" data-class-ref=\"Mutex\" class=\"class-ref selectable\">Mutex</code> in the background for synchronization (created on demand for each <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code>).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be run only by one Thread at a time.</div></div></div>\n\n", arg:["block"], lines:[525, 525]}, "if_false:":{file:"lib/object.fy", doc:"<p>Does nothing (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</div></div></div>\n\n\n<p></code></p>\n", arg:["block"], lines:[92, 92]}, ":to_i":{file:"lib/object.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[147, 147]}, "and:":{file:"lib/object.fy", doc:"<p>Boolean conjunction.\nIf <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> are both true-ish (non-nil, non-false), returns <code data-lang=\"fancy\">other</code>.\nIf <code data-lang=\"fancy\">other</code> is a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>, calls it and returns its return value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Object or <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (for short-circuit evaluation) to compare <code data-lang=\"fancy\">self</code> to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">other</code> if both <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> are true-ish, <code data-lang=\"fancy\">self</code> otherwise.</div></div></div>\n\n", arg:["other"], lines:[183, 183]}, ":++":{file:"lib/object.fy", doc:"<p>Returns the <code data-lang=\"fancy\">String</code> concatenation of <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code>.\nCalls to_s on <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> and concatenates the results to a new <code data-lang=\"fancy\">String</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other object to concatenate its <code data-lang=\"fancy\">String</code> value with.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">String</code> concatenation of <code data-lang=\"fancy\">String</code> values of <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"], lines:[16, 16]}, "or:":{file:"lib/object.fy", doc:"<p>Boolean disjunction.\nIf <code data-lang=\"fancy\">self</code> is true-ish (non-nil, non-false) returns <code data-lang=\"fancy\">self</code>.\nOtherwise returns <code data-lang=\"fancy\">other</code> (if <code data-lang=\"fancy\">other</code> is a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>, calls it first and returns its return value)</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Object or <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (for short-circuit evaluation) to compare <code data-lang=\"fancy\">self</code> to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code> if <code data-lang=\"fancy\">self</code> is true-ish, <code data-lang=\"fancy\">other</code> otherwise.</div></div></div>\n\n", arg:["other"], lines:[201, 201]}, "get_slot:":{file:"lib/rbx/object.fy", doc:"<p>Returns the value of a slot of <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to get the value of.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of slot with name <code data-lang=\"fancy\">slotname</code>.</div></div></div>\n\n", arg:["slotname"], lines:[54, 54]}, "method:":{file:"lib/object.fy", doc:"<p>Returns the method with a given name for self, if defined.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> with <code data-lang=\"fancy\">method_name</code> defined for <code data-lang=\"fancy\">self</code>, or <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["method_name"], lines:[287, 287]}}, methods:{}}, "Fancy FDoc":{ancestors:["Fancy FDoc", "Object", "Kernel"], doc:"<p>FDoc is a tool to generate API documentation from Fancy source.</p>\n\n<p>Works as follows:</p>\n\n<ol>\n<li>We setup a handler to be invoked every time an object is set documentation\nSee fdoc_hook.fy, its loaded even before all of lib/rbx/*.fy so we can\nAlso have documentation for all fancy rubinius.</li>\n<li>We load boot.fy, so we get documentation for all fancy's lib.</li>\n<li>We run FDoc main\nwhich can possibly load any file/directory you specify and optionally\nrun specs, effectively associating them with documented objects.</li>\n<li>Generate output file.\nCurrently the plan is to output a json formatted object.\nTo be loaded by an html file and use jquery to build a GUI from it.</li>\n</ol>\n\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{":main":{file:"lib/fdoc.fy", doc:"<p>FDoc will load all .fy files you give to it, and optionally run\nany specified FancySpec, and later produce documentation output.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[32, 32]}}}, "System":{ancestors:["System", "Object", "Kernel"], doc:"<p>System class. Holds system-wide relevant methods.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{"pipe:do:":{file:"lib/rbx/system.fy", doc:"<p>Runs the given string as a popen3() call, passing in a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.\nThe <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> is expected to take 3 arguments for <code data-lang=\"fancy\">STDIN</code>, <code data-lang=\"fancy\">STDOUT</code> and <code data-lang=\"fancy\">STDERR</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with <code data-lang=\"fancy\">STDIN</code>, <code data-lang=\"fancy\">STDOUT</code> and <code data-lang=\"fancy\">STDERR</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">command_str</code> </label><div>String to run as a command via popen3()</div></div></div>\n\n", arg:["command_str", "block"], lines:[55, 55]}, "do:":{file:"lib/rbx/system.fy", doc:"<p>Runs the given string as a system() command.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["command_str"], lines:[21, 21]}, "piperead:":{file:"lib/rbx/system.fy", doc:"<p>Runs the given string as a popen() call and returns the output\nof the call as a string.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["command_str"], lines:[30, 30]}, "pipe:":{file:"lib/rbx/system.fy", doc:"<p>Runs the given string as a popen3() call and returns a IO handle\nthat can be read from</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"IO\" class=\"class-ref selectable\">IO</code> object representing the command's <code data-lang=\"fancy\">STDOUT</code> IO stream.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">command_str</code> </label><div>String to run as a command via popen3()</div></div></div>\n\n", arg:["command_str"], lines:[42, 42]}, ":exit":{file:"lib/rbx/system.fy", doc:"<p>Exit the running Fancy process.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[13, 13]}}}, "Fiber":{ancestors:["Rubinius Fiber", "Object", "Kernel"], doc:"<p>Fiber class. Fibers are cooperatively scheduled coroutines supported\nby the Rubinius VM.\nControl flow between multiple Fibers is always explicitly handled.\nThere is no preemptive scheduler.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"resume:":{file:"lib/rbx/fiber.fy", doc:"<p>Resumes <code data-lang=\"fancy\">self</code> (if paused) or raises an exception, if <code data-lang=\"fancy\" data-class-ref=\"Fiber\" class=\"class-ref selectable\">Fiber</code> is dead.\nPasses along <code data-lang=\"fancy\">vals</code> as the return value of the last call to <code data-lang=\"fancy\">yield</code> in <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">vals</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of values to pass along to <code data-lang=\"fancy\">self</code> for resuming.</div></div></div>\n\n", arg:["vals"], lines:[39, 39]}}, methods:{"new:":{file:"lib/rbx/fiber.fy", doc:"<p>Creates a new Fiber running <code data-lang=\"fancy\">block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be run in a new Fiber.</div></div></div>\n\n", arg:["block"], lines:[18, 18]}, "yield:":{file:"lib/rbx/fiber.fy", doc:"<p>Returns execution control to the parent <code data-lang=\"fancy\" data-class-ref=\"Fiber\" class=\"class-ref selectable\">Fiber</code> and passes along <code data-lang=\"fancy\">vals</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">vals</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of values to pass along to parent <code data-lang=\"fancy\" data-class-ref=\"Fiber\" class=\"class-ref selectable\">Fiber</code>.</div></div></div>\n\n", arg:["vals"], lines:[28, 28]}}}, "Integer":{ancestors:["Integer", "Precision", "Numeric", "Comparable", "Object", "Kernel"], doc:"<p>Base class for integer values in Fancy.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"times:offset:":{file:"lib/integer.fy", doc:"<p>Similar to #times: but starts at a given offset.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each number between <code data-lang=\"fancy\">offset</code> and <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">offset</code> </label><div>Offset to be used as starting point of iteration.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block", "offset"], lines:[31, 31]}, "times:":{file:"lib/integer.fy", doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each number between 0 and <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each number between 0 and <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"], lines:[14, 14]}}, methods:{}}, "Time":{ancestors:["Time", "Comparable", "Object", "Kernel"], doc:"<p>Time class. Used for even more timely stuff.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "UnboundMethod":{ancestors:["UnboundMethod", "MethodMixin", "Object", "Object", "Kernel"], doc:"<p>An instance UnboundMethod represents a Method object not bound to a specific <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> or <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "Fancy FDoc Formatter":{ancestors:["Fancy FDoc Formatter", "Object", "Kernel"], doc:"<p>A documentation formater intended to be used by <code data-lang=\"fancy\" data-class-ref=\"FDoc\" class=\"class-ref selectable\">FDoc</code>.</p>\n\n<p>This formatter makes some transformations on a docstring\nand then converts it to html using markdown.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{"create_class_references:":{file:"lib/fdoc.fy", doc:"<p>Creates class references for Fancy class names.</p>\n\n<p>A docstring may contain class names sorounded by @\nwithout space between the @.</p>\n\n<p>Nested classes can be indicated by using :: like</p>\n\n<p> Foo::Bar</p>\n\n<p>This will create references for both, <code data-lang=\"fancy\">Foo</code> and <code data-lang=\"fancy\">Bar</code></p>\n\n<p>Instance methods should be written:</p>\n\n<p> Foo::Bar#baz</p>\n\n<p>Class methods should be written:</p>\n\n<p> Foo::Bar.baz</p>\n\n<p>Some examples:</p>\n\n<p>A simple class reference:</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code></p>\n\n<p>Nested class reference:</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy FDoc\" class=\"class-ref selectable\">FDoc</code></p>\n\n<p>A fancy method without arguments:</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy FDoc\" class=\"class-ref selectable\">FDoc</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy FDoc JSON\" class=\"class-ref selectable\">JSON</code> <code data-lang=\"fancy\" data-singleton-method-ref=\":generate_map\" data-owner-class=\"Fancy FDoc JSON\" class=\"singleton-method-ref selectable\">generate_map</code></p>\n\n<p>A ruby method reference (will link to ruby docs if available)</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> <code data-lang=\"fancy\" data-ruby-singleton-method-ref=\"split\" data-owner-class=\"String\" class=\"ruby-singleton-method-ref selectable\">split</code></p>\n\n<p>A fancy method with many arguments:</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Package\" class=\"class-ref selectable\">Package</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Package Installer\" class=\"class-ref selectable\">Installer</code> <code data-lang=\"fancy\" data-singleton-method-ref=\"initialize:version:install_path:\" data-owner-class=\"Fancy Package Installer\" class=\"singleton-method-ref selectable\">initialize:version:install_path:</code></p>\n\n<p>A singleton method:</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy FDoc\" class=\"class-ref selectable\">FDoc</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy FDoc Formatter\" class=\"class-ref selectable\">Formatter</code> <code data-lang=\"fancy\" data-singleton-method-ref=\"format:\" data-owner-class=\"Fancy FDoc Formatter\" class=\"singleton-method-ref selectable\">format:</code></p>\n\n<div class=\"doctags\"></div>\n\n", arg:["str"], lines:[256, 256]}}}, "StandardError":{ancestors:["StandardError", "Exception", "Object", "Kernel"], doc:"<p>StandardError. Base class of most Exception classes.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{file:"lib/rbx/exception.fy", doc:"<p>Creates a new Exception with a given message.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">msg</code> </label><div>Message (<code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>) for the Exception.</div></div></div>\n\n", arg:["msg"], lines:[26, 26]}, ":initialize":{file:"lib/rbx/exception.fy", doc:"<p>Creates a new Exception with an empty message.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[16, 16]}, ":raise!":{file:"lib/rbx/exception.fy", doc:"<p>Raises (throws) an Exception to be caught somewhere up the\ncallstack.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[35, 35]}}, methods:{}}, "Fancy Package Installer":{ancestors:["Fancy Package Installer", "Object", "Kernel"], doc:"<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Package\" class=\"class-ref selectable\">Package</code> installer.</p>\n\n<p>Downloads packages from Github (usually the latest tagged version,\nif no version is specified, or the latest HEAD revision in the\nmaster branch) and install it to the <code data-lang=\"fancy\">FANCY_PACKAGE_DIR</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{file:"lib/package/installer.fy", doc:"<p>Forward to message initialize:version:install_path:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@package_name"], lines:[44, 44]}, "rename_dir:":{file:"lib/package/installer.fy", doc:"<p>Renames a given directory to a common way within the install path.\n=> It will rename the given dirname to $user/$repo-$version.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["dirname"], lines:[158, 158]}, "download_url:":{file:"lib/package/installer.fy", doc:"<p>Returns the download url for a given version of the package\nto be installed.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["version"], lines:[110, 110]}, ":latest_tag":{file:"lib/package/installer.fy", doc:"<p>Returns the latest tag (sorted alphabetically).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[82, 82]}, ":run":{file:"lib/package/installer.fy", doc:"<p>Runs the installer &amp; installs the package into\n<code data-lang=\"fancy\">$FANCY_PACKAGE_DIR</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[52, 52]}, "initialize:version:":{file:"lib/package/installer.fy", doc:"<p>Forward to message initialize:version:install_path:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@package_name", "@version"], lines:[44, 44]}, ":load_fancypack":{file:"lib/package/installer.fy", doc:"<p>Loads the @.fancypack file within the downloaded package directory.\nIf no @.fancypack file is found, raise an error.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[167, 167]}, ":tags":{file:"lib/package/installer.fy", doc:"<p>Returns a list of tags the repository has on Github.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[91, 91]}, "initialize:version:install_path:":{file:"lib/package/installer.fy", doc:"<p>Creates a new <code data-lang=\"fancy\">Package</code> Installer@ for a given package name, an\noptional version (default is 'latest') and an optional\ninstallation path (default is the standard installation path for\nFancy packages).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@package_name", "@version", "@install_path"], lines:[44, 44]}, "has_version?:":{file:"lib/package/installer.fy", doc:"<p>Indicates, if a given version is available on Github.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["version"], lines:[98, 98]}, "download_tgz:":{file:"lib/package/installer.fy", doc:"<p>Downloads the .tar.gz file from Github with the given version\n(tag or branch name) and saves it to the specified <code data-lang=\"fancy\">install_path</code>.</p>\n\n<p>The Default install_path is ~/.fancy/packages/.\nIf an environment variable <code data-lang=\"fancy\">FANCY_PACKAGE_DIR</code> is defined, it\nwill get used.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["version"], lines:[135, 135]}}, methods:{}}, "Hash":{ancestors:["Hash", "FancyEnumerable", "Object", "Enumerable", "Object", "Kernel"], doc:"<p>Class for Hashes (HashMaps / Dictionaries).\nMaps a key to a value.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"each_value:":{file:"lib/hash.fy", doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each value in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"], lines:[59, 59]}, "delete:":{file:"lib/rbx/hash.fy", doc:"<p>Deletes a key-value pair from <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">key</code> </label><div>Key of key-value pair to be deleted in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["key"], lines:[34, 34]}, "each_key:":{file:"lib/hash.fy", doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each key.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each key in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"], lines:[47, 47]}, "each:":{file:"lib/hash.fy", doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each key and value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each key and value in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"], lines:[36, 36]}, "includes?:":{file:"lib/rbx/hash.fy", doc:"<p>Indicates if a given key is in <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">key</code> </label><div>Key to search for.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if Hash includes <code data-lang=\"fancy\">key</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["key"], lines:[53, 53]}, "values_at:":{file:"lib/hash.fy", doc:"<p>Example usage:\n &lt;['foo => 1, 'bar => 2, 'baz => 42]> values_at: ('foo, 'baz) # => [1, 42]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">keys</code> </label><div>Collection of keys to get the values for.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all values for the given keys.</div></div></div>\n\n", arg:["keys"], lines:[105, 105]}, ":to_a":{file:"lib/hash.fy", doc:"<p>Returns an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of the key-value pairs in a <code data-lang=\"fancy\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all key-value pairs in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[71, 71]}, ":to_s":{file:"lib/hash.fy", doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of a <code data-lang=\"fancy\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[80, 80]}, ":[]":{file:"lib/hash.fy", doc:"<p>Returns the value for a given key.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">key</code> </label><div>Key for value to get.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value for given <code data-lang=\"fancy\">key</code> or <code data-lang=\"fancy\">nil</code>, if <code data-lang=\"fancy\">key</code> not set.</div></div></div>\n\n", arg:["key"], lines:[18, 18]}}, methods:{}}, "IO":{ancestors:["IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Object", "Kernel"], doc:"<p>Base class for IO related classes (like <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>, <code data-lang=\"fancy\" data-class-ref=\"Socket\" class=\"class-ref selectable\">Socket</code>, <code data-lang=\"fancy\" data-class-ref=\"Console\" class=\"class-ref selectable\">Console</code> etc.).</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "Fancy Package Dependency":{ancestors:["Fancy Package Dependency", "Object", "Kernel"], doc:"<p>Package Dependency.\nRepresents a Dependency to another Package with a given version.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{file:"lib/package/dependency.fy", doc:"<p>Forward to message initialize:version:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@name"], lines:[11, 11]}}, methods:{}}, "Symbol":{ancestors:["Symbol", "ImmediateValue", "Object", "Kernel"], doc:"<p>Symbols are unique identifiers and only created once.</p>\n\n<p>If there are several occurrances of the same Symbol literal within\nFancy code, they all refer to the same Symbol object.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"call:":{file:"lib/symbol.fy", doc:"<p>This allows Symbols to be used like Blocks\n(e.g. in all methods of Enumerable).\nExample: [1, 2, 3] map: 'squared # => [1, 4, 9]</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["arg"], lines:[21, 21]}, ":defined?":{file:"lib/rbx/symbol.fy", doc:"<p>Indicates if a Symbol is defined as a constant in the senders scope.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">self</code> is defined as a constant in senders scope, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[], lines:[20, 20]}}, methods:{}}, "Fancy StopIteration":{ancestors:["Fancy StopIteration", "StandardError", "Exception", "Object", "Kernel"], doc:"<p>Raised to stop the iteration, in particular by Enumerator#next.\nIt is rescued by Block#loop.</p>\n\n<p>Example:\n {</p>\n\n<pre><code> 'Hello println\n Fancy StopIteration new raise!\n 'World println\n</code></pre>\n\n<p> } loop\n 'Done! println</p>\n\n<p>Produces:\n Hello\n Done!</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":result":{file:"lib/iteration.fy", doc:"<p>Returns the return value of the iterator.</p>\n\n<p>o = Object new\ndef o each: block {\n block call: [1]\n block call: [2]\n block call: [3]\n 100\n}</p>\n\n<p>e = o to_enum\ne next p #=> 1\ne next p #=> 2\ne next p #=> 3\ntry {\n e next\n} catch Fancy StopIteration => ex {\n ex result p #=> 100\n}</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[82, 82]}}, methods:{}}, "Fancy NextIteration":{ancestors:["Fancy NextIteration", "StandardError", "Exception", "Object", "Kernel"], doc:"<p>Raised to continue with next iteration (and stopping the current one).\nIt is rescued by Block#loop.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}, methods:{}}, "MethodMixin":{ancestors:["MethodMixin", "Object", "Kernel"], doc:"<p>Mixin class with common methods included by <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> and <code data-lang=\"fancy\" data-class-ref=\"UnboundMethod\" class=\"class-ref selectable\">UnboundMethod</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":private?":{file:"lib/rbx/method.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if the <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> is private in its defined context.</div></div></div>\n\n", arg:[], lines:[48, 48]}, "documentation:":{file:"lib/rbx/method.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">docstring</code> </label><div>New docstring for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["docstring"], lines:[19, 19]}, ":public?":{file:"lib/rbx/method.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if the <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> is public in its defined context.</div></div></div>\n\n", arg:[], lines:[34, 34]}, ":documentation":{file:"lib/rbx/method.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Docstring for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[11, 11]}, ":tests":{file:"lib/rbx/method.fy", doc:"<p>Returns an Array of all the FancySpec SpecTests defined for a\nMethod.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[57, 57]}, ":visibility":{file:"lib/rbx/method.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The visibility (<code data-lang=\"fancy\">'private</code>, <code data-lang=\"fancy\">'protected</code>, <code data-lang=\"fancy\">'public</code>) of a <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> in its defined context, if any.</div></div></div>\n\n", arg:[], lines:[26, 26]}, ":protected?":{file:"lib/rbx/method.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if the <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> is protected in its defined context.</div></div></div>\n\n", arg:[], lines:[41, 41]}}, methods:{}}, "Stack":{ancestors:["Stack", "Object", "Kernel"], doc:"<p>A simple Stack container class.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{file:"lib/stack.fy", doc:"<p>Initializes a new Stack with a given size.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">size</code> </label><div>Initial size of the new Stack.</div></div></div>\n\n", arg:["size"], lines:[21, 21]}, ":initialize":{file:"lib/stack.fy", doc:"<p>Initializes a new Stack.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[11, 11]}, ":size":{file:"lib/stack.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Size of the Stack.</div></div></div>\n\n", arg:[], lines:[59, 59]}, ":top":{file:"lib/stack.fy", doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The top-of-stack element.</div></div></div>\n\n", arg:[], lines:[51, 51]}, "each:":{file:"lib/stack.fy", doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each element in <code data-lang=\"fancy\">self</code>, starting with the top of stack element.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each element in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[80, 80]}, "push:":{file:"lib/stack.fy", doc:"<p>Pushes a value onto the Stack.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be pushed onto <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["obj"], lines:[31, 31]}, ":pop":{file:"lib/stack.fy", doc:"<p>Pops the top-of-stack element from the Stack and returns it.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Top-of-stack element.</div></div></div>\n\n", arg:[], lines:[43, 43]}, ":empty?":{file:"lib/stack.fy", doc:"<p>Indicates, if the Stack is empty.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if empty, otherwise <code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:[], lines:[69, 69]}, ":<<":{file:"lib/stack.fy", doc:"<p>Pushes a value onto the Stack.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be pushed onto <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["obj"], lines:[31, 31]}}, methods:{}}, "Class":{ancestors:["Class", "Module", "Object", "Kernel"], doc:"<p>This class is the class of <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> objects - e.g. <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code>, <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>,\n<code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> etc.\nAny class in the language is an instance of this class, as in Ruby\nor Smalltalk.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{file:"lib/rbx/class.fy", doc:"<p>Initializes a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with a superclass.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["superclass"], lines:[61, 61]}, "alias_method:for:":{file:"lib/class.fy", doc:"<p>Defines an alias method for another method.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">new_method_name</code> </label><div>New method name to be used as an alias for <code data-lang=\"fancy\">old_method_name</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">old_method_name</code> </label><div>Name of method to alias (must exist in the <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>).</div></div></div>\n\n", arg:["new_method_name", "old_method_name"], lines:[138, 138]}, "write_slot:":{file:"lib/class.fy", doc:"<p>Defines a slot writer method for a given slotname.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to define a setter method for.</div></div></div>\n\n", arg:["slotname"], lines:[85, 85]}, "define_slot_reader:":{file:"lib/class.fy", doc:"<p>Defines a slot reader method with a given name.\nE.g. for a slotname <code data-lang=\"fancy\">count</code> it will define the following method:\n def count {</p>\n\n<pre><code> get_slot: 'count\n</code></pre>\n\n<p> }</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of the slot to define a getter method for.</div></div></div>\n\n", arg:["slotname"], lines:[25, 25]}, "subclass:":{file:"lib/rbx/class.fy", doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with <code data-lang=\"fancy\">self</code> as superclass and the given body.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">body_block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that gets used as the body of the <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> inherited from <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["body_block"], lines:[115, 115]}, "instance_method:":{file:"lib/rbx/class.fy", doc:"<p>Returns an instance method for a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with a given name.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the instance method to return.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The instance <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> with the given <code data-lang=\"fancy\">name</code> or <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["name"], lines:[137, 137]}, "read_write_slots:":{file:"lib/class.fy", doc:"<p>Defines slot reader &amp; writer methods for all given slotnames.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slots</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of slotnames to define getter & setter methods for.</div></div></div>\n\n", arg:["slots"], lines:[94, 94]}, ":nested_classes":{file:"lib/rbx/class.fy", doc:"<p>Returns all the nested classes within a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> as an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all nested classes for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[125, 125]}, "define_class_method:with:":{file:"lib/rbx/class.fy", doc:"<p>Defines a class method on a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> (a singleton method) with a\ngiven name and body.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be used as the class methods body.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the class method to be defined.</div></div></div>\n\n", arg:["name", "block"], lines:[95, 95]}, ":new":{file:"lib/rbx/class.fy", doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> instance by subclassing <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> subclassed from <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code>.</div></div></div>\n\n", arg:[], lines:[18, 18]}, "alias_method:for_ruby:":{file:"lib/rbx/class.fy", doc:"<p>Creates a method alias for a Ruby method.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["new_method_name", "ruby_method_name"], lines:[153, 153]}, "subclass?:":{file:"lib/class.fy", doc:"<p>Indicates, if a Class is a subclass of another Class.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">class_obj</code> </label><div>Class object to check for, if <code data-lang=\"fancy\">self</code> is a subclass of <code data-lang=\"fancy\">class_obj</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">self</code> is a subclass of <code data-lang=\"fancy\">class_obj</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["class_obj"], lines:[127, 127]}, ":initialize":{file:"lib/rbx/class.fy", doc:"<p>Initializes a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> set as superclass (default superclass).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[54, 54]}, "private:":{file:"lib/rbx/class.fy", doc:"<p>Sets any given method names to private on this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">method_names</code> </label><div>One or more (<code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>) method names (as a <code data-lang=\"fancy\" data-class-ref=\"Symbol\" class=\"class-ref selectable\">Symbol</code>) to be set to private in this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div></div>\n\n", arg:["method_names"], lines:[174, 174]}, "protected:":{file:"lib/rbx/class.fy", doc:"<p>Sets any given method names to protected on this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">method_names</code> </label><div>One or more (<code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>) method names (as a <code data-lang=\"fancy\" data-class-ref=\"Symbol\" class=\"class-ref selectable\">Symbol</code>) to be set to protected in this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div></div>\n\n", arg:["method_names"], lines:[186, 186]}, "undefine_method:":{file:"lib/rbx/class.fy", doc:"<p>Undefines an instance method on a Class with a given name.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the method to undefine (remove) from a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div></div>\n\n", arg:["name"], lines:[83, 83]}, "undefine_class_method:":{file:"lib/rbx/class.fy", doc:"<p>Undefines a class method on a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with a given name.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the class method to undefine (remove).</div></div></div>\n\n", arg:["name"], lines:[105, 105]}, "public:":{file:"lib/rbx/class.fy", doc:"<p>Sets any given method names to public on this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">method_names</code> </label><div>One or more (<code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>) method names (as a <code data-lang=\"fancy\" data-class-ref=\"Symbol\" class=\"class-ref selectable\">Symbol</code>) to be set to public in this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div></div>\n\n", arg:["method_names"], lines:[162, 162]}, ":forwards_unary_ruby_methods":{file:"lib/rbx/class.fy", doc:"<p>Creates ruby_alias methods for any unary ruby methods of a class.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[196, 196]}, "write_slots:":{file:"lib/class.fy", doc:"<p>Defines slot writer methods for all given slotnames.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slots</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of slotnames to define setter methods for.</div></div></div>\n\n", arg:["slots"], lines:[72, 72]}, "read_slot:":{file:"lib/class.fy", doc:"<p>Defines a slot reader method for a given slotname.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to define a getter method for.</div></div></div>\n\n", arg:["slotname"], lines:[63, 63]}, "define_slot_writer:":{file:"lib/class.fy", doc:"<p>Defines a slot writer method with a given name.\nE.g. for a slotname <code data-lang=\"fancy\">count</code> it will define the following method:\n def count: c {</p>\n\n<pre><code> set_slot: 'count value: c\n</code></pre>\n\n<p> }</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of the slot to defnie define a setter method for.</div></div></div>\n\n", arg:["slotname"], lines:[41, 41]}, "read_slots:":{file:"lib/class.fy", doc:"<p>Defines slot reader methods for all given slotnames.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slots</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of slotnames to define getter methods for.</div></div></div>\n\n", arg:["slots"], lines:[50, 50]}, "new:":{file:"lib/rbx/class.fy", doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> instance by subclassing <code data-lang=\"fancy\">superclass</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">superclass</code> </label><div>The superclass to inherit from.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> inherited from <code data-lang=\"fancy\">superclass</code>.</div></div></div>\n\n", arg:["superclass"], lines:[32, 32]}, "read_write_slot:":{file:"lib/class.fy", doc:"<p>Defines slot reader &amp; writer methods for a given slotname.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to define getter & setter methods for.</div></div></div>\n\n", arg:["slotname"], lines:[108, 108]}, "define_method:with:":{file:"lib/rbx/class.fy", doc:"<p>Defines an instance method on a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with a given name and\nbody.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that is used as the method's body.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the method to be defined.</div></div></div>\n\n", arg:["name", "block"], lines:[73, 73]}, "alias_method_rbx:for:":{file:"lib/rbx/class.fy", doc:"<p>Rbx specific version of alias_method:for: due to bootstrap order\nreasons. Should not be used directly.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["new_method_name", "old_method_name"], lines:[146, 146]}}, methods:{"superclass:body:":{file:"lib/rbx/class.fy", doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> by subclassing <code data-lang=\"fancy\">superclass</code> and\nusing <code data-lang=\"fancy\">body_block</code> as its body.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">body_block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that is used as the body of the new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">superclass</code> </label><div>The superclass to inherit from.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> inherited from <code data-lang=\"fancy\">superclass</code>.</div></div></div>\n\n", arg:["superclass", "body_block"], lines:[47, 47]}}}, "FancySpec NegativeMatcher":{ancestors:["FancySpec NegativeMatcher", "Object", "Kernel"], doc:"<p>NegativeMatcher expects its actual value to be unequal to an\nexpected value.\nIf the values are equal, a SpecTest failure is generated.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"unknown_message:with_params:":{file:"lib/fancy_spec.fy", doc:"<p>Forwards any other message and parameters to the object itself\nand checks the return value.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["msg", "params"], lines:[377, 377]}}, methods:{}}}, date:"Thu Jul 14 19:30:11 -0700 2011", methods:{"FutureSend#initialize:receiver:message:":{args:["@actor", "@receiver", "@message"], doc:"<p>Forward to message initialize:receiver:message:with_params:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#each:":{args:["block"], doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each element in the collection this enumerator is attached to.\nUsed for iterating over the collection using this enumerator.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each element in the collection (iteration).</div></div></div>\n\n"}, "Fancy Package Specification#add_dependency:":{args:["name"], doc:"<p>Forward to message add_dependency:version:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "String#:raise!":{args:[], doc:"<p>Raises a new StdError with <code data-lang=\"fancy\">self</code> as the message.</p>\n\n<div class=\"doctags\"></div>\n\n"}, "Object#for_options:do:":{args:["op_names", "block"], doc:"<p>Runs a given block if any of the given options is in ARGV.</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#:peek":{args:[], doc:"<p>Returns the next object in the FancyEnumerator, but doesn't move the\ninternal position forward.\nWhen the position reaches the end, a Fancy StopIteration exception is\nraised.</p>\n\n<p>Example:\n a = [1,2,3]\n e = a to_enum\n e next p #=> 1\n e peek p #=> 2\n e peek p #=> 2\n e peek p #=> 2\n e next p #=> 2\n e next p #=> 3\n e next p #=> raises Fancy StopIteration</p>\n\n<div class=\"doctags\"></div>\n\n"}, "Object#for_option:do:":{args:["op_name", "block"], doc:"<p>Runs a given block if an option is in ARGV.</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#with:each:":{args:["object", "block"], doc:"<p>Similar to #each: but also passing in a given <code data-lang=\"fancy\">object</code> to each invocation of <code data-lang=\"fancy\">block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each element in the collection and <code data-lang=\"fancy\">object</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">object</code> </label><div>Object to pass along to <code data-lang=\"fancy\">block</code> with each element in the collection.</div></div></div>\n\n"}, "ThreadPool#execute_synchronous:":{args:["block"], doc:"<p>Forward to message execute_synchronous:with_args:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "ThreadPool#execute:":{args:["block"], doc:"<p>Forward to message execute:with_args:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "Fancy FDoc JSON#write:":{args:["filename"], doc:"<p>Forward to message write:call:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#initialize:":{args:["@collection"], doc:"<p>Initializes a new FancyEnumerator with a given <code data-lang=\"fancy\">collection</code>,\nusing #each: for iteration.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">collection</code> </label><div>Collection to iterate over.</div></div></div>\n\n"}, "FancyEnumerator#:ended?":{args:[], doc:"<p>Indicates if an enumerator has ended (no more values left).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if the enumerator has ended (no more values left), <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n"}, "Fancy Package Specification#add_ruby_dependency:":{args:["gem_name"], doc:"<p>Forward to message add_ruby_dependency:version:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "ThreadPool#initialize:":{args:["@count"], doc:"<p>Forward to message initialize:limit:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#:rewind":{args:[], doc:"<p>Resets the enumerator to start from the collection's beginning.</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#:next":{args:[], doc:"<p>Returns the next element in the collection this enumerator is attached to.\nIt will move the internal position forward (compared to e.g. #peek, which doesn't).</p>\n\n<p>Example:\n a = [1,2,3]\n e = a to_enum\n e next # => 1\n e next # => 2\n e next # => 3\n e next # => raises Fancy StopIteration</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Next element in the collection this enumerator is attached to.</div></div></div>\n\n"}, "FancyEnumerator#initialize:with:":{args:["@collection", "@iterator"], doc:"<p>Initializes a new FancyEnumerator with a given <code data-lang=\"fancy\">collection</code>\nand <code data-lang=\"fancy\">iterator</code> selector to be used for iteration.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">collection</code> </label><div>Collection to iterate over.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">iterator</code> </label><div>Selector to use to iterate over <code data-lang=\"fancy\">collection</code>.</div></div></div>\n\n"}}, objects:{}}); })();
1
+ (function() { fancy.fdoc({title:"Fancy Documentation", objects:{}, date:"Wed Oct 05 23:06:04 -0700 2011", classes:{"File":{ancestors:["File", "Enumerable", "IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Enumerable", "Object", "Kernel"], instance_methods:{"write:":{file:"lib/rbx/file.fy", lines:[172, 172], doc:"<p>Writes a given <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> to a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">str</code> </label><div>String to be written to a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</div></div></div>\n\n", arg:["str"]}, ":newline":{file:"lib/rbx/file.fy", lines:[186, 186], doc:"<p>Writes a newline character to the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "writeln:":{file:"lib/file.fy", lines:[53, 53], doc:"<p>Writes a given argument as a String followed by a newline into the\nFile.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["x"]}, "println:":{file:"lib/file.fy", lines:[53, 53], doc:"<p>Writes a given argument as a String followed by a newline into the\nFile.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["x"]}, "print:":{file:"lib/rbx/file.fy", lines:[172, 172], doc:"<p>Writes a given <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> to a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">str</code> </label><div>String to be written to a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</div></div></div>\n\n", arg:["str"]}, ":modes":{file:"lib/rbx/file.fy", lines:[141, 141], doc:"<p>Returns the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> access modes <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> access modes <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[]}, ":open?":{file:"lib/rbx/file.fy", lines:[161, 161], doc:"<p>Indicates, if a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> is opened.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> opened, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[]}, "modes:":{file:"lib/rbx/file.fy", lines:[151, 151], doc:"<p>Sets the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> access modes <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">modes_arr</code> </label><div>New <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> access modes <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:["modes_arr"]}, ":close":{file:"lib/rbx/file.fy", lines:[59, 59], doc:"<p>Closes an opened <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":directory?":{file:"lib/rbx/file.fy", lines:[195, 195], doc:"<p>Indicates, if a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> is a <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> is a <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[]}, "read:":{file:"lib/rbx/file.fy", lines:[180, 180], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">bytes</code> </label><div>Integer the amount of bytes to read from a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</div></div></div>\n\n", arg:["bytes"]}}, doc:"<p>Instances of File represent files in the filesystem of the operating\nsystem on which Fancy is running.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"delete:":{file:"lib/rbx/file.fy", lines:[110, 110], doc:"<p>Deletes a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> with a given <code data-lang=\"fancy\">filename</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Path to <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> to be deleted.</div></div></div>\n\n", arg:["filename"]}, "open:modes:with:":{file:"lib/rbx/file.fy", lines:[30, 30], doc:"<p>Opens a File with a given <code data-lang=\"fancy\">filename</code>, a <code data-lang=\"fancy\">modes_arr</code> (<code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>) and a <code data-lang=\"fancy\">block</code>.</p>\n\n<p>E.g. to open a File with read access and read all lines and print them to STDOUT:</p>\n\n<p> File open: \"foo.txt\" modes: ['read] with: |f| {</p>\n\n<pre><code> { f eof? } while_false: {\n f readln println\n }\n</code></pre>\n\n<p> }</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that gets called with the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> object that has been opened.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Filename to open/create.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">modes_arr</code> </label><div>Array of symbols that describe the desired operations to perform.</div></div></div>\n\n", arg:["filename", "modes_arr", "block"]}, "touch:":{file:"lib/file.fy", lines:[40, 40], doc:"<p>Creates a new empty file with the given <code data-lang=\"fancy\">filename</code>, if it doesn't already exist.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Name of <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> to be created, if not already existant.</div></div></div>\n\n", arg:["filename"]}, "exists?:":{file:"lib/rbx/file.fy", lines:[46, 46], doc:"<p>Indicates if the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> with the given <code data-lang=\"fancy\">filename</code> exists.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Path to file to check for existance.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> exists, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["filename"]}, "rename:to:":{file:"lib/rbx/file.fy", lines:[131, 131], doc:"<p>Renames a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> on the filesystem.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">old_name</code> </label><div>Path to <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> to rename.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">new_name</code> </label><div>Path to new filename.</div></div></div>\n\n", arg:["old_name", "new_name"]}, "modes_str:":{file:"lib/rbx/file.fy", lines:[91, 91], doc:"<p>Returns the appropriate <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of the <code data-lang=\"fancy\">modes_arr</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> that represents the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> access modifiers, as used by Ruby.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">modes_arr</code> </label><div>Array of symbols that describe the desired operations to perform.</div></div></div>\n\n", arg:["modes_arr"]}, "directory?:":{file:"lib/rbx/file.fy", lines:[121, 121], doc:"<p>Indicates, if a given <code data-lang=\"fancy\">path</code> refers to a <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">path</code> </label><div>Path to check if it's a <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if the <code data-lang=\"fancy\">path</code> refers to a <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["path"]}, "open:modes:":{file:"lib/rbx/file.fy", lines:[73, 73], doc:"<p>Similar to open:modes:with: but takes no <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> argument to be\ncalled with the <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> instance.\nReturns the opened <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> instead and expects the caller to <code data-lang=\"fancy\">close</code> it manually.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Filename to open/create.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> instance that represents the opened <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">modes_arr</code> </label><div>Array of symbols that describe the desired operations to perform.</div></div></div>\n\n", arg:["filename", "modes_arr"]}, "read:":{file:"lib/file.fy", lines:[24, 24], doc:"<p>Reads all the contens (in ASCII mode) of a given file and returns\nthem as an Array of lines being read.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["filename"]}}}, "Set":{ancestors:["Set", "FancyEnumerable", "Object", "Object", "Kernel"], instance_methods:{":-":{file:"lib/set.fy", lines:[157, 157], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other Set to use for creating difference Set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Difference Set by removing all values from <code data-lang=\"fancy\">self</code> that are in <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"]}, "initialize:":{file:"lib/set.fy", lines:[15, 15], doc:"<p>Initialize a new Set with a given collection of values.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">values</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FancyEnumerable\" class=\"class-ref selectable\">FancyEnumerable</code> of values to be used as values for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["values"]}, ":initialize":{file:"lib/set.fy", lines:[26, 26], doc:"<p>Initialize a new empty Set.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":size":{file:"lib/set.fy", lines:[42, 42], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Amount of values in <code data-lang=\"fancy\">self</code> as a <code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code>.</div></div></div>\n\n", arg:[]}, "remove:":{file:"lib/set.fy", lines:[139, 139], doc:"<p>Removes a given object from a Set, if available.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be removed from <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["obj"]}, ":inspect":{file:"lib/set.fy", lines:[129, 129], doc:"<p>Returns a detailed <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of a Set.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":<<":{file:"lib/set.fy", lines:[89, 89], doc:"<p>Insert a value into the Set.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value to be inserted into <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["value"]}, ":values":{file:"lib/set.fy", lines:[34, 34], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Values in self as an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[]}, ":&":{file:"lib/set.fy", lines:[170, 170], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other Set to use for creating Set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Intersection Set containing only values that are in both <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"]}, ":+":{file:"lib/set.fy", lines:[148, 148], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other Set to use for creating union Set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Union Set containing all values in both <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"]}, ":==":{file:"lib/set.fy", lines:[68, 68], doc:"<p>Indicates, if two Sets are equal.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Set\" class=\"class-ref selectable\">Set</code> to compare <code data-lang=\"fancy\">self</code> against.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if self is equal to <code data-lang=\"fancy\">other</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["other"]}, "each:":{file:"lib/set.fy", lines:[112, 112], doc:"<p>Calls a given Block for each element of the Set.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each value in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, "includes?:":{file:"lib/set.fy", lines:[101, 101], doc:"<p>Indicates, if the Set includes a given value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value to be checked for if included in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">value</code> in <code data-lang=\"fancy\">self</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["value"]}, ":empty?":{file:"lib/set.fy", lines:[52, 52], doc:"<p>Indicates, if a Set is empty.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if Set is emty, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[]}, ":to_s":{file:"lib/set.fy", lines:[121, 121], doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of a Set.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}}, doc:"<p>A simple Set data structure class.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{":[]":{file:"lib/set.fy", lines:[78, 78], doc:"<p>Initialize a new Set with a given collection of values.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">values</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FancyEnumerable\" class=\"class-ref selectable\">FancyEnumerable</code> of values used for new Set.</div></div></div>\n\n", arg:["values"]}}}, "Struct":{ancestors:["Struct", "Enumerable", "Object", "Kernel"], instance_methods:{}, doc:"<p>Structs are light-weight classes with predefined read-writable slots.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"new:":{file:"lib/struct.fy", lines:[14, 14], doc:"<p>Creates a new Struct class with the given slots.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slots</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of slotnames the new Struct should contain.</div></div></div>\n\n", arg:["slots"]}}}, "Fancy Package":{ancestors:["Fancy Package", "Object", "Kernel"], instance_methods:{}, doc:"<p>The Fancy Package System.</p>\n\n<p>This class is used for installing and uninstalling fancy packages on\nthe system.</p>\n\n<p>Example:</p>\n\n<pre><code> $ fancy install bakkdoor/mongo.fy\n</code></pre>\n\n<p>Will install the mongo.fy package from http://github.com/bakkdoor/mongo.fy\nin the latest released version or get the current HEAD (master\nbranch) revision.</p>\n\n<p>You can then load the package in your source file via</p>\n\n<pre><code> require: \"mongo.fy\"\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", methods:{":add_to_loadpath":{file:"lib/package.fy", lines:[89, 89], doc:"<p>Adds the Fancy Package install dir to the loadpath so you can\neasily <code data-lang=\"fancy\">require:</code> packages into your code.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "uninstall:":{file:"lib/package.fy", lines:[52, 52], doc:"<p>Uninstalls a package with a given name (if installed).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">package_name</code> </label><div>Name of package to uninstall.</div></div></div>\n\n", arg:["package_name"]}, ":list_packages":{file:"lib/package.fy", lines:[60, 60], doc:"<p>Lists (prints) all installed packages on this system.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":package_list_file":{file:"lib/package.fy", lines:[80, 80], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Path to installed_packages.txt <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> on system.</div></div></div>\n\n", arg:[]}, ":root_dir":{file:"lib/package.fy", lines:[73, 73], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Fancy Package root install dir.</div></div></div>\n\n", arg:[]}, "install:":{file:"lib/package.fy", lines:[42, 42], doc:"<p>Installs a package with a given name.\nExpects package_name to be a string in the form of:\n user/repo\nWhich would get the package code from github.com/user/repo</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">package_name</code> </label><div>Name of package to install.</div></div></div>\n\n", arg:["package_name"]}}}, "RespondsToProxy":{ancestors:["RespondsToProxy", "BasicObject", "Object", "Kernel"], instance_methods:{"initialize:":{file:"lib/proxy.fy", lines:[48, 48], doc:"<p>Initializes a new RespondsToProxy for <code data-lang=\"fancy\">target</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">target</code> </label><div>Target receiver object.</div></div></div>\n\n", arg:["@target"]}, "unknown_message:with_params:":{file:"lib/proxy.fy", lines:[62, 62], doc:"<p>Forwards all incoming message to <code data-lang=\"fancy\">self</code> to <code data-lang=\"fancy\">@target</code>\nonly if <code data-lang=\"fancy\">@target</code> responds to them.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">msg</code> </label><div>Incoming message name.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">params</code> </label><div>Paremeters of incoming message send.</div></div></div>\n\n", arg:["msg", "params"]}}, doc:"<p>A RespondsToProxy is a Proxy that forwards any message sent to it to it's <code data-lang=\"fancy\">target</code> instance variable\nonly if it responds to that message. Any messages that <code data-lang=\"fancy\">target</code> doesn't respond to simply won't be sent\nand <code data-lang=\"fancy\">nil</code> will be returned.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Array":{ancestors:["Array", "FancyEnumerable", "Object", "Enumerable", "Object", "Kernel"], instance_methods:{":join":{file:"lib/array.fy", lines:[265, 265], doc:"<p>Joins all elements with the empty <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<pre><code> [\"hello\", \"world\", \"!\"] join # =&gt; \"hello,world!\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Elements of <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> joined to a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:[]}, "index:":{file:"lib/rbx/array.fy", lines:[84, 84], doc:"<p>Returns the index of an item (or nil, if it isn't in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">item</code> </label><div>Item/Value for which the index is requested within an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Index of the value passed in within the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>, or <code data-lang=\"fancy\">nil</code>, if value not present.</div></div></div>\n\n", arg:["item"]}, "remove_if:":{file:"lib/array.fy", lines:[321, 321], doc:"<p>Like <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> <code data-lang=\"fancy\" data-singleton-method-ref=\"remove:\" data-owner-class=\"Array\" class=\"singleton-method-ref selectable\">remove:</code>, but taking a condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.\nRemoves all elements that meet the given condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>, with all elements removed for which <code data-lang=\"fancy\">condition</code> yields true.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">condition</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (or <code data-lang=\"fancy\">Callable</code>) that indicates, if an element should be removed from <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["condition"]}, ":second":{file:"lib/array.fy", lines:[101, 101], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The second element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[]}, "select_with_index:":{file:"lib/array.fy", lines:[468, 468], doc:"<p>Same as #select:, just gets also called with an additional argument\nfor each element's index value.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"]}, ":first":{file:"lib/array.fy", lines:[94, 94], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The first element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[]}, "reverse_each:":{file:"lib/array.fy", lines:[157, 157], doc:"<p>Example:</p>\n\n<pre><code> [1,2,3] reverse_each: &lt;code data-lang=\"fancy\"&gt;{print&lt;/code&gt;}\n # prints: 321\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element (in reverse order).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, ":to_a":{file:"lib/array.fy", lines:[367, 367], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "prepend:":{file:"lib/array.fy", lines:[66, 66], doc:"<p>Prepends another <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> to this one.</p>\n\n<p>Example:</p>\n\n<pre><code> a = [1,2,3]\n a prepend: [4,5,6]\n a # =&gt; [4,5,6,1,2,3]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">arr</code> </label><div>Other <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> to be prepended to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["arr"]}, ":compact!":{file:"lib/array.fy", lines:[296, 296], doc:"<p>Removes all nil-value elements in place.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:[]}, "indices_of:":{file:"lib/array.fy", lines:[414, 414], doc:"<p>Returns an Array of all indices of this item. Empty Array if item does not occur.</p>\n\n<pre><code> [1, 'foo, 2, 'foo] indices_of: 'foo # =&gt; [1, 3]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">item</code> </label><div>Item/Value for which a list of indices is requested within an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all indices for a given value within an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> (possibly empty).</div></div></div>\n\n", arg:["item"]}, "at:":{file:"lib/rbx/array.fy", lines:[58, 58], doc:"<p>Returns the element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> at a given index.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index for value to retrieve.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value with the given index (if available), or <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["idx"]}, "each:":{file:"lib/array.fy", lines:[145, 145], doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"]}, "join:":{file:"lib/rbx/array.fy", lines:[106, 106], doc:"<p>Joins all elements in the Array with a given <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.\n [1,2,3] join: \", \\\342\200\235 # => \\\342\200\2351, 2, 3\"</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">join_str</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> by which to <code data-lang=\"fancy\">join</code> all elements in <code data-lang=\"fancy\">self</code> into a new <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Joined <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> with all elements with <code data-lang=\"fancy\">join_str</code>.</div></div></div>\n\n", arg:["join_str"]}, "remove_at:":{file:"lib/rbx/array.fy", lines:[46, 46], doc:"<p>Removes an element at a given index.\nIf given an Array of indices, removes all the elements with these indices.\nReturns the deleted object if an index was given, the last deleted object for an Array given.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["index"]}, "select!:":{file:"lib/array.fy", lines:[276, 276], doc:"<p>Removes all elements in place, that don't meet the condition.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>, but changed with all elements removed that don't yield <code data-lang=\"fancy\">true</code> for <code data-lang=\"fancy\">condition</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">condition</code> </label><div>A condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (or something <code data-lang=\"fancy\">Callable</code>) for selecting items from <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["condition"]}, "values_at:":{file:"lib/array.fy", lines:[237, 237], doc:"<p>Returns new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with elements at given indices.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx_arr</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of indices.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all the items with the given indices in <code data-lang=\"fancy\">idx_arr</code>.</div></div></div>\n\n", arg:["idx_arr"]}, ":indices":{file:"lib/array.fy", lines:[402, 402], doc:"<p>Returns an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all the indices of an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<pre><code> [1,2,3] indices # =&gt; [0,1,2]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all indices of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "at:put:":{file:"lib/rbx/array.fy", lines:[72, 72], doc:"<p>Inserts a given object at a given index (position) in the Array.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index to set a value for.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Value (object) to be set at the given index.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">obj</div></div></div>\n\n\n<p></code></p>\n", arg:["idx", "obj"]}, ":rest":{file:"lib/array.fy", lines:[124, 124], doc:"<p>Returns all elements except the first one as a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>All elements in an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> after the first one.</div></div></div>\n\n", arg:[]}, ":println":{file:"lib/array.fy", lines:[331, 331], doc:"<p>Prints each element on a seperate line.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "from:to:":{file:"lib/array.fy", lines:[434, 434], doc:"<p>Returns sub-array starting at from: and going to to:</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">from</code> </label><div>Start index for sub-array.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">to</code> </label><div>End index ofr sub-array.</div></div></div>\n\n", arg:["from", "to"]}, "append:":{file:"lib/array.fy", lines:[47, 47], doc:"<p>Appends another <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> onto this one.</p>\n\n<p>Example:</p>\n\n<pre><code> a = [1,2,3]\n a append: [3,4,5]\n a # =&gt; [1,2,3,3,4,5]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">arr</code> </label><div>Other <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> to be appended to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["arr"]}, "find:":{file:"lib/array.fy", lines:[211, 211], doc:"<p>Returns the item, if it's in the Array or nil (if not found).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">item</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> / Element to find in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">item</code> if, it's found in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>, otherwise <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["item"]}, "find_by:":{file:"lib/array.fy", lines:[226, 226], doc:"<p>Like find: but takes a block that gets called with each element to find it.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The first element, for which <code data-lang=\"fancy\">block</code> yields <code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:["block"]}, "remove:":{file:"lib/array.fy", lines:[308, 308], doc:"<p>Removes all occurances of obj in the Array.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be removed within <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>, with all occurances of <code data-lang=\"fancy\">obj</code> removed.</div></div></div>\n\n", arg:["obj"]}, ":*":{file:"lib/array.fy", lines:[376, 376], doc:"<p>Returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> that contains the elements of self num times\nin a row.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["num"]}, ":clone":{file:"lib/array.fy", lines:[27, 27], doc:"<p>Clones (shallow copy) the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A shallow copy of the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[]}, "reject!:":{file:"lib/array.fy", lines:[285, 285], doc:"<p>Same as Array#reject: but doing so in-place (destructive).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"]}, ":inspect":{file:"lib/array.fy", lines:[353, 353], doc:"<p>Returns a pretty-printed <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\">self</code>.\nExample:</p>\n\n<pre><code> [1, 'foo, \"bar\", 42] inspect # =&gt; \"[1, 'foo, \\\"bar\\\", 42]\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Pretty-printed <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "[]:":{file:"lib/rbx/array.fy", lines:[72, 72], doc:"<p>Inserts a given object at a given index (position) in the Array.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index to set a value for.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Value (object) to be set at the given index.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">obj</div></div></div>\n\n\n<p></code></p>\n", arg:["idx", "obj"]}, ":[]":{file:"lib/array.fy", lines:[87, 87], doc:"<p>Given an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of 2 <code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code>s, it returns the sub-array between the given indices.\nIf given a single <code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code>, returns the element at that index.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">index</code> </label><div>Index to get the value for or <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of 2 indices used for a sub-array.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Element(s) stored in <code data-lang=\"fancy\">self</code> at <code data-lang=\"fancy\">index</code>, possibly <code data-lang=\"fancy\">nil</code> or an empty <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:["index"]}, ":+":{file:"lib/array.fy", lines:[391, 391], doc:"<p>Returns concatenation with another <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<pre><code> [1,2,3] + [3,4,5] # =&gt; [1,2,3,3,4,5]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Concatenation of <code data-lang=\"fancy\">self</code> with another <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code></div></div></div>\n\n", arg:["other_arr"]}, "select:":{file:"lib/array.fy", lines:[453, 453], doc:"<p>Returns a new Array with all the elements in self that yield a\ntrue-ish value when called with the given Block.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>Predicate <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be used as filter.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all the elements for which <code data-lang=\"fancy\">block</code> doesn't yield <code data-lang=\"fancy\">false</code> or <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["block"]}, ":third":{file:"lib/array.fy", lines:[108, 108], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The third element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[]}, ":>>":{file:"lib/array.fy", lines:[252, 252], doc:"<p>Returns new Array with elements of other_arr appended to these.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other_arr</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> to be appended to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>New <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with <code data-lang=\"fancy\">other_arr</code> and <code data-lang=\"fancy\">self</code> appended.</div></div></div>\n\n", arg:["other_arr"]}, "each_with_index:":{file:"lib/array.fy", lines:[172, 172], doc:"<p>Iterate over all elements in <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.\nCalls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each element and its index.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each element and its inde in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"]}, "includes?:":{file:"lib/rbx/array.fy", lines:[21, 21], doc:"<p>Indicates, if an Array includes a given value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to search for in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">obj</code> is in <code data-lang=\"fancy\">self</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["obj"]}, ":fourth":{file:"lib/array.fy", lines:[115, 115], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The fourth element in the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[]}, "last:":{file:"lib/rbx/array.fy", lines:[94, 94], doc:"<p>Returns new Array with last n elements specified.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">count</code> </label><div>Number of last elements to get from an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with up to <code data-lang=\"fancy\">count</code> size of last elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["count"]}, ":to_s":{file:"lib/array.fy", lines:[342, 342], doc:"<p>Returns <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[]}, ":=?":{file:"lib/array.fy", lines:[194, 194], doc:"<p>Compares two Arrays where order does not matter.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> to compare this one to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if all elements of <code data-lang=\"fancy\">other</code> are in <code data-lang=\"fancy\">self</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["other"]}}, doc:"<p>Array class.\nArrays are dynamically resizable containers with a constant-time\nindex-based access to members.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"new:":{file:"lib/array.fy", lines:[17, 17], doc:"<p>Creates a new Array with a given <code data-lang=\"fancy\">size</code> (default value is <code data-lang=\"fancy\">nil</code>).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">size</code> </label><div>Initial size of the <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> to be created (values default to <code data-lang=\"fancy\">nil</code>).</div></div></div>\n\n", arg:["size"]}, ":===":{file:"lib/array.fy", lines:[488, 488], doc:"<p>Matches an <code data-lang=\"fancy\">Array</code> against another object.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">object</code> </label><div>Object to match <code data-lang=\"fancy\">self</code> against.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</code>, if no match, matched values (in an <code data-lang=\"fancy\">Array</code>) otherwise.</div></div></div>\n\n", arg:["object"]}, "new:with:":{file:"lib/rbx/array.fy", lines:[9, 9], doc:"<p>Creates a new Array with a given size and default-value.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["size", "default"]}}}, "Fixnum":{ancestors:["Fixnum", "Number", "Object", "ImmediateValue", "Integer", "Precision", "Numeric", "Comparable", "Object", "Kernel"], instance_methods:{}, doc:"<p>Standard class for integer values in Fancy.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Directory":{ancestors:["Directory", "Object", "Kernel"], instance_methods:{}, doc:"<p>Instances of <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> represent directories in the filesystem of\nthe operating system, in which Fancy is being run.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"delete:":{file:"lib/rbx/directory.fy", lines:[45, 45], doc:"<p>Deletes a directory with a given name, if it's empty.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">dirname</code> </label><div>Path to <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> to delete.</div></div></div>\n\n", arg:["dirname"]}, "list:":{file:"lib/rbx/directory.fy", lines:[56, 56], doc:"<p>Example usage:\n Directory list: \"tests/<em>*/</em>.fy\" # => [\"tests/file1.fy\", \"tests/more/file2.fy\"]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">pattern</code> </label><div>Directory pattern or name containing files to be returned as an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of files matching directory <code data-lang=\"fancy\">pattern</code>.</div></div></div>\n\n", arg:["pattern"]}, "create:":{file:"lib/rbx/directory.fy", lines:[15, 15], doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> on the filesystem, possibly throwing\nIOError Exceptions that might occur.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">dirname</code> </label><div>Path of <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> to create.</div></div></div>\n\n", arg:["dirname"]}, "exists?:":{file:"lib/directory.fy", lines:[15, 15], doc:"<p>Indicates, if a Directory exists with a given pathname.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">dirname</code> </label><div>Path of <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> to check for existance.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">@return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> exists, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["dirname"]}, "create!:":{file:"lib/rbx/directory.fy", lines:[30, 30], doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> on the filesystem, ignoring any\nExceptions that might occur.\nBasically works like running <code>mkdir -p</code> on the shell.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">dirname</code> </label><div>Path of <code data-lang=\"fancy\" data-class-ref=\"Directory\" class=\"class-ref selectable\">Directory</code> to create.</div></div></div>\n\n", arg:["dirname"]}}}, "ProxyReceiver":{ancestors:["ProxyReceiver", "BasicObject", "Object", "Kernel"], instance_methods:{"unknown_message:with_params:":{file:"lib/proxy.fy", lines:[26, 26], doc:"<p>Forwards all incoming messages to <code data-lang=\"fancy\">self</code> to <code data-lang=\"fancy\">@proxy</code> and then <code data-lang=\"fancy\">@obj</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">msg</code> </label><div>Incoming message name.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">params</code> </label><div>Paremeters of incoming message send.</div></div></div>\n\n", arg:["msg", "params"]}, "initialize:for:":{file:"lib/proxy.fy", lines:[16, 16], doc:"<p>Initializes a new ProxyReceiver with <code data-lang=\"fancy\">proxy</code> for <code data-lang=\"fancy\">obj</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">proxy</code> </label><div>Proxy receiver for <code data-lang=\"fancy\">obj</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Original receiver object.</div></div></div>\n\n", arg:["@proxy", "@obj"]}}, doc:"<p>A ProxyReceiver is an object which proxies all message sends to it to 2 other objects.\nIt will send each message first to its <code data-lang=\"fancy\">proxy</code> instance variable and then to the <code data-lang=\"fancy\">obj</code> instance variable.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "NameError":{ancestors:["NameError", "StandardError", "Exception", "Object", "Kernel"], instance_methods:{}, doc:"<p>NameError exception class. Used within Rubinius.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Range":{ancestors:["Range", "FancyEnumerable", "Object", "Enumerable", "Object", "Kernel"], instance_methods:{"each:":{file:"lib/rbx/range.fy", lines:[36, 36], doc:"<p>Calls <code data-lang=\"fancy\">block</code> on each value in <code data-lang=\"fancy\">self</code>. Used for iterating over a <code data-lang=\"fancy\" data-class-ref=\"Range\" class=\"class-ref selectable\">Range</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with every value in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, "initialize:to:":{file:"lib/rbx/range.fy", lines:[13, 13], doc:"<p>Initializes a new Range starting at <code data-lang=\"fancy\">start</code> and ending at <code data-lang=\"fancy\">end</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">end</code> </label><div>End element of Range.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">start</code> </label><div>Start element of Range.</div></div></div>\n\n", arg:["@start", "@end"]}, ":to_s":{file:"lib/range.fy", lines:[18, 18], doc:"<p>Same as Range#inspect</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":inspect":{file:"lib/range.fy", lines:[26, 26], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}}, doc:"<p>Class of Range values. Are created by using Range literal syntax in Fancy.</p>\n\n<p>Example:</p>\n\n<pre><code> (10..100) # Range from 10 to 100\n # the following code does the same as above:\n Range new: 10 to: 100\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Thread":{ancestors:["Thread", "Object", "Kernel"], instance_methods:{}, doc:"<p>Thread class.\nDeals with parallel execution.</p>\n\n<p>TODO:\n=> Still need to add more Fancy-ish wrapper methods and method\n documentation.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"sleep:":{file:"lib/rbx/thread.fy", lines:[87, 87], doc:"<p>Sets the Fancy process for a given amount of seconds to sleep.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["seconds"]}}}, "Fancy Package Uninstaller":{ancestors:["Fancy Package Uninstaller", "Object", "Kernel"], instance_methods:{}, doc:"<p><code data-lang=\"fancy\">Fancy</code> Package@ Uninstaller.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Bignum":{ancestors:["Bignum", "Number", "Object", "Integer", "Precision", "Numeric", "Comparable", "Object", "Kernel"], instance_methods:{}, doc:"<p>Class for large integer values in Fancy.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "MatchData":{ancestors:["MatchData", "Unmarshalable", "Object", "Kernel"], instance_methods:{"at:":{file:"lib/rbx/match_data.fy", lines:[16, 16], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index of value to get.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value at index <code data-lang=\"fancy\">idx</code>.</div></div></div>\n\n", arg:["idx"]}, ":to_a":{file:"lib/rbx/match_data.fy", lines:[24, 24], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> representation of <code data-lang=\"fancy\">self</code> containing matched values of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}}, doc:"<p>MatchData instances are created when using the #=== match operator\n(e.g. by using match/case expressions).</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "NilClass":{ancestors:["NilClass", "ImmediateValue", "Object", "Kernel"], instance_methods:{"if_nil:":{file:"lib/nil_class.fy", lines:[41, 41], doc:"<p>Calls <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, "if_nil:else:":{file:"lib/nil_class.fy", lines:[53, 53], doc:"<p>Calls <code data-lang=\"fancy\">then_block</code> with <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">then_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">else_block</code> </label><div>Gets ignored.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">then_block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["then_block", "else_block"]}, ":nil?":{file:"lib/nil_class.fy", lines:[61, 61], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:[]}, ":not":{file:"lib/nil_class.fy", lines:[87, 87], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:[]}, "if_true:":{file:"lib/nil_class.fy", lines:[21, 21], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["block"]}, "if_true:else:":{file:"lib/nil_class.fy", lines:[30, 30], doc:"<p>Calls <code data-lang=\"fancy\">else_block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">else_block</code>.</div></div></div>\n\n", arg:["then_block", "else_block"]}, ":to_a":{file:"lib/nil_class.fy", lines:[79, 79], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An empty <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[]}, ":to_s":{file:"lib/nil_class.fy", lines:[69, 69], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An empty <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:[]}, ":inspect":{file:"lib/nil_class.fy", lines:[95, 95], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</code> as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:[]}}, doc:"<p>NilClass. The class of the singleton <code data-lang=\"fancy\">nil</code> value.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{":new":{file:"lib/nil_class.fy", lines:[13, 13], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:[]}}}, "Regexp":{ancestors:["Regexp", "Object", "Kernel"], instance_methods:{}, doc:"<p>Regular Expression class. Used by Regexp literals in Fancy.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Date":{ancestors:["Date", "Comparable", "Object", "Kernel"], instance_methods:{}, doc:"<p>Date class. Used for timely stuff.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "TCPSocket":{ancestors:["TCPSocket", "IPSocket", "BasicSocket", "IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Enumerable", "Object", "Kernel"], instance_methods:{}, doc:"<p>TCP Socket class.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"open:port:":{file:"lib/rbx/tcp_socket.fy", lines:[17, 17], doc:"<p>Creates and opens a new <code data-lang=\"fancy\" data-class-ref=\"TCPSocket\" class=\"class-ref selectable\">TCPSocket</code> on <code data-lang=\"fancy\">server</code> and <code data-lang=\"fancy\">port</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">server</code> </label><div>Server hostname to open Socket on.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">port</code> </label><div>Server port to open Socket on.</div></div></div>\n\n", arg:["server", "port"]}}}, "Fancy Documentation":{ancestors:["Fancy Documentation", "Object", "Kernel"], instance_methods:{"format:":{file:"lib/documentation.fy", lines:[58, 58], doc:"<p>If format is specified, the documentation string will be\nconverted using the corresponding formatter. This allows\nyou to extend Fancy documentation system, and produce\nhtml documents, man pages, or anything you can imagine.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["format"]}, ":docs":{doc:"<p>An array of docstrings for the object beind documented.</p>\n\n<p>We have an array of docstrings because in Fancy, some\nthings like classes can be re-openned and the user may\nspecify new documentation for it each time. Thus we dont\nwant to loose the previous documentation but rather build\nupon it. That is, fancy supports incremental documentation.</p>\n\n<div class=\"doctags\"></div>\n\n"}, ":specs":{doc:"<p>An array of associated Fancy specs for the object\nbeing documented.</p>\n\n<p>Its a lot better to keep the associated specs in\nFancy Documentation objects instead of just having them\nin method instances. This allows us to associate any object\nwith an spec example.</p>\n\n<p>This way you can have a single Fancy spec example that\nis related to many objects (methods, constants, classes)\nthat are being specified. Later in documentation, we can\nprovide links to all specs where an object is being exercised.</p>\n\n<div class=\"doctags\"></div>\n\n"}}, doc:"<p>A Fancy Documentation object is a holder for docstrings and specs.\nKeeps a registry of documentation for anything Fancy.</p>\n\n<p>Provides methods for searching and formatting an Object's docstrings.\nThis can be be handy for users of the interactive Fancy REPL,\ndocument generators, instrospection tools, IDEs, anything!</p>\n\n<p>This object can be converted to just anything by using its format:\nmethod. Formatters can be registered with Fancy Documentation#formatter:is:</p>\n\n<p>By default two formatters are defined:</p>\n\n<p> 'fancy => Returns the Fancy::Documentation object\n 'string => Returns the docs string representation</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"for:append:":{file:"lib/documentation.fy", lines:[70, 70], doc:"<p>Append docstring to the documentation for obj.\nIf obj has no documentation, one is created for it.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["obj", "docstring"]}, "remove:":{file:"lib/rbx/documentation.fy", lines:[55, 55], doc:"<p>Removes the documentation for obj.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["obj"]}, "formatter:is:":{file:"lib/documentation.fy", lines:[91, 91], doc:"<p>Registers a callable object as formatter under name.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["name", "callable"]}, ":formatters":{file:"lib/documentation.fy", lines:[100, 100], doc:"<p>Obtain the hash of known documentation formatters.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "for:is:":{file:"lib/rbx/documentation.fy", lines:[38, 38], doc:"<p>Create a Fancy::Documentation instance.</p>\n\n<p>Note: As we're bootstrapping, we cannot set documentation here as\nan string literal.</p>\n\n<p>We are the very first thing to load, so just create a new\nFancy::Documentation object without using new:, and set it as\nfancy docs.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["obj", "docstring"]}, "for:":{file:"lib/rbx/documentation.fy", lines:[50, 50], doc:"<p>Obtains the Fancy Documentation for obj.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["obj"]}, "formatter:":{file:"lib/documentation.fy", lines:[83, 83], doc:"<p>Obtains a formatter by a given name. Returns a callable object.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["name"]}}}, "TrueClass":{ancestors:["TrueClass", "ImmediateValue", "Object", "Kernel"], instance_methods:{":not":{file:"lib/true_class.fy", lines:[70, 70], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:[]}, "if_true:":{file:"lib/true_class.fy", lines:[24, 24], doc:"<p>Calls <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, "if_true:else:":{file:"lib/true_class.fy", lines:[36, 36], doc:"<p>Calls <code data-lang=\"fancy\">then_block</code> with <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">then_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">else_block</code> </label><div>Gets ignored.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">then_block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["then_block", "else_block"]}, ":true?":{file:"lib/true_class.fy", lines:[44, 44], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:[]}, ":to_a":{file:"lib/true_class.fy", lines:[62, 62], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An empty <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:[]}, ":to_s":{file:"lib/true_class.fy", lines:[52, 52], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:[]}, ":inspect":{file:"lib/true_class.fy", lines:[52, 52], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:[]}}, doc:"<p>TrueClass. The class of the singleton <code data-lang=\"fancy\">true</code> value.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{":new":{file:"lib/true_class.fy", lines:[13, 13], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:[]}}}, "Console":{ancestors:["Console", "Object", "Kernel"], instance_methods:{}, doc:"<p>Console class. Used for <code data-lang=\"fancy\">STDIO</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{":newline":{file:"lib/rbx/console.fy", lines:[7, 7], doc:"<p>Prints a newline to <code data-lang=\"fancy\">STDOUT</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "println:":{file:"lib/rbx/console.fy", lines:[27, 27], doc:"<p>Prints a given object on <code data-lang=\"fancy\">STDOUT</code>, followed by a newline.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be printed on <code data-lang=\"fancy\">STDOUT</code>, followed by a newline.</div></div></div>\n\n", arg:["obj"]}, ":readln":{file:"lib/rbx/console.fy", lines:[55, 55], doc:"<p>Reads a line from <code data-lang=\"fancy\">STDIN</code> and returns it as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Line (<code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>) read from <code data-lang=\"fancy\">STDIN</code>.</div></div></div>\n\n", arg:[]}, "print:":{file:"lib/rbx/console.fy", lines:[17, 17], doc:"<p>Prints a given object on <code data-lang=\"fancy\">STDOUT</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be printed on <code data-lang=\"fancy\">STDOUT</code>.</div></div></div>\n\n", arg:["obj"]}, ":clear":{file:"lib/rbx/console.fy", lines:[61, 61], doc:"<p>Clears the <code data-lang=\"fancy\" data-class-ref=\"Console\" class=\"class-ref selectable\">Console</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "readln:":{file:"lib/rbx/console.fy", lines:[40, 40], doc:"<p>Prints a given message to <code data-lang=\"fancy\">STDOUT</code>, followed by reading a line from\n<code data-lang=\"fancy\">STDIN</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> that should be printed to <code data-lang=\"fancy\">STDOUT</code> before reading from <code data-lang=\"fancy\">STDIN</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Line (<code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>) read from <code data-lang=\"fancy\">STDIN</code>.</div></div></div>\n\n", arg:["message"]}}}, "FancyEnumerable":{ancestors:["FancyEnumerable", "Object", "Kernel"], instance_methods:{"superior_by:taking:":{file:"lib/enumerable.fy", lines:[369, 369], doc:"<p>Returns the superior element in the <code data-lang=\"fancy\">Enumerable</code> that has met\nthe given comparison block with all other elements,\napplied to whatever <code data-lang=\"fancy\">selection_block</code> returns for each element.</p>\n\n<p>Examples:</p>\n\n<pre><code> [1,2,5,3,4] superior_by: '&gt; # =&gt; 5\n [1,2,5,3,4] superior_by: '&lt; # =&gt; 1\n [[1,2], [2,3,4], [], [1]] superior_by: '&gt; taking: 'size # =&gt; [2,3,4]\n [[1,2], [2,3,4], [-1]] superior_by: '&lt; taking: 'first # =&gt; [-1]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">comparison_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be used for comparison.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">selection_block</code> </label><div>defaults to <code data-lang=\"fancy\">identity</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Superior element in <code data-lang=\"fancy\">self</code> in terms of <code data-lang=\"fancy\">comparison_block</code>.</div></div></div>\n\n", arg:["comparison_block", "selection_block"]}, ":first":{file:"lib/enumerable.fy", lines:[320, 320], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>First element in <code data-lang=\"fancy\">self</code> or <code data-lang=\"fancy\">nil</code>, if empty.</div></div></div>\n\n", arg:[]}, "sort_by:":{file:"lib/enumerable.fy", lines:[477, 477], doc:"<p>Sorts a collection by a given comparison block.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> taking 2 arguments used to compare elements in a collection.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Sorted <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, "inject:into:":{file:"lib/enumerable.fy", lines:[267, 267], doc:"<p>Same as reduce:init_val: but taking the initial value as first\nand the reducing block as second parameter.</p>\n\n<p>Example:</p>\n\n<pre><code> [1,2,3] inject: 0 into: |sum val| { sum + val } # =&gt; 6\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", arg:["val", "block"]}, "reverse_each:":{file:"lib/enumerable.fy", lines:[531, 531], doc:"<p>Runs <code data-lang=\"fancy\">block</code> for each element on reversed version of self.\nIf <code data-lang=\"fancy\">self</code> is not a sorted collection, no guarantees about the reverse order can be given.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element in reverse order.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"]}, "partition_by:":{file:"lib/enumerable.fy", lines:[437, 437], doc:"<p>Example:</p>\n\n<pre><code> 0 upto: 10 . partition_by: |x| { x &lt; 3 } # =&gt; [[0, 1, 2], [3, 4, 5, 6, 7, 8, 9, 10]]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that gets used to decide when to partition elements in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>s, partitioned by equal return values of calling <code data-lang=\"fancy\">block</code> with each element</div></div></div>\n\n", arg:["block"]}, "each:in_between:":{file:"lib/enumerable.fy", lines:[23, 23], doc:"<p>Similar to <code data-lang=\"fancy\" data-method=\"each:\" class=\"selectable\">each:</code> but calls an additional <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> between\ncalling the first <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> for each element in self.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["each_block", "between_block"]}, ":max":{file:"lib/enumerable.fy", lines:[390, 390], doc:"<p>Returns the maximum value in the Enumerable (via the '>' comparison message).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Maximum value in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "map:":{file:"lib/enumerable.fy", lines:[123, 123], doc:"<p>Returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with the results of calling a given block for every element.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that gets called with each element in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> containing all values of calling <code data-lang=\"fancy\">block</code> with each element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, ":last":{file:"lib/enumerable.fy", lines:[330, 330], doc:"<p>Returns the last element in an Enumerable.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Last element in <code data-lang=\"fancy\">self</code> or <code data-lang=\"fancy\">nil</code>, if empty.</div></div></div>\n\n", arg:[]}, ":uniq":{file:"lib/enumerable.fy", lines:[279, 279], doc:"<p>Returns a new Array with all unique values (double entries are skipped).</p>\n\n<p>Example:</p>\n\n<pre><code> [1,2,1,2,3] uniq # =&gt; [1,2,3]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all unique elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "take_while:":{file:"lib/enumerable.fy", lines:[170, 170], doc:"<p>Returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> by taking elements from the beginning\nas long as they meet the given condition block.</p>\n\n<p>Example:</p>\n\n<pre><code> [1,2,3,4,5] take_while: |x| { x &lt; 4 } # =&gt; [1,2,3]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all elements from the beginning until <code data-lang=\"fancy\">condition</code> yields <code data-lang=\"fancy\">false</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">condition</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that is used as a condition for filtering.</div></div></div>\n\n", arg:["condition"]}, ":product":{file:"lib/enumerable.fy", lines:[418, 418], doc:"<p>Calculates the product of all the elements in the <code data-lang=\"fancy\">Enumerable</code>\n(assuming them to be <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code>s (implementing <code data-lang=\"fancy\">+</code> &amp; <code data-lang=\"fancy\">*</code>)).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "in_groups_of:":{file:"lib/enumerable.fy", lines:[488, 488], doc:"<p>Example usage:</p>\n\n<pre><code> [1,2,3,4,5] in_groups_of: 3 # =&gt; [[1,2,3],[4,5]]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>s with a max size of <code data-lang=\"fancy\">size</code> (grouped).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">size</code> </label><div>Maximum size of each group.</div></div></div>\n\n", arg:["size"]}, "reject:":{file:"lib/enumerable.fy", lines:[151, 151], doc:"<p>Similar to <code data-lang=\"fancy\" data-method=\"select:\" class=\"selectable\">select:</code> but inverse.\nReturns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with all elements that don't meet the given condition block.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["condition"]}, "join:":{file:"lib/enumerable.fy", lines:[40, 40], doc:"<p>Joins a collection with a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> between each element, returning a new <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<pre><code> \"hello, world\" join: \"-\" # =&gt; \"h-e-l-l-o-,- -w-o-r-l-d\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">str</code> </label><div>Value (usually a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>) to be used for the joined <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> containing all elements in <code data-lang=\"fancy\">self</code> interspersed with <code data-lang=\"fancy\">str</code>.</div></div></div>\n\n", arg:["str"]}, ":empty?":{file:"lib/enumerable.fy", lines:[309, 309], doc:"<p>Indicates, if the Enumerable is empty (has no elements).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if size of <code data-lang=\"fancy\">self</code> is 0, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[]}, ":compact":{file:"lib/enumerable.fy", lines:[348, 348], doc:"<p>Returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with all values removed that are <code data-lang=\"fancy\">nil</code> ( return <code data-lang=\"fancy\">true</code> on <code data-lang=\"fancy\">nil?</code> ).</p>\n\n<p>Example:</p>\n\n<pre><code> [1,2,nil,3,nil] compact # =&gt; [1,2,3]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with all non-nil elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":reverse":{file:"lib/enumerable.fy", lines:[518, 518], doc:"<p>Returns <code data-lang=\"fancy\">self</code> in reverse order.\nThis only makes sense for collections that have an ordering.\nIn either case, it simply converts <code data-lang=\"fancy\">self</code> to an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> and returns it in reversed order.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code> in reverse order.</div></div></div>\n\n", arg:[]}, "superior_by:":{file:"lib/enumerable.fy", lines:[350, 350], doc:"<p>Forward to message superior_by:taking:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["comparison_block"]}, "all?:":{file:"lib/enumerable.fy", lines:[78, 78], doc:"<p>Takes condition-block and returns <code data-lang=\"fancy\">true</code> if all elements meet it.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>Predicate <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element until it returns <code data-lang=\"fancy\">false</code> for any one of them.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if all elements in <code data-lang=\"fancy\">self</code> yield <code data-lang=\"fancy\">true</code> for <code data-lang=\"fancy\">block</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["condition"]}, ":average":{file:"lib/enumerable.fy", lines:[425, 425], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Average value in <code data-lang=\"fancy\">self</code> (expecting <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code>s or Objects implementing <code data-lang=\"fancy\">+</code> and <code data-lang=\"fancy\">*</code>).</div></div></div>\n\n", arg:[]}, "find:":{file:"lib/enumerable.fy", lines:[100, 100], doc:"<p>Returns <code data-lang=\"fancy\">nil</code>, if <code data-lang=\"fancy\">item</code> (or anything that returns <code data-lang=\"fancy\">true</code> when comparing to <code data-lang=\"fancy\">item</code>) isn't found.\nOtherwise returns that element that is equal to <code data-lang=\"fancy\">item</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">item</code> </label><div>Item to be found in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The first element that is equal to <code data-lang=\"fancy\">item</code> or <code data-lang=\"fancy\">nil</code>, if none found.</div></div></div>\n\n", arg:["item"]}, "find_by:":{file:"lib/enumerable.fy", lines:[112, 112], doc:"<p>Similar to <code data-lang=\"fancy\" data-method=\"find:\" class=\"selectable\">find:</code> but takes a block that is called for each element to find it.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"]}, "drop:":{file:"lib/enumerable.fy", lines:[234, 234], doc:"<p>Example:</p>\n\n<pre><code> [1,2,3,4,5] drop: 2 # =&gt; [3,4,5]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">amount</code> </label><div>Amount of elements to skip in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all but the first <code data-lang=\"fancy\">amount</code> elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["amount"]}, ":size":{file:"lib/enumerable.fy", lines:[295, 295], doc:"<p>Returns the size of an Enumerable.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Amount of elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "any?:":{file:"lib/enumerable.fy", lines:[62, 62], doc:"<p>Indicates, if any element meets the condition.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">condition</code> yields <code data-lang=\"fancy\">true</code> for any element, <code data-lang=\"fancy\">false</code> otherwise.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">condition</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (or <code data-lang=\"fancy\">Callable</code>) that is used to check if any element in <code data-lang=\"fancy\">self</code> yields true for it.</div></div></div>\n\n", arg:["condition"]}, "take:":{file:"lib/enumerable.fy", lines:[218, 218], doc:"<p>Example:</p>\n\n<pre><code> [1,2,3,4] take: 2 # =&gt; [1,2]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">amount</code> </label><div>Amount of elements to take from <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>First <code data-lang=\"fancy\">amount</code> elements of <code data-lang=\"fancy\">self</code> in an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</div></div></div>\n\n", arg:["amount"]}, "drop_while:":{file:"lib/enumerable.fy", lines:[191, 191], doc:"<p>Similar to <code data-lang=\"fancy\" data-method=\"take_while:\" class=\"selectable\">take_while:</code> but inverse.\nReturns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> by skipping elements from the beginning\nas long as they meet the given condition block.</p>\n\n<p>Example:</p>\n\n<pre><code> [1,2,3,4,5] drop_while: |x| { x &lt; 4 } # =&gt; [4,5]\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", arg:["condition"]}, ":sum":{file:"lib/enumerable.fy", lines:[409, 409], doc:"<p>Calculates the sum of all the elements in the <code data-lang=\"fancy\">Enumerable</code>\n(assuming them to be <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code>s (implementing '+' &amp; '*')).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "select:":{file:"lib/enumerable.fy", lines:[138, 138], doc:"<p>Returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with all elements that meet the given condition block.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> containing all elements in <code data-lang=\"fancy\">self</code> that yield <code data-lang=\"fancy\">true</code> when called with <code data-lang=\"fancy\">condition</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">condition</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that is used as a filter on all elements in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["condition"]}, "includes?:":{file:"lib/enumerable.fy", lines:[15, 15], doc:"<p>Indicates, if a collection includes a given element.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">item</code> </label><div>Item to check if it's included in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">item</code> in <code data-lang=\"fancy\">self</code>, otherwise <code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:["item"]}, "reduce:init_val:":{file:"lib/enumerable.fy", lines:[250, 250], doc:"<p>Calculates a value based on a given block to be called on an accumulator\nvalue and an initial value.</p>\n\n<p>Example:</p>\n\n<pre><code> [1,2,3] reduce: |sum val| { sum + val } init_val: 0 # =&gt; 6\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", arg:["block", "init_val"]}, ":random":{file:"lib/enumerable.fy", lines:[460, 460], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Random element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":min":{file:"lib/enumerable.fy", lines:[400, 400], doc:"<p>Returns the minimum value in the Enumerable (via the '&lt;' comparison message).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Minimum value in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}}, doc:"<p>Mixin-Class with useful methods for collections that implement an <code data-lang=\"fancy\" data-method=\"each:\" class=\"selectable\">each:</code> method.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Tuple":{ancestors:["Rubinius Tuple", "FancyEnumerable", "Object", "Enumerable", "Object", "Kernel"], instance_methods:{":second":{file:"lib/tuple.fy", lines:[31, 31], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The second element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":third":{file:"lib/tuple.fy", lines:[39, 39], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The third element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "at:":{file:"lib/rbx/tuple.fy", lines:[34, 34], doc:"<p>Returns an element at a given indes.\nPossibly throws an <code data-lang=\"fancy\" data-class-ref=\"Rubinius\" class=\"class-ref selectable\">Rubinius</code> <code data-lang=\"fancy\" data-class-ref=\"Rubinius ObjectBoundsExceededError\" class=\"class-ref selectable\">ObjectBoundsExceededError</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index for the element to get.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Element at the given index within the <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> or <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["idx"]}, ":==":{file:"lib/tuple.fy", lines:[97, 97], doc:"<p>Compares two <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code>s with each other.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> to compare <code data-lang=\"fancy\">self</code> with.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if tuples are equal element-wise, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["other"]}, "each:":{file:"lib/tuple.fy", lines:[57, 57], doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each element in the <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Return value of calling <code data-lang=\"fancy\">block</code> on the last item in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, ":first":{file:"lib/tuple.fy", lines:[23, 23], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The first element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":fourth":{file:"lib/tuple.fy", lines:[47, 47], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The fourth element in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "reverse_each:":{file:"lib/tuple.fy", lines:[73, 73], doc:"<p>Example:</p>\n\n<pre><code> (1,2,3) reverse_each: &lt;code data-lang=\"fancy\"&gt;{print&lt;/code&gt;}\n # prints: 321\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called for each element (in reverse order).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, "at:put:":{file:"lib/rbx/tuple.fy", lines:[44, 44], doc:"<p>Sets a value for a given index within a <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index of element to set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">val</code> </label><div>Value to set at given index.</div></div></div>\n\n", arg:["idx", "val"]}, ":inspect":{file:"lib/tuple.fy", lines:[105, 105], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "[]:":{file:"lib/rbx/tuple.fy", lines:[44, 44], doc:"<p>Sets a value for a given index within a <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index of element to set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">val</code> </label><div>Value to set at given index.</div></div></div>\n\n", arg:["idx", "val"]}, ":[]":{file:"lib/tuple.fy", lines:[15, 15], doc:"<p>Forwards to <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code>#at:.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["idx"]}}, doc:"<p>Tuples are fixed-size containers providing index-based access to its\nelements.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"new:":{file:"lib/rbx/tuple.fy", lines:[16, 16], doc:"<p>Initializes a new <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> with a given amount of element slots.\nE.g. if <code data-lang=\"fancy\">size</code> is <code data-lang=\"fancy\">2</code>, creates a 2-Tuple.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">size</code> </label><div>Size of the <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> (amount of values to hold).</div></div></div>\n\n", arg:["size"]}, ":===":{file:"lib/tuple.fy", lines:[127, 127], doc:"<p>Matches <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> class against an object.\nIf the given object is a Tuple instance, return a Tuple object.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be matched against</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Tuple instance containing the values of <code data-lang=\"fancy\">obj</code> to be used in pattern matching.</div></div></div>\n\n", arg:["obj"]}}}, "NoMethodError":{ancestors:["NoMethodError", "NameError", "StandardError", "Exception", "Object", "Kernel"], instance_methods:{":method_name":{file:"lib/rbx/no_method_error.fy", lines:[13, 13], doc:"<p>Returns the name of the method that was not found as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Name of the method not found (as <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>).</div></div></div>\n\n", arg:[]}}, doc:"<p>Exception class that gets thrown when a method wasn't found within a class.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Fancy BreakIteration":{ancestors:["Fancy BreakIteration", "StandardError", "Exception", "Object", "Kernel"], instance_methods:{}, doc:"<p>Raised to break the current iteration.\nIt is rescued by Block#loop.</p>\n\n<p>Example:</p>\n\n<pre><code> 10 times: |i| {\n i println\n if: (i == 3) then: {\n Fancy BreakIteration new raise!\n }\n }\n \"Done!\" println\n</code></pre>\n\n<p>Produces:</p>\n\n<pre><code> 0\n 1\n 2\n 3\n Done!\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Actor":{ancestors:["Actor", "Object", "Kernel"], instance_methods:{}, doc:"<p>Primitive Actor class.\nActors can be sent messages asynchronously. They process incoming messages\n(which can be any object, including Tuples, Arrays, Numbers ...) in a\nfirst-come, first-serve manner.</p>\n\n<p>Actors are used to implement asynchronous and future message sends in Fancy\nusing the <code data-lang=\"fancy\">@</code> and <code data-lang=\"fancy\">@@</code> syntax.</p>\n\n<p>Example usage:</p>\n\n<p> a = Actor spawn: {</p>\n\n<pre><code> loop: {\n match Actor receive {\n case 'hello -&gt; \"Hello World\" println\n case 'quit -&gt;\n \"OK, done!\" println\n break # Quit loop and let actor die\n }\n }\n</code></pre>\n\n<p> }</p>\n\n<p> 10 times: {</p>\n\n<pre><code> a ! 'hello # send 'hello to actor asynchronously\n</code></pre>\n\n<p> }\n a ! 'quit</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"spawn:":{file:"lib/rbx/actor.fy", lines:[51, 51], doc:"<p>Example usage:</p>\n\n<pre><code> Actor spawn: {\n loop: {\n Actor receive println # print all incoming messages\n }\n }\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that represents the <code data-lang=\"fancy\" data-class-ref=\"Actor\" class=\"class-ref selectable\">Actor</code>'s code body to be executed in a new <code data-lang=\"fancy\" data-class-ref=\"Thread\" class=\"class-ref selectable\">Thread</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"Actor\" class=\"class-ref selectable\">Actor</code> running <code data-lang=\"fancy\">block</code> in a seperate <code data-lang=\"fancy\" data-class-ref=\"Thread\" class=\"class-ref selectable\">Thread</code>.</div></div></div>\n\n", arg:["block"]}}}, "String":{ancestors:["String", "FancyEnumerable", "Object", "Enumerable", "Comparable", "Object", "Kernel"], instance_methods:{":blank?":{file:"lib/string.fy", lines:[42, 42], doc:"<p>Indicates, if a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> consists only of whitespace.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">self</code> consists only of whitespace, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[]}, "from:to:":{file:"lib/rbx/string.fy", lines:[35, 35], doc:"<p>Returns a Substring from <code data-lang=\"fancy\">from</code> to <code data-lang=\"fancy\">to</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">from</code> </label><div>Start index.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">to</code> </label><div>End index.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Substring starting at index <code data-lang=\"fancy\">from</code> and ending at <code data-lang=\"fancy\">to</code>.</div></div></div>\n\n", arg:["from", "to"]}, "append:":{file:"lib/rbx/string.fy", lines:[137, 137], doc:"<p>Appends another <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> onto this <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<p>Example usage:\n str = \"hello\"\n str append: \" world!\"\n str # => \"hello world!\"</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">string</code> </label><div>Other <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> to append on <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>, but modified.</div></div></div>\n\n", arg:["string"]}, ":*":{file:"lib/string.fy", lines:[58, 58], doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> that is the num-fold concatenation of itself.</p>\n\n<pre><code> \"foo\" * 3 # =&gt; \\\342\200\235foofoofoo\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">num</code> </label><div>Amount of concatenations to do with <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> that is the num-fold concatenation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["num"]}, ":lines":{file:"lib/string.fy", lines:[102, 102], doc:"<p>Returns the lines of a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> as an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all the lines in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":eval":{file:"lib/rbx/string.fy", lines:[79, 79], doc:"<p>Evaluates a <code data-lang=\"fancy\">String</code> in the current <code data-lang=\"fancy\">Binding</code> and returns its value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of evaluating <code data-lang=\"fancy\">self</code> as Fancy code.</div></div></div>\n\n", arg:[]}, ":bytes":{file:"lib/string.fy", lines:[163, 163], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FancyEnumerator\" class=\"class-ref selectable\">FancyEnumerator</code> of all bytes (<code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code> values) in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":<<":{file:"lib/string.fy", lines:[119, 119], doc:"<p>Appends <code data-lang=\"fancy\">object's</code> <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation to <code data-lang=\"fancy\">self</code>.</p>\n\n<p>Example:</p>\n\n<pre><code> str = \"hello\"\n str &lt;&lt; \" \"\n str &lt;&lt; 42\n str # =&gt; \"hello 42\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">object</code> </label><div>An <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> who's <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation will be appended to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>, but modified.</div></div></div>\n\n", arg:["object"]}, ":[]":{file:"lib/rbx/string.fy", lines:[24, 24], doc:"<p>Given an Array of 2 Numbers, it returns the substring between the given indices.\nIf given a Number, returns the character at that index.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["index"]}, ":characters":{file:"lib/string.fy", lines:[144, 144], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all characters (as <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>) in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":words":{file:"lib/string.fy", lines:[72, 72], doc:"<p>\"hello world\" words # => [\"hello\", \"world\"]</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all the whitespace seperated words in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "at:":{file:"lib/rbx/string.fy", lines:[53, 53], doc:"<p>Returns the character (as a <code data-lang=\"fancy\">String</code>) at index <code data-lang=\"fancy\">idx</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">idx</code> </label><div>Index of the character to retrieve.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Character in <code data-lang=\"fancy\">self</code> at position <code data-lang=\"fancy\">idx</code>.</div></div></div>\n\n", arg:["idx"]}, ":whitespace?":{file:"lib/string.fy", lines:[32, 32], doc:"<p>Indicates, if a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> is empty or a single whitespace character.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">self</code> consists only of a single whitespace character or is empty, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[]}, "each:":{file:"lib/rbx/string.fy", lines:[43, 43], doc:"<p>Calls a given <code data-lang=\"fancy\">Block</code> with each character in a <code data-lang=\"fancy\">String</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\">Block</code> to be called for each character in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, ":skip_leading_indentation":{file:"lib/string.fy", lines:[127, 127], doc:"<p>Remove leading white space for multi-line strings.\nThis method expects the first character to be an line return.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":character":{file:"lib/string.fy", lines:[151, 151], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code> (byte / ASCII) value of first character in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "split:":{file:"lib/rbx/string.fy", lines:[62, 62], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">str</code> </label><div><code data-lang=\"fancy\">String</code> where <code data-lang=\"fancy\">self</code> should be split at.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>An <code data-lang=\"fancy\">Array</code> of <code data-lang=\"fancy\">String</code> values in <code data-lang=\"fancy\">self</code> that are seperated by <code data-lang=\"fancy\">str</code>.</div></div></div>\n\n", arg:["str"]}, ":split":{file:"lib/rbx/string.fy", lines:[71, 71], doc:"<p>Splits a string by whitespace.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">Array</code> of all non-whitespace Substrings in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":++":{file:"lib/string.fy", lines:[22, 22], doc:"<p>Concatenate <code data-lang=\"fancy\">self</code> with another Object's <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation.</p>\n\n<pre><code> \"foo\\\342\200\235 ++ 42 # =&gt; \\\342\200\235foo42\\\342\200\235\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Object to concatenate <code data-lang=\"fancy\">self</code> with as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Concatenation of <code data-lang=\"fancy\">self</code> with <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"]}, "includes?:":{file:"lib/rbx/string.fy", lines:[148, 148], doc:"<p>Indicates if a given substring is in <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">substring</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> to be checked if it's in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">substring</code> is in <code data-lang=\"fancy\">self</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["substring"]}, ":rest":{file:"lib/string.fy", lines:[92, 92], doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> containing all but the first character.</p>\n\n<pre><code> \"hello\" rest # =&gt; \"ello\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> containing all but the first character.</div></div></div>\n\n", arg:[]}, ":raise!":{file:"lib/string.fy", lines:[80, 80], doc:"<p>Raises a new <code data-lang=\"fancy\" data-class-ref=\"StandardError\" class=\"class-ref selectable\">StandardError</code> with self as the message.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":eval_global":{file:"lib/rbx/string.fy", lines:[87, 87], doc:"<p>Same as <code data-lang=\"fancy\">String#eval</code> but evaluates <code data-lang=\"fancy\">self</code> in the global binding.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}}, doc:"<p>Strings are sequences of characters and behave as such.\nAll literal Strings within Fancy code are instances of the String\nclass.</p>\n\n<p>They also include FancyEnumerable, which means you can use all the\ncommon sequence methods on them, like +map:+, +select:+ etc.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Fancy Package RubyDependency":{ancestors:["Fancy Package RubyDependency", "Object", "Kernel"], instance_methods:{"initialize:":{file:"lib/package/dependency.fy", lines:[22, 22], doc:"<p>Forward to message initialize:version:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@gem_name"]}}, doc:"<p>Same as <code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Package\" class=\"class-ref selectable\">Package</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Package Dependency\" class=\"class-ref selectable\">Dependency</code>, just for rubygem packages.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Block":{ancestors:["Rubinius BlockEnvironment", "Object", "Kernel"], instance_methods:{"while_nil:":{file:"lib/block.fy", lines:[29, 29], doc:"<p>Executes a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> while self evals to <code data-lang=\"fancy\">nil</code> or <code data-lang=\"fancy\">false</code>.</p>\n\n<p>Example:</p>\n\n<pre><code> i = 0\n { i &gt;= 10 } while_false: {\n i println\n i = i + 1\n }\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"]}, ":receiver":{file:"lib/rbx/block.fy", lines:[38, 38], doc:"<p>Returns the receiver of the <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (value for <code data-lang=\"fancy\">self</code>)</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Receiver object of a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</div></div></div>\n\n", arg:[]}, "until_do:":{file:"lib/block.fy", lines:[59, 59], doc:"<p>Calls a given Block as long as <code data-lang=\"fancy\">self</code> yields <code data-lang=\"fancy\">nil</code> or <code data-lang=\"fancy\">false</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called while <code data-lang=\"fancy\">self</code> yields <code data-lang=\"fancy\">nil</code> or <code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:["block"]}, "while_do:":{file:"lib/block.fy", lines:[48, 48], doc:"<p>Calls <code data-lang=\"fancy\">work</code> while calling <code data-lang=\"fancy\">self</code> yields a <code data-lang=\"fancy\">true-ish</code> value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">work</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to call while <code data-lang=\"fancy\">self</code> yields <code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:["block"]}, ":to_proc":{file:"lib/rbx/block.fy", lines:[75, 75], doc:"<p>Turns a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> into a Ruby Proc object.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Ruby Proc representing <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "while_true:":{file:"lib/block.fy", lines:[48, 48], doc:"<p>Calls <code data-lang=\"fancy\">work</code> while calling <code data-lang=\"fancy\">self</code> yields a <code data-lang=\"fancy\">true-ish</code> value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">work</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to call while <code data-lang=\"fancy\">self</code> yields <code data-lang=\"fancy\">true</code>.</div></div></div>\n\n", arg:["block"]}, ":||":{file:"lib/block.fy", lines:[87, 87], doc:"<p>Short-circuiting || (boolean OR).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["other_block"]}, "until:":{file:"lib/block.fy", lines:[69, 69], doc:"<p>Calls <code data-lang=\"fancy\">self</code> while <code data-lang=\"fancy\">block</code> yields <code data-lang=\"fancy\">nil</code> or <code data-lang=\"fancy\">false</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>Condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called to determine if <code data-lang=\"fancy\">self</code> should be called.</div></div></div>\n\n", arg:["block"]}, "if:":{file:"lib/block.fy", lines:[99, 99], doc:"<p>Calls <code data-lang=\"fancy\">self</code> if <code data-lang=\"fancy\">obj</code> is true-ish.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Condition object to determine if <code data-lang=\"fancy\">self</code> should be called.</div></div></div>\n\n", arg:["obj"]}, ":&&":{file:"lib/block.fy", lines:[80, 80], doc:"<p>Short-circuiting &amp;&amp; (boolean AND).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["other_block"]}, "unless:":{file:"lib/block.fy", lines:[109, 109], doc:"<p>Opposite of Block#if:. Calls <code data-lang=\"fancy\">self</code> if <code data-lang=\"fancy\">obj</code> is false-ish.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Condition object to determine if <code data-lang=\"fancy\">self</code> should not be called.</div></div></div>\n\n", arg:["obj"]}, "while_false:":{file:"lib/block.fy", lines:[29, 29], doc:"<p>Executes a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> while self evals to <code data-lang=\"fancy\">nil</code> or <code data-lang=\"fancy\">false</code>.</p>\n\n<p>Example:</p>\n\n<pre><code> i = 0\n { i &gt;= 10 } while_false: {\n i println\n i = i + 1\n }\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"]}, ":===":{file:"lib/block.fy", lines:[121, 121], doc:"<p>Matches a <code data-lang=\"fancy\">Block</code> against another object by calling <code data-lang=\"fancy\">self</code> with <code data-lang=\"fancy\">val</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">self</code> with <code data-lang=\"fancy\">val</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">val</code> </label><div>Other object to match <code data-lang=\"fancy\">self</code> against.</div></div></div>\n\n", arg:["val"]}, "receiver:":{file:"lib/rbx/block.fy", lines:[47, 47], doc:"<p>Sets the receiver (value for <code data-lang=\"fancy\">self</code>) of a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">recv</code> </label><div>New receiver object for a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</div></div></div>\n\n", arg:["recv"]}}, doc:"<p>The Block class (also BlockEnvironment) is the class of all\nBlock-literal values.\nA Block is a piece of unevaluated code, that can be passed around as\nany other value and evaluated by calling the +call+ or +call:+ methods.</p>\n\n<p>Blocks also work properly with their enclosing environment in that\nthey preserve any local variables that get used within the Block,\neven if the context in which they got defined has been destroyed.\n=> Blocks are proper closures.</p>\n\n<p>See: http://en.wikipedia.org/wiki/Closure_(computer_science) for\nmore information.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Number":{ancestors:["Number", "Object", "Kernel"], instance_methods:{":negate":{file:"lib/number.fy", lines:[119, 119], doc:"<p>Negates a Number (-1 becomes 1 and vice versa).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Negated value of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":abs":{file:"lib/number.fy", lines:[110, 110], doc:"<p>Returns the absolute (positive) value of a Number.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Absolute (positive) value of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":even?":{file:"lib/number.fy", lines:[129, 129], doc:"<p>Indicates, if a Number is even.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">self</code> is even, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[]}, "min:":{file:"lib/number.fy", lines:[164, 164], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Minimum value of <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"]}, "upto:do:":{file:"lib/number.fy", lines:[34, 34], doc:"<p>Calls <code data-lang=\"fancy\">block</code> with each <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> between <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">num</code>.\nExpects <code data-lang=\"fancy\">num</code> to be greater or equal to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that should be called with each <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> between <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">num</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">num</code> </label><div>Maximum <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> to call <code data-lang=\"fancy\">block</code> with.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["num", "block"]}, "max:":{file:"lib/number.fy", lines:[152, 152], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Maximum value of <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"]}, "downto:":{file:"lib/number.fy", lines:[51, 51], doc:"<p>Returns an Array with Numbers starting at <code data-lang=\"fancy\">self</code> and going down to <code data-lang=\"fancy\">num</code>.\nExpects <code data-lang=\"fancy\">num</code> to be smaller or equal to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">num</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> to create an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> down to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> containing numbers from <code data-lang=\"fancy\">self</code> down to <code data-lang=\"fancy\">num</code>.</div></div></div>\n\n", arg:["num"]}, ":odd?":{file:"lib/number.fy", lines:[139, 139], doc:"<p>Indicates, if a Number is odd.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">self</code> is odd, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[]}, "upto:":{file:"lib/number.fy", lines:[16, 16], doc:"<p>Returns an Array with Numbers starting at <code data-lang=\"fancy\">self</code> and going up to <code data-lang=\"fancy\">num</code>.\nExpects <code data-lang=\"fancy\">num</code> to be greater or equal to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">num</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> to create an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> up to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> containing numbers from <code data-lang=\"fancy\">self</code> to <code data-lang=\"fancy\">num</code>.</div></div></div>\n\n", arg:["num"]}, ":squared":{file:"lib/number.fy", lines:[85, 85], doc:"<p>Returns the square of a Number.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Squared value of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":doubled":{file:"lib/number.fy", lines:[95, 95], doc:"<p>Returns the double value of a Number.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Doubled value of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "downto:do:":{file:"lib/number.fy", lines:[70, 70], doc:"<p>Calls <code data-lang=\"fancy\">block</code> with each <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> between <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">num</code>.\nExpects <code data-lang=\"fancy\">num</code> to be smaller or equal to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that should be called with each <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> between <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">num</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">num</code> </label><div>Minimum <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> to call <code data-lang=\"fancy\">block</code> with.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["num", "block"]}}, doc:"<p>Number is a mixin-class for all number values (integer &amp; floats for\nnow).</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Float":{ancestors:["Float", "Number", "Object", "Precision", "Numeric", "Comparable", "Object", "Kernel"], instance_methods:{}, doc:"<p>Standard class for floating point number values in Fancy.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "FalseClass":{ancestors:["FalseClass", "ImmediateValue", "Object", "Kernel"], instance_methods:{":not":{file:"lib/false_class.fy", lines:[62, 62], doc:"<p>Boolean negation of <code data-lang=\"fancy\">false</code> => <code data-lang=\"fancy\">true</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</div></div></div>\n\n\n<p></code></p>\n", arg:[]}, "if_true:":{file:"lib/false_class.fy", lines:[14, 14], doc:"<p>Returns <code data-lang=\"fancy\">nil</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"]}, "if_true:else:":{file:"lib/false_class.fy", lines:[19, 19], doc:"<p>Calls <code data-lang=\"fancy\">else_block</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["then_block", "else_block"]}, ":to_a":{file:"lib/false_class.fy", lines:[52, 52], doc:"<p>Returns an empty <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":to_s":{file:"lib/false_class.fy", lines:[45, 45], doc:"<p>Returns <code data-lang=\"fancy\">false</code> as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":false?":{file:"lib/false_class.fy", lines:[40, 40], doc:"<p>Returns <code data-lang=\"fancy\">true</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":inspect":{file:"lib/false_class.fy", lines:[45, 45], doc:"<p>Returns <code data-lang=\"fancy\">false</code> as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}}, doc:"<p>FalseClass. The class of the singleton <code data-lang=\"fancy\">false</code> value.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Fancy Documentation RDiscount":{ancestors:["Fancy Documentation RDiscount", "Object", "Kernel"], instance_methods:{}, doc:"<p>A documentation formatter using ruby's RDiscount markdown</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"rdiscount:":{file:"lib/documentation.fy", lines:[123, 123], doc:"<p>Format string as HTML using RDiscount ruby gem.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["doc"]}}}, "TCPServer":{ancestors:["TCPServer", "Socket ListenAndAccept", "IO Socketable", "TCPSocket", "IPSocket", "BasicSocket", "IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Enumerable", "Object", "Kernel"], instance_methods:{}, doc:"<p>TCP Server</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Object":{ancestors:["Object", "Kernel"], instance_methods:{"send_async:with_params:":{file:"lib/object.fy", lines:[525, 525], doc:"<p>Sends <code data-lang=\"fancy\">message</code> with <code data-lang=\"fancy\">params</code> to <code data-lang=\"fancy\">self</code> asynchronously and immediately returns <code data-lang=\"fancy\">nil</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">params</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of parameters as part of sending <code data-lang=\"fancy\">message</code> asynchronously to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>Message to be sent asynchronously to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</div></div></div>\n\n\n<p></code></p>\n", arg:["message", "params"]}, "if_false:else:":{file:"lib/object.fy", lines:[104, 104], doc:"<p>Calls <code data-lang=\"fancy\">else_block</code> (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">then_block</code> </label><div>Does not get called (default behaviour).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">else_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">else_block</code>.</div></div></div>\n\n", arg:["then_block", "else_block"]}, ":break":{file:"lib/object.fy", lines:[433, 433], doc:"<p>Breaks / Stops current iteration.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":to_enum":{file:"lib/object.fy", lines:[155, 155], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FancyEnumerator\" class=\"class-ref selectable\">FancyEnumerator</code> for <code data-lang=\"fancy\">self</code> using 'each: for iteration.</div></div></div>\n\n", arg:[]}, "returning:do:":{file:"lib/object.fy", lines:[348, 348], doc:"<p>Returns <code data-lang=\"fancy\">value</code> after calling <code data-lang=\"fancy\">block</code> with it.\nUseful for returning some object after using it, e.g.:</p>\n\n<pre><code> # this will return [1,2]\n returning: [] do: |arr| {\n arr &lt;&lt; 1\n arr &lt;&lt; 2\n }\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that gets called with <code data-lang=\"fancy\">value</code> before returning <code data-lang=\"fancy\">value</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value that gets returned at the end.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">value</div></div></div>\n\n\n<p></code></p>\n", arg:["value", "block"]}, ":to_a":{file:"lib/object.fy", lines:[139, 139], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "do:while:":{file:"lib/object.fy", lines:[261, 261], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">cond_block</code> </label><div>Condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> used to determine if <code data-lang=\"fancy\">body_block@</code> should be called again.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">body_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called at least once and as long as <code data-lang=\"fancy\">cond_block</code> yields a true-ish value.</div></div></div>\n\n", arg:["body_block", "cond_block"]}, "while:do:":{file:"lib/object.fy", lines:[243, 243], doc:"<p>Same as:\ncond_block while_do: body_block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond_block", "body_block"]}, "next:":{file:"lib/object.fy", lines:[425, 425], doc:"<p>Returns <code data-lang=\"fancy\">value</code> for current iteration and skip to the next one.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value for next iteration.</div></div></div>\n\n", arg:["value"]}, ":?":{file:"lib/object.fy", lines:[391, 391], doc:"<p>Calls #value on <code data-lang=\"fancy\">future</code>. Shortcut method.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">future</code> </label><div>Future object to get the value from.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Result of calling #value on <code data-lang=\"fancy\">future</code>.</div></div></div>\n\n", arg:["future"]}, ":&&":{file:"lib/object.fy", lines:[183, 183], doc:"<p>Boolean conjunction.\nIf <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> are both true-ish (non-nil, non-false), returns <code data-lang=\"fancy\">other</code>.\nIf <code data-lang=\"fancy\">other</code> is a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>, calls it and returns its return value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Object or <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (for short-circuit evaluation) to compare <code data-lang=\"fancy\">self</code> to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">other</code> if both <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> are true-ish, <code data-lang=\"fancy\">self</code> otherwise.</div></div></div>\n\n", arg:["other"]}, "get_slots:":{file:"lib/object.fy", lines:[553, 553], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slots</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of slot names to retrieve from <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of slot values of slot names passed in via <code data-lang=\"fancy\">slots</code>.</div></div></div>\n\n", arg:["slots"]}, ":actor":{file:"lib/object.fy", lines:[501, 501], doc:"<p>Returns the Object's actor.\nIf none exists at this moment, a new one will be created\nand starts running in the background.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "loop:":{file:"lib/object.fy", lines:[26, 26], doc:"<p>Infinitely calls the block (loops).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called endlessly (loop).</div></div></div>\n\n", arg:["block"]}, ":dclone":{file:"lib/rbx/object.fy", lines:[19, 19], doc:"<p>Returns a deep clone of self using Ruby's Marshal class.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "if_true:":{file:"lib/object.fy", lines:[70, 70], doc:"<p>Calls the <code data-lang=\"fancy\">block</code> (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, "if_true:else:":{file:"lib/object.fy", lines:[83, 83], doc:"<p>Calls the <code data-lang=\"fancy\">then_block</code> (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">then_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">else_block</code> </label><div>Does not get called (default behaviour).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">then_block</code> with <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["then_block", "else_block"]}, "do:":{file:"lib/object.fy", lines:[589, 589], doc:"<p>Helper method that calls <code data-lang=\"fancy\">block</code> with <code data-lang=\"fancy\">self</code> as the receiver.\nThis allows message cascading like code, e.g.:</p>\n\n<pre><code> some_complex_object do: {\n method_1: arg1\n method_2: arg2\n method_3: arg3\n }\n\n # this is the same as:\n some_complex_object method_1: arg1\n some_complex_object method_2: arg2\n some_complex_object method_3: arg3\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called in the context of <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, "send_async:":{file:"lib/object.fy", lines:[516, 516], doc:"<p>Forward to message send_async:with_params:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["message"]}, "receive_message:with_params:":{file:"lib/rbx/object.fy", lines:[112, 112], doc:"<p>Dynamically sends a given message with parameters to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">params</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of parameters used with <code data-lang=\"fancy\">message</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>Name of message to be sent to <code data-lang=\"fancy\">self</code> dynamically.</div></div></div>\n\n", arg:["message", "params"]}, ":next":{file:"lib/object.fy", lines:[415, 415], doc:"<p>Skip to the next iteration.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":nil?":{file:"lib/object.fy", lines:[115, 115], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:[]}, "receive_message:":{file:"lib/rbx/object.fy", lines:[101, 101], doc:"<p>Dynamically sends a given message (without parameters) to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>Name of message to be sent to <code data-lang=\"fancy\">self</code> dynamically.</div></div></div>\n\n", arg:["message"]}, ":yield":{file:"lib/object.fy", lines:[399, 399], doc:"<p>Same as Fiber##yield.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "set_slot:value:":{file:"lib/rbx/object.fy", lines:[39, 39], doc:"<p>Sets an object's slot with a given value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to be set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">val</code> </label><div>Value for slot to be set.</div></div></div>\n\n", arg:["slotname", "val"]}, "sleep:":{file:"lib/object.fy", lines:[610, 610], doc:"<p>Sets the current Thread (in which self is running) for a given amount to sleep.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">seconds</code> </label><div>Amount of seconds to sleep.</div></div></div>\n\n", arg:["seconds"]}, ":true?":{file:"lib/object.fy", lines:[131, 131], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:[]}, ":!=":{file:"lib/object.fy", lines:[59, 59], doc:"<p>Indicates, if two objects are not equal.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other object to compare against.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">self</code> is not equal to <code data-lang=\"fancy\">other</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["other"]}, "require:":{file:"lib/rbx/object.fy", lines:[14, 14], doc:"<p>Loads and evaluates a given Fancy source file by trying to find the specified\nRelative paths are allowed (and by default expected).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">file_path</code> </label><div>in Fancy's loadpath (see <code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy CodeLoader\" class=\"class-ref selectable\">CodeLoader</code>).</div></div></div>\n\n", arg:["file_path"]}, "responds_to?:":{file:"lib/rbx/object.fy", lines:[132, 132], doc:"<p>Indicates if an object responds to a given message.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>The message to check for (preferably a Symbol).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">self</code> responds to <code data-lang=\"fancy\">message</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["message"]}, "yield:":{file:"lib/object.fy", lines:[407, 407], doc:"<p>Same as Fiber##yield:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["values"]}, ":to_s":{file:"lib/rbx/object.fy", lines:[28, 28], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> represenation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "define_singleton_method:with:":{file:"lib/rbx/object.fy", lines:[60, 60], doc:"<p>Dynamically defines a method on <code data-lang=\"fancy\">self's</code> metaclass (a singleton method) using a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be used as the method's body.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the method to be defined on <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["name", "block"]}, ":print":{file:"lib/object.fy", lines:[48, 48], doc:"<p>Same as:\nConsole print: self</p>\n\n<p>Prints <code data-lang=\"fancy\">self</code> on STDOUT.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "if:then:":{file:"lib/object.fy", lines:[225, 225], doc:"<p>Same as:\ncond if_true: block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond", "block"]}, "until:do:":{file:"lib/object.fy", lines:[252, 252], doc:"<p>Same as:\ncond_block until_do: body_block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond_block", "body_block"]}, "documentation:":{file:"lib/object.fy", lines:[319, 319], doc:"<p>Sets the documentation string for an Object.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">docstring</code> </label><div>New docstring for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["docstring"]}, "is_a?:":{file:"lib/rbx/object.fy", lines:[82, 82], doc:"<p>Indicates, if an object is an instance of a given Class.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">class</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> to check for if <code data-lang=\"fancy\">self</code> is an instance of.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if <code data-lang=\"fancy\">self</code> is an instance of <code data-lang=\"fancy\">class</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["class"]}, ":die!":{file:"lib/object.fy", lines:[491, 491], doc:"<p>Tells an object to let its actor to die (quit running).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "do:until:":{file:"lib/object.fy", lines:[271, 271], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">cond_block</code> </label><div>Condition <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> used to determine if <code data-lang=\"fancy\">body_block@</code> should be called again.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">body_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called at least once and as long as <code data-lang=\"fancy\">cond_block</code> yields a false-ish value.</div></div></div>\n\n", arg:["body_block", "cond_block"]}, ":<=>":{file:"lib/object.fy", lines:[564, 564], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other object to compare against.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>-1 if <code data-lang=\"fancy\">self</code> is smaller, 0 if <code data-lang=\"fancy\">self</code> is equal or 1 if <code data-lang=\"fancy\">self</code> is greater or equal compared to <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"]}, "xor:":{file:"lib/object.fy", lines:[214, 214], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> to compare <code data-lang=\"fancy\">self</code> against.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if only one of <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> is true, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["other"]}, "if:then:else:":{file:"lib/object.fy", lines:[234, 234], doc:"<p>Same as:\ncond if_true: then_block else: else_block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond", "then_block", "else_block"]}, "if_nil:else:":{file:"lib/object.fy", lines:[104, 104], doc:"<p>Calls <code data-lang=\"fancy\">else_block</code> (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">then_block</code> </label><div>Does not get called (default behaviour).</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">else_block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of calling <code data-lang=\"fancy\">else_block</code>.</div></div></div>\n\n", arg:["then_block", "else_block"]}, ":if_responds?":{file:"lib/object.fy", lines:[365, 365], doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"RespondsToProxy\" class=\"class-ref selectable\">RespondsToProxy</code> for <code data-lang=\"fancy\">self</code> that forwards any messages\nonly if <code data-lang=\"fancy\">self</code> responds to them.</p>\n\n<p>Example:</p>\n\n<pre><code> # only send 'some_message: if object responds to it:\n object if_responds? some_message: some_parameter\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>RespondsToProxy for <code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:[]}, "unless:do:":{file:"lib/object.fy", lines:[281, 281], doc:"<p>Same as:\ncond if_true: { nil } else: block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond", "block"]}, "let:be:":{file:"lib/object.fy", lines:[613, 613], doc:"<p>Forward to message let:be:in:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["var_name", "value"]}, ":documentation":{file:"lib/object.fy", lines:[309, 309], doc:"<p>Returns the <code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Documentation\" class=\"class-ref selectable\">Documentation</code> object for an Object.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Documentation\" class=\"class-ref selectable\">Documentation</code> object for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "kind_of?:":{file:"lib/rbx/object.fy", lines:[91, 91], doc:"<p>Same as Object#is_a?:\nIndicates, if an object is an instance of a given Class.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["class"]}, "send_future:":{file:"lib/object.fy", lines:[504, 504], doc:"<p>Forward to message send_future:with_params:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["message"]}, ":println":{file:"lib/object.fy", lines:[37, 37], doc:"<p>Same as:\nConsole println: self</p>\n\n<p>Prints <code data-lang=\"fancy\">self</code> on <code data-lang=\"fancy\">STDOUT</code>, followed by a newline.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "if_nil:":{file:"lib/object.fy", lines:[92, 92], doc:"<p>Does nothing (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</div></div></div>\n\n\n<p></code></p>\n", arg:["block"]}, "let:be:in:":{file:"lib/object.fy", lines:[630, 630], doc:"<p>Dynamically rebinds <code data-lang=\"fancy\">var_name</code> as dynamic variable with <code data-lang=\"fancy\">value</code> as the value within <code data-lang=\"fancy\">block</code>.</p>\n\n<p>Example:</p>\n\n<pre><code> File open: \"/tmp/output.txt\" modes: ['write] with: |f| {\n let: '*stdout* be: f in: {\n \"hello, world!\" println # writes it to file not STDOUT\n }\n }\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> in which <code data-lang=\"fancy\">var_name</code> will be dynamically bound to <code data-lang=\"fancy\">value</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">var_name</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Symbol\" class=\"class-ref selectable\">Symbol</code> that represents the name of the dynamic variable to be set.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value for the variable.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Returns <code data-lang=\"fancy\">value</div></div></div>\n\n\n<p></code></p>\n", arg:["var_name", "value", "block"]}, "undefine_singleton_method:":{file:"lib/rbx/object.fy", lines:[70, 70], doc:"<p>Undefines a singleton method of <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the method to be undefined no <code data-lang=\"fancy\">self's</code> metaclass.</div></div></div>\n\n", arg:["name"]}, ":identity":{file:"lib/object.fy", lines:[329, 329], doc:"<p>The identity method simply returns self.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "to_enum:":{file:"lib/object.fy", lines:[164, 164], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FancyEnumerator\" class=\"class-ref selectable\">FancyEnumerator</code> for <code data-lang=\"fancy\">self</code> using <code data-lang=\"fancy\">iterator</code> for iteration.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">iterator</code> </label><div>Message to use for iteration on <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["iterator"]}, "break:":{file:"lib/object.fy", lines:[443, 443], doc:"<p>Returns <code data-lang=\"fancy\">value</code> from iteratioen.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value to return from iteration.</div></div></div>\n\n", arg:["value"]}, "backtick:":{file:"lib/object.fy", lines:[380, 380], doc:"<p>This is the default implementation for backtick: which gets called when using the backtick syntax.\nFor example:\n<code>cat README</code>\nGets translated to the following message send:\nself backtick: \"cat README\"\nWhich allows for custom implementations of the backtick: method, if needed.\nThis default implementation works the same way as in Ruby, Perl or Bash.\nIt returns the output of running the given string on the command line as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["str"]}, "unless:do:else:":{file:"lib/object.fy", lines:[290, 290], doc:"<p>Same as:\ncond if_true: else_block else: block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond", "block", "else_block"]}, "extend:":{file:"lib/rbx/object.fy", lines:[141, 141], doc:"<p>Extends <code data-lang=\"fancy\">self</code> with the methods in <code data-lang=\"fancy\">class</code> (by including its methods in <code data-lang=\"fancy\">self's</code> metaclass).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">class</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> to extend <code data-lang=\"fancy\">self</code> with.</div></div></div>\n\n", arg:["class"]}, "send_future:with_params:":{file:"lib/object.fy", lines:[513, 513], doc:"<p>Creates a <code data-lang=\"fancy\" data-class-ref=\"FutureSend\" class=\"class-ref selectable\">FutureSend</code> object (a Future / Promise) that will hold the value of sending <code data-lang=\"fancy\">message</code> to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">params</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of parameters of the <code data-lang=\"fancy\" data-class-ref=\"FutureSend\" class=\"class-ref selectable\">FutureSend</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>Message to be sent as a <code data-lang=\"fancy\" data-class-ref=\"FutureSend\" class=\"class-ref selectable\">FutureSend</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"FutureSend\" class=\"class-ref selectable\">FutureSend</code> object that will hold the return value of <code data-lang=\"fancy\">message</code> with <code data-lang=\"fancy\">params</code> on <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["message", "params"]}, ":false?":{file:"lib/object.fy", lines:[123, 123], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:[]}, ":||":{file:"lib/object.fy", lines:[201, 201], doc:"<p>Boolean disjunction.\nIf <code data-lang=\"fancy\">self</code> is true-ish (non-nil, non-false) returns <code data-lang=\"fancy\">self</code>.\nOtherwise returns <code data-lang=\"fancy\">other</code> (if <code data-lang=\"fancy\">other</code> is a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>, calls it first and returns its return value)</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Object or <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (for short-circuit evaluation) to compare <code data-lang=\"fancy\">self</code> to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code> if <code data-lang=\"fancy\">self</code> is true-ish, <code data-lang=\"fancy\">other</code> otherwise.</div></div></div>\n\n", arg:["other"]}, "synchronized:":{file:"lib/object.fy", lines:[537, 537], doc:"<p>Runs a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> in a synchronized fashion if called by multiple Threads.\nUses a <code data-lang=\"fancy\" data-class-ref=\"Mutex\" class=\"class-ref selectable\">Mutex</code> in the background for synchronization (created on demand for each <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code>).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be run only by one Thread at a time.</div></div></div>\n\n", arg:["block"]}, "if_false:":{file:"lib/object.fy", lines:[92, 92], doc:"<p>Does nothing (default behaviour).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">nil</div></div></div>\n\n\n<p></code></p>\n", arg:["block"]}, ":to_i":{file:"lib/object.fy", lines:[147, 147], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "and:":{file:"lib/object.fy", lines:[183, 183], doc:"<p>Boolean conjunction.\nIf <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> are both true-ish (non-nil, non-false), returns <code data-lang=\"fancy\">other</code>.\nIf <code data-lang=\"fancy\">other</code> is a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>, calls it and returns its return value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Object or <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (for short-circuit evaluation) to compare <code data-lang=\"fancy\">self</code> to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">other</code> if both <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> are true-ish, <code data-lang=\"fancy\">self</code> otherwise.</div></div></div>\n\n", arg:["other"]}, ":++":{file:"lib/object.fy", lines:[16, 16], doc:"<p>Returns the <code data-lang=\"fancy\">String</code> concatenation of <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code>.\nCalls to_s on <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code> and concatenates the results to a new <code data-lang=\"fancy\">String</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Other object to concatenate its <code data-lang=\"fancy\">String</code> value with.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">String</code> concatenation of <code data-lang=\"fancy\">String</code> values of <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">other</code>.</div></div></div>\n\n", arg:["other"]}, "or:":{file:"lib/object.fy", lines:[201, 201], doc:"<p>Boolean disjunction.\nIf <code data-lang=\"fancy\">self</code> is true-ish (non-nil, non-false) returns <code data-lang=\"fancy\">self</code>.\nOtherwise returns <code data-lang=\"fancy\">other</code> (if <code data-lang=\"fancy\">other</code> is a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>, calls it first and returns its return value)</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">other</code> </label><div>Object or <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> (for short-circuit evaluation) to compare <code data-lang=\"fancy\">self</code> to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code> if <code data-lang=\"fancy\">self</code> is true-ish, <code data-lang=\"fancy\">other</code> otherwise.</div></div></div>\n\n", arg:["other"]}, "get_slot:":{file:"lib/rbx/object.fy", lines:[50, 50], doc:"<p>Returns the value of a slot of <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to get the value of.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value of slot with name <code data-lang=\"fancy\">slotname</code>.</div></div></div>\n\n", arg:["slotname"]}, "method:":{file:"lib/object.fy", lines:[300, 300], doc:"<p>Returns the method with a given name for self, if defined.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> with <code data-lang=\"fancy\">method_name</code> defined for <code data-lang=\"fancy\">self</code>, or <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["method_name"]}, ":slots":{file:"lib/object.fy", lines:[598, 598], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Set\" class=\"class-ref selectable\">Set</code> of slot names that <code data-lang=\"fancy\">self</code> has.</div></div></div>\n\n", arg:[]}}, doc:"<p>Root class of Fancy's class hierarchy.\nAll classes inherit from Object.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Fancy FDoc":{ancestors:["Fancy FDoc", "Object", "Kernel"], instance_methods:{}, doc:"<p>FDoc is a tool to generate API documentation from Fancy source.</p>\n\n<p>Works as follows:</p>\n\n<ol>\n<li>We setup a handler to be invoked every time an object is set documentation\nSee fdoc_hook.fy, its loaded even before all of lib/rbx/*.fy so we can\nAlso have documentation for all fancy rubinius.</li>\n<li>We load boot.fy, so we get documentation for all fancy's lib.</li>\n<li>We run FDoc main\nwhich can possibly load any file/directory you specify and optionally\nrun specs, effectively associating them with documented objects.</li>\n<li>Generate output file.\nCurrently the plan is to output a json formatted object.\nTo be loaded by an html file and use jquery to build a GUI from it.</li>\n</ol>\n\n\n<div class=\"doctags\"></div>\n\n", methods:{":main":{file:"lib/fdoc.fy", lines:[32, 32], doc:"<p>FDoc will load all .fy files you give to it, and optionally run\nany specified FancySpec, and later produce documentation output.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}}}, "System":{ancestors:["System", "Object", "Kernel"], instance_methods:{}, doc:"<p>System class. Holds system-wide relevant methods.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"pipe:do:":{file:"lib/rbx/system.fy", lines:[65, 65], doc:"<p>Runs the given string as a popen3() call, passing in a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.\nThe <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> is expected to take 3 arguments for <code data-lang=\"fancy\">STDIN</code>, <code data-lang=\"fancy\">STDOUT</code> and <code data-lang=\"fancy\">STDERR</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with <code data-lang=\"fancy\">STDIN</code>, <code data-lang=\"fancy\">STDOUT</code> and <code data-lang=\"fancy\">STDERR</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">command_str</code> </label><div>String to run as a command via popen3()</div></div></div>\n\n", arg:["command_str", "block"]}, "pipe:":{file:"lib/rbx/system.fy", lines:[52, 52], doc:"<p>Runs the given string as a popen3() call and returns a IO handle\nthat can be read from</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"IO\" class=\"class-ref selectable\">IO</code> object representing the command's <code data-lang=\"fancy\">STDOUT</code> IO stream.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">command_str</code> </label><div>String to run as a command via popen3()</div></div></div>\n\n", arg:["command_str"]}, "do:":{file:"lib/rbx/system.fy", lines:[31, 31], doc:"<p>Runs the given string as a system() command.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["command_str"]}, "piperead:":{file:"lib/rbx/system.fy", lines:[40, 40], doc:"<p>Runs the given string as a popen() call and returns the output\nof the call as a string.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["command_str"]}, "exit:":{file:"lib/rbx/system.fy", lines:[23, 23], doc:"<p>Exit the running Fancy process with a given exit code.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">exitcode</code> </label><div>Exit code (Fixnum) to be returned to the parent process.</div></div></div>\n\n", arg:["exitcode"]}, ":exit":{file:"lib/rbx/system.fy", lines:[13, 13], doc:"<p>Exit the running Fancy process.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}}}, "Fiber":{ancestors:["Rubinius Fiber", "Object", "Kernel"], instance_methods:{"resume:":{file:"lib/rbx/fiber.fy", lines:[39, 39], doc:"<p>Resumes <code data-lang=\"fancy\">self</code> (if paused) or raises an exception, if <code data-lang=\"fancy\" data-class-ref=\"Fiber\" class=\"class-ref selectable\">Fiber</code> is dead.\nPasses along <code data-lang=\"fancy\">vals</code> as the return value of the last call to <code data-lang=\"fancy\">yield</code> in <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">vals</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of values to pass along to <code data-lang=\"fancy\">self</code> for resuming.</div></div></div>\n\n", arg:["vals"]}}, doc:"<p>Fiber class. Fibers are cooperatively scheduled coroutines supported\nby the Rubinius VM.\nControl flow between multiple Fibers is always explicitly handled.\nThere is no preemptive scheduler.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"new:":{file:"lib/rbx/fiber.fy", lines:[18, 18], doc:"<p>Creates a new Fiber running <code data-lang=\"fancy\">block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be run in a new Fiber.</div></div></div>\n\n", arg:["block"]}, "yield:":{file:"lib/rbx/fiber.fy", lines:[28, 28], doc:"<p>Returns execution control to the parent <code data-lang=\"fancy\" data-class-ref=\"Fiber\" class=\"class-ref selectable\">Fiber</code> and passes along <code data-lang=\"fancy\">vals</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">vals</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of values to pass along to parent <code data-lang=\"fancy\" data-class-ref=\"Fiber\" class=\"class-ref selectable\">Fiber</code>.</div></div></div>\n\n", arg:["vals"]}}}, "Integer":{ancestors:["Integer", "Precision", "Numeric", "Comparable", "Object", "Kernel"], instance_methods:{"times:offset:":{file:"lib/integer.fy", lines:[18, 18], doc:"<p>Similar to #times: but starts at a given offset.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each number between <code data-lang=\"fancy\">offset</code> and <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">offset</code> </label><div>Offset to be used as starting point of iteration.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block", "offset"]}, "times:":{file:"lib/rbx/integer.fy", lines:[19, 19], doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each number between 0 and <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each number between 0 and <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"]}}, doc:"<p>Base class for integer values in Fancy.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Time":{ancestors:["Time", "Comparable", "Object", "Kernel"], instance_methods:{}, doc:"<p>Time class. Used for even more timely stuff.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "UnboundMethod":{ancestors:["UnboundMethod", "MethodMixin", "Object", "Object", "Kernel"], instance_methods:{}, doc:"<p>An instance UnboundMethod represents a Method object not bound to a specific <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> or <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Fancy FDoc Formatter":{ancestors:["Fancy FDoc Formatter", "Object", "Kernel"], instance_methods:{}, doc:"<p>A documentation formater intended to be used by <code data-lang=\"fancy\" data-class-ref=\"FDoc\" class=\"class-ref selectable\">FDoc</code>.</p>\n\n<p>This formatter makes some transformations on a docstring\nand then converts it to html using markdown.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"create_class_references:":{file:"lib/fdoc.fy", lines:[256, 256], doc:"<p>Creates class references for Fancy class names.</p>\n\n<p>A docstring may contain class names sorounded by @\nwithout space between the @.</p>\n\n<p>Nested classes can be indicated by using :: like</p>\n\n<p> Foo::Bar</p>\n\n<p>This will create references for both, <code data-lang=\"fancy\">Foo</code> and <code data-lang=\"fancy\">Bar</code></p>\n\n<p>Instance methods should be written:</p>\n\n<p> Foo::Bar#baz</p>\n\n<p>Class methods should be written:</p>\n\n<p> Foo::Bar.baz</p>\n\n<p>Some examples:</p>\n\n<p>A simple class reference:</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code></p>\n\n<p>Nested class reference:</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy FDoc\" class=\"class-ref selectable\">FDoc</code></p>\n\n<p>A fancy method without arguments:</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy FDoc\" class=\"class-ref selectable\">FDoc</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy FDoc JSON\" class=\"class-ref selectable\">JSON</code> <code data-lang=\"fancy\" data-singleton-method-ref=\":generate_map\" data-owner-class=\"Fancy FDoc JSON\" class=\"singleton-method-ref selectable\">generate_map</code></p>\n\n<p>A ruby method reference (will link to ruby docs if available)</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> <code data-lang=\"fancy\" data-ruby-singleton-method-ref=\"split\" data-owner-class=\"String\" class=\"ruby-singleton-method-ref selectable\">split</code></p>\n\n<p>A fancy method with many arguments:</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Package\" class=\"class-ref selectable\">Package</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Package Installer\" class=\"class-ref selectable\">Installer</code> <code data-lang=\"fancy\" data-singleton-method-ref=\"initialize:version:install_path:\" data-owner-class=\"Fancy Package Installer\" class=\"singleton-method-ref selectable\">initialize:version:install_path:</code></p>\n\n<p>A singleton method:</p>\n\n<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy FDoc\" class=\"class-ref selectable\">FDoc</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy FDoc Formatter\" class=\"class-ref selectable\">Formatter</code> <code data-lang=\"fancy\" data-singleton-method-ref=\"format:\" data-owner-class=\"Fancy FDoc Formatter\" class=\"singleton-method-ref selectable\">format:</code></p>\n\n<div class=\"doctags\"></div>\n\n", arg:["str"]}}}, "StandardError":{ancestors:["StandardError", "Exception", "Object", "Kernel"], instance_methods:{"initialize:":{file:"lib/rbx/exception.fy", lines:[26, 26], doc:"<p>Creates a new Exception with a given message.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">msg</code> </label><div>Message (<code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>) for the Exception.</div></div></div>\n\n", arg:["msg"]}, ":initialize":{file:"lib/rbx/exception.fy", lines:[16, 16], doc:"<p>Creates a new Exception with an empty message.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":raise!":{file:"lib/rbx/exception.fy", lines:[35, 35], doc:"<p>Raises (throws) an Exception to be caught somewhere up the\ncallstack.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}}, doc:"<p>StandardError. Base class of most Exception classes.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Fancy Package Installer":{ancestors:["Fancy Package Installer", "Object", "Kernel"], instance_methods:{"download_url:":{file:"lib/package/installer.fy", lines:[110, 110], doc:"<p>Returns the download url for a given version of the package\nto be installed.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["version"]}, "initialize:":{file:"lib/package/installer.fy", lines:[44, 44], doc:"<p>Forward to message initialize:version:install_path:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@package_name"]}, "rename_dir:":{file:"lib/package/installer.fy", lines:[158, 158], doc:"<p>Renames a given directory to a common way within the install path.\n=> It will rename the given dirname to $user/$repo-$version.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["dirname"]}, ":latest_tag":{file:"lib/package/installer.fy", lines:[82, 82], doc:"<p>Returns the latest tag (sorted alphabetically).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":run":{file:"lib/package/installer.fy", lines:[52, 52], doc:"<p>Runs the installer &amp; installs the package into\n<code data-lang=\"fancy\">$FANCY_PACKAGE_DIR</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "initialize:version:":{file:"lib/package/installer.fy", lines:[44, 44], doc:"<p>Forward to message initialize:version:install_path:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@package_name", "@version"]}, ":load_fancypack":{file:"lib/package/installer.fy", lines:[167, 167], doc:"<p>Loads the @.fancypack file within the downloaded package directory.\nIf no @.fancypack file is found, raise an error.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":tags":{file:"lib/package/installer.fy", lines:[91, 91], doc:"<p>Returns a list of tags the repository has on Github.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "initialize:version:install_path:":{file:"lib/package/installer.fy", lines:[44, 44], doc:"<p>Creates a new <code data-lang=\"fancy\">Package</code> Installer@ for a given package name, an\noptional version (default is 'latest') and an optional\ninstallation path (default is the standard installation path for\nFancy packages).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@package_name", "@version", "@install_path"]}, "has_version?:":{file:"lib/package/installer.fy", lines:[98, 98], doc:"<p>Indicates, if a given version is available on Github.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["version"]}, "download_tgz:":{file:"lib/package/installer.fy", lines:[135, 135], doc:"<p>Downloads the .tar.gz file from Github with the given version\n(tag or branch name) and saves it to the specified <code data-lang=\"fancy\">install_path</code>.</p>\n\n<p>The Default install_path is ~/.fancy/packages/.\nIf an environment variable <code data-lang=\"fancy\">FANCY_PACKAGE_DIR</code> is defined, it\nwill get used.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["version"]}}, doc:"<p><code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Package\" class=\"class-ref selectable\">Package</code> installer.</p>\n\n<p>Downloads packages from Github (usually the latest tagged version,\nif no version is specified, or the latest HEAD revision in the\nmaster branch) and install it to the <code data-lang=\"fancy\">FANCY_PACKAGE_DIR</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Hash":{ancestors:["Hash", "FancyEnumerable", "Object", "Enumerable", "Object", "Kernel"], instance_methods:{"each_value:":{file:"lib/hash.fy", lines:[59, 59], doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each value in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"]}, "delete:":{file:"lib/rbx/hash.fy", lines:[34, 34], doc:"<p>Deletes a key-value pair from <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">key</code> </label><div>Key of key-value pair to be deleted in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["key"]}, "each_key:":{file:"lib/hash.fy", lines:[47, 47], doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each key.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each key in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"]}, "each:":{file:"lib/hash.fy", lines:[36, 36], doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each key and value.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each key and value in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</div></div></div>\n\n\n<p></code></p>\n", arg:["block"]}, "includes?:":{file:"lib/rbx/hash.fy", lines:[53, 53], doc:"<p>Indicates if a given key is in <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">key</code> </label><div>Key to search for.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if Hash includes <code data-lang=\"fancy\">key</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["key"]}, "values_at:":{file:"lib/hash.fy", lines:[105, 105], doc:"<p>Example:</p>\n\n<pre><code> &lt;['foo =&gt; 1, 'bar =&gt; 2, 'baz =&gt; 42]&gt; values_at: ('foo, 'baz) # =&gt; [1, 42]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">keys</code> </label><div>Collection of keys to get the values for.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all values for the given keys.</div></div></div>\n\n", arg:["keys"]}, ":to_a":{file:"lib/hash.fy", lines:[71, 71], doc:"<p>Returns an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of the key-value pairs in a <code data-lang=\"fancy\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all key-value pairs in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":to_s":{file:"lib/hash.fy", lines:[80, 80], doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of a <code data-lang=\"fancy\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> representation of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":[]":{file:"lib/hash.fy", lines:[18, 18], doc:"<p>Returns the value for a given key.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">key</code> </label><div>Key for value to get.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value for given <code data-lang=\"fancy\">key</code> or <code data-lang=\"fancy\">nil</code>, if <code data-lang=\"fancy\">key</code> not set.</div></div></div>\n\n", arg:["key"]}}, doc:"<p>Class for Hashes (HashMaps / Dictionaries).\nMaps a key to a value.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "IO":{ancestors:["IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Enumerable", "Object", "Kernel"], instance_methods:{}, doc:"<p>Base class for IO related classes (like <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code>, <code data-lang=\"fancy\" data-class-ref=\"Socket\" class=\"class-ref selectable\">Socket</code>, <code data-lang=\"fancy\" data-class-ref=\"Console\" class=\"class-ref selectable\">Console</code> etc.).</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Fancy Package Dependency":{ancestors:["Fancy Package Dependency", "Object", "Kernel"], instance_methods:{"initialize:":{file:"lib/package/dependency.fy", lines:[11, 11], doc:"<p>Forward to message initialize:version:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@name"]}}, doc:"<p>Package Dependency.\nRepresents a Dependency to another Package with a given version.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Symbol":{ancestors:["Symbol", "ImmediateValue", "Object", "Kernel"], instance_methods:{":call":{file:"lib/symbol.fy", lines:[37, 37], doc:"<p>Sends <code data-lang=\"fancy\">self</code> as message to the sender in its context.\nExample:\n'foo call\n # => same as\n self foo</p>\n\n<p> if: x then: 'foo else: 'bar\n # same as:\n if: x then: { self foo } else: { self bar }</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "call:":{file:"lib/symbol.fy", lines:[22, 22], doc:"<p>This allows Symbols to be used like Blocks\n(e.g. in all methods of Enumerable).\nExample:\n[1, 2, 3] map: 'squared # => [1, 4, 9]</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["arg"]}, ":defined?":{file:"lib/rbx/symbol.fy", lines:[20, 20], doc:"<p>Indicates if a Symbol is defined as a constant in the senders scope.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">self</code> is defined as a constant in senders scope, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:[]}}, doc:"<p>Symbols are unique identifiers and only created once.</p>\n\n<p>If there are several occurrances of the same Symbol literal within\nFancy code, they all refer to the same Symbol object.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Fancy StopIteration":{ancestors:["Fancy StopIteration", "StandardError", "Exception", "Object", "Kernel"], instance_methods:{":result":{file:"lib/iteration.fy", lines:[82, 82], doc:"<p>Returns the return value of the iterator.</p>\n\n<p>o = Object new\ndef o each: block {\n block call: [1]\n block call: [2]\n block call: [3]\n 100\n}</p>\n\n<p>e = o to_enum\ne next p #=> 1\ne next p #=> 2\ne next p #=> 3\ntry {\n e next\n} catch Fancy StopIteration => ex {\n ex result p #=> 100\n}</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}}, doc:"<p>Raised to stop the iteration, in particular by Enumerator#next.\nIt is rescued by Block#loop.</p>\n\n<p>Example:</p>\n\n<pre><code> {\n 'Hello println\n Fancy StopIteration new raise!\n 'World println\n } loop\n 'Done! println\n</code></pre>\n\n<p>Produces:</p>\n\n<pre><code> Hello\n Done!\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Fancy NextIteration":{ancestors:["Fancy NextIteration", "StandardError", "Exception", "Object", "Kernel"], instance_methods:{}, doc:"<p>Raised to continue with next iteration (and stopping the current one).\nIt is rescued by Block#loop.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "MethodMixin":{ancestors:["MethodMixin", "Object", "Kernel"], instance_methods:{":private?":{file:"lib/rbx/method.fy", lines:[48, 48], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if the <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> is private in its defined context.</div></div></div>\n\n", arg:[]}, "documentation:":{file:"lib/rbx/method.fy", lines:[19, 19], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">docstring</code> </label><div>New docstring for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["docstring"]}, ":public?":{file:"lib/rbx/method.fy", lines:[34, 34], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if the <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> is public in its defined context.</div></div></div>\n\n", arg:[]}, ":documentation":{file:"lib/rbx/method.fy", lines:[11, 11], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Docstring for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, ":tests":{file:"lib/rbx/method.fy", lines:[57, 57], doc:"<p>Returns an Array of all the FancySpec SpecTests defined for a\nMethod.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":visibility":{file:"lib/rbx/method.fy", lines:[26, 26], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The visibility (<code data-lang=\"fancy\">'private</code>, <code data-lang=\"fancy\">'protected</code>, <code data-lang=\"fancy\">'public</code>) of a <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> in its defined context, if any.</div></div></div>\n\n", arg:[]}, ":protected?":{file:"lib/rbx/method.fy", lines:[41, 41], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if the <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> is protected in its defined context.</div></div></div>\n\n", arg:[]}}, doc:"<p>Mixin class with common methods included by <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> and <code data-lang=\"fancy\" data-class-ref=\"UnboundMethod\" class=\"class-ref selectable\">UnboundMethod</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Stack":{ancestors:["Stack", "Object", "Kernel"], instance_methods:{"initialize:":{file:"lib/stack.fy", lines:[21, 21], doc:"<p>Initializes a new Stack with a given size.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">size</code> </label><div>Initial size of the new Stack.</div></div></div>\n\n", arg:["size"]}, ":initialize":{file:"lib/stack.fy", lines:[11, 11], doc:"<p>Initializes a new Stack.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, ":size":{file:"lib/stack.fy", lines:[59, 59], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Size of the Stack.</div></div></div>\n\n", arg:[]}, ":top":{file:"lib/stack.fy", lines:[51, 51], doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The top-of-stack element.</div></div></div>\n\n", arg:[]}, "each:":{file:"lib/stack.fy", lines:[80, 80], doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each element in <code data-lang=\"fancy\">self</code>, starting with the top of stack element.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each element in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"]}, "push:":{file:"lib/stack.fy", lines:[31, 31], doc:"<p>Pushes a value onto the Stack.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be pushed onto <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["obj"]}, ":pop":{file:"lib/stack.fy", lines:[43, 43], doc:"<p>Pops the top-of-stack element from the Stack and returns it.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Top-of-stack element.</div></div></div>\n\n", arg:[]}, ":empty?":{file:"lib/stack.fy", lines:[69, 69], doc:"<p>Indicates, if the Stack is empty.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if empty, otherwise <code data-lang=\"fancy\">false</code>.</div></div></div>\n\n", arg:[]}, ":<<":{file:"lib/stack.fy", lines:[31, 31], doc:"<p>Pushes a value onto the Stack.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">obj</code> </label><div>Object to be pushed onto <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["obj"]}}, doc:"<p>A simple Stack container class.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{}}, "Class":{ancestors:["Class", "Module", "Object", "Kernel"], instance_methods:{"initialize:":{file:"lib/rbx/class.fy", lines:[55, 55], doc:"<p>Initializes a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with a superclass.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["superclass"]}, "alias_method:for:":{file:"lib/class.fy", lines:[138, 138], doc:"<p>Defines an alias method for another method.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">new_method_name</code> </label><div>New method name to be used as an alias for <code data-lang=\"fancy\">old_method_name</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">old_method_name</code> </label><div>Name of method to alias (must exist in the <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>).</div></div></div>\n\n", arg:["new_method_name", "old_method_name"]}, "write_slot:":{file:"lib/class.fy", lines:[85, 85], doc:"<p>Defines a slot writer method for a given slotname.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to define a setter method for.</div></div></div>\n\n", arg:["slotname"]}, "define_slot_reader:":{file:"lib/class.fy", lines:[25, 25], doc:"<p>Defines a slot reader method with a given name.\nE.g. for a slotname <code data-lang=\"fancy\">count</code> it will define the following method:</p>\n\n<pre><code> def count {\n get_slot: 'count\n }\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of the slot to define a getter method for.</div></div></div>\n\n", arg:["slotname"]}, "subclass:":{file:"lib/rbx/class.fy", lines:[109, 109], doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with <code data-lang=\"fancy\">self</code> as superclass and the given body.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">body_block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that gets used as the body of the <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> inherited from <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["body_block"]}, "instance_method:":{file:"lib/rbx/class.fy", lines:[131, 131], doc:"<p>Returns an instance method for a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with a given name.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the instance method to return.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>The instance <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> with the given <code data-lang=\"fancy\">name</code> or <code data-lang=\"fancy\">nil</code>.</div></div></div>\n\n", arg:["name"]}, "read_write_slots:":{file:"lib/class.fy", lines:[94, 94], doc:"<p>Defines slot reader &amp; writer methods for all given slotnames.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slots</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of slotnames to define getter & setter methods for.</div></div></div>\n\n", arg:["slots"]}, ":nested_classes":{file:"lib/rbx/class.fy", lines:[119, 119], doc:"<p>Returns all the nested classes within a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> as an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of all nested classes for <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[]}, "define_class_method:with:":{file:"lib/rbx/class.fy", lines:[89, 89], doc:"<p>Defines a class method on a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> (a singleton method) with a\ngiven name and body.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be used as the class methods body.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the class method to be defined.</div></div></div>\n\n", arg:["name", "block"]}, ":new":{file:"lib/rbx/class.fy", lines:[12, 12], doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> instance by subclassing <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> subclassed from <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code>.</div></div></div>\n\n", arg:[]}, "alias_method:for_ruby:":{file:"lib/rbx/class.fy", lines:[147, 147], doc:"<p>Creates a method alias for a Ruby method.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["new_method_name", "ruby_method_name"]}, "subclass?:":{file:"lib/class.fy", lines:[127, 127], doc:"<p>Indicates, if a Class is a subclass of another Class.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">class_obj</code> </label><div>Class object to check for, if <code data-lang=\"fancy\">self</code> is a subclass of <code data-lang=\"fancy\">class_obj</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code>, if <code data-lang=\"fancy\">self</code> is a subclass of <code data-lang=\"fancy\">class_obj</code>, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", arg:["class_obj"]}, ":initialize":{file:"lib/rbx/class.fy", lines:[48, 48], doc:"<p>Initializes a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> set as superclass (default superclass).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "private:":{file:"lib/rbx/class.fy", lines:[168, 168], doc:"<p>Sets any given method names to private on this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">method_names</code> </label><div>One or more (<code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>) method names (as a <code data-lang=\"fancy\" data-class-ref=\"Symbol\" class=\"class-ref selectable\">Symbol</code>) to be set to private in this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div></div>\n\n", arg:["method_names"]}, "protected:":{file:"lib/rbx/class.fy", lines:[180, 180], doc:"<p>Sets any given method names to protected on this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">method_names</code> </label><div>One or more (<code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>) method names (as a <code data-lang=\"fancy\" data-class-ref=\"Symbol\" class=\"class-ref selectable\">Symbol</code>) to be set to protected in this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div></div>\n\n", arg:["method_names"]}, "undefine_method:":{file:"lib/rbx/class.fy", lines:[77, 77], doc:"<p>Undefines an instance method on a Class with a given name.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the method to undefine (remove) from a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div></div>\n\n", arg:["name"]}, "undefine_class_method:":{file:"lib/rbx/class.fy", lines:[99, 99], doc:"<p>Undefines a class method on a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with a given name.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the class method to undefine (remove).</div></div></div>\n\n", arg:["name"]}, "public:":{file:"lib/rbx/class.fy", lines:[156, 156], doc:"<p>Sets any given method names to public on this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">method_names</code> </label><div>One or more (<code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>) method names (as a <code data-lang=\"fancy\" data-class-ref=\"Symbol\" class=\"class-ref selectable\">Symbol</code>) to be set to public in this <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div></div>\n\n", arg:["method_names"]}, ":forwards_unary_ruby_methods":{file:"lib/rbx/class.fy", lines:[190, 190], doc:"<p>Creates ruby_alias methods for any unary ruby methods of a class.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[]}, "write_slots:":{file:"lib/class.fy", lines:[72, 72], doc:"<p>Defines slot writer methods for all given slotnames.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slots</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of slotnames to define setter methods for.</div></div></div>\n\n", arg:["slots"]}, "read_slots:":{file:"lib/class.fy", lines:[50, 50], doc:"<p>Defines slot reader methods for all given slotnames.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slots</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of slotnames to define getter methods for.</div></div></div>\n\n", arg:["slots"]}, "read_slot:":{file:"lib/class.fy", lines:[63, 63], doc:"<p>Defines a slot reader method for a given slotname.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to define a getter method for.</div></div></div>\n\n", arg:["slotname"]}, "define_slot_writer:":{file:"lib/class.fy", lines:[41, 41], doc:"<p>Defines a slot writer method with a given name.\nE.g. for a slotname <code data-lang=\"fancy\">count</code> it will define the following method:</p>\n\n<pre><code> def count: c {\n set_slot: 'count value: c\n }\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of the slot to defnie define a setter method for.</div></div></div>\n\n", arg:["slotname"]}, "new:":{file:"lib/rbx/class.fy", lines:[26, 26], doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> instance by subclassing <code data-lang=\"fancy\">superclass</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">superclass</code> </label><div>The superclass to inherit from.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> inherited from <code data-lang=\"fancy\">superclass</code>.</div></div></div>\n\n", arg:["superclass"]}, "read_write_slot:":{file:"lib/class.fy", lines:[108, 108], doc:"<p>Defines slot reader &amp; writer methods for a given slotname.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to define getter & setter methods for.</div></div></div>\n\n", arg:["slotname"]}, "define_method:with:":{file:"lib/rbx/class.fy", lines:[67, 67], doc:"<p>Defines an instance method on a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> with a given name and\nbody.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that is used as the method's body.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">name</code> </label><div>Name of the method to be defined.</div></div></div>\n\n", arg:["name", "block"]}, "alias_method_rbx:for:":{file:"lib/rbx/class.fy", lines:[140, 140], doc:"<p>Rbx specific version of alias_method:for: due to bootstrap order\nreasons. Should not be used directly.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["new_method_name", "old_method_name"]}}, doc:"<p>This class is the class of <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> objects - e.g. <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code>, <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code>,\n<code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> etc.\nAny class in the language is an instance of this class, as in Ruby\nor Smalltalk.</p>\n\n<div class=\"doctags\"></div>\n\n", methods:{"superclass:body:":{file:"lib/rbx/class.fy", lines:[41, 41], doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> by subclassing <code data-lang=\"fancy\">superclass</code> and\nusing <code data-lang=\"fancy\">body_block</code> as its body.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">body_block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> that is used as the body of the new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">superclass</code> </label><div>The superclass to inherit from.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> inherited from <code data-lang=\"fancy\">superclass</code>.</div></div></div>\n\n", arg:["superclass", "body_block"]}}}}, methods:{"FutureSend#initialize:receiver:message:":{args:["@actor", "@receiver", "@message"], doc:"<p>Forward to message initialize:receiver:message:with_params:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#each:":{args:["block"], doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with each element in the collection this enumerator is attached to.\nUsed for iterating over the collection using this enumerator.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each element in the collection (iteration).</div></div></div>\n\n"}, "Fancy Package Specification#add_dependency:":{args:["name"], doc:"<p>Forward to message add_dependency:version:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "String#:raise!":{args:[], doc:"<p>Raises a new StdError with <code data-lang=\"fancy\">self</code> as the message.</p>\n\n<div class=\"doctags\"></div>\n\n"}, "Object#for_options:do:":{args:["op_names", "block"], doc:"<p>Runs a given block if any of the given options is in ARGV.</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#:peek":{args:[], doc:"<p>Returns the next object in the FancyEnumerator, but doesn't move the\ninternal position forward.\nWhen the position reaches the end, a Fancy StopIteration exception is\nraised.</p>\n\n<p>Example:</p>\n\n<pre><code> a = [1,2,3]\n e = a to_enum\n e next p #=&gt; 1\n e peek p #=&gt; 2\n e peek p #=&gt; 2\n e peek p #=&gt; 2\n e next p #=&gt; 2\n e next p #=&gt; 3\n e next p #=&gt; raises Fancy StopIteration\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n"}, "Object#for_option:do:":{args:["op_name", "block"], doc:"<p>Runs a given block if an option is in ARGV.</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#with:each:":{args:["object", "block"], doc:"<p>Similar to #each: but also passing in a given <code data-lang=\"fancy\">object</code> to each invocation of <code data-lang=\"fancy\">block</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">block</code> </label><div>A <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to be called with each element in the collection and <code data-lang=\"fancy\">object</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">object</code> </label><div>Object to pass along to <code data-lang=\"fancy\">block</code> with each element in the collection.</div></div></div>\n\n"}, "ThreadPool#execute_synchronous:":{args:["block"], doc:"<p>Forward to message execute_synchronous:with_args:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "ThreadPool#execute:":{args:["block"], doc:"<p>Forward to message execute:with_args:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "Fancy FDoc JSON#write:":{args:["filename"], doc:"<p>Forward to message write:call:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#initialize:":{args:["@collection"], doc:"<p>Initializes a new FancyEnumerator with a given <code data-lang=\"fancy\">collection</code>,\nusing #each: for iteration.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">collection</code> </label><div>Collection to iterate over.</div></div></div>\n\n"}, "FancyEnumerator#:ended?":{args:[], doc:"<p>Indicates if an enumerator has ended (no more values left).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if the enumerator has ended (no more values left), <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n"}, "Fancy Package Specification#add_ruby_dependency:":{args:["gem_name"], doc:"<p>Forward to message add_ruby_dependency:version:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "ThreadPool#initialize:":{args:["@count"], doc:"<p>Forward to message initialize:limit:</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#:rewind":{args:[], doc:"<p>Resets the enumerator to start from the collection's beginning.</p>\n\n<div class=\"doctags\"></div>\n\n"}, "FancyEnumerator#:next":{args:[], doc:"<p>Returns the next element in the collection this enumerator is attached to.\nIt will move the internal position forward (compared to e.g. #peek, which doesn't).</p>\n\n<p>Example:</p>\n\n<pre><code> a = [1,2,3]\n e = a to_enum\n e next # =&gt; 1\n e next # =&gt; 2\n e next # =&gt; 3\n e next # =&gt; raises Fancy StopIteration\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Next element in the collection this enumerator is attached to.</div></div></div>\n\n"}, "FancyEnumerator#initialize:with:":{args:["@collection", "@iterator"], doc:"<p>Initializes a new FancyEnumerator with a given <code data-lang=\"fancy\">collection</code>\nand <code data-lang=\"fancy\">iterator</code> selector to be used for iteration.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">collection</code> </label><div>Collection to iterate over.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">iterator</code> </label><div>Selector to use to iterate over <code data-lang=\"fancy\">collection</code>.</div></div></div>\n\n"}}}); })();
data/doc/features.md CHANGED
@@ -100,6 +100,14 @@
100
100
  * Instance variables: `@name`, `@age`
101
101
  * Class variables: `@@total`, `@@maximum`
102
102
 
103
+ ### Dynamically scoped variables ###
104
+
105
+ File open: "/tmp/foo.txt" modes: ['write] with: |f| {
106
+ let: '*stdout* be: f in: {
107
+ "foo" println # writes to /tmp/foo.txt instead of normal STDOUT (console)
108
+ }
109
+ }
110
+ # *stdout* is back to old value here.
103
111
 
104
112
  ### Dynamic getter and setter method definitions (similar to Ruby's attr_acessor) ###
105
113
 
data/examples/actors.fy CHANGED
@@ -1,17 +1,16 @@
1
1
  # Does the same as actors_primitive.fy but using
2
2
  # normal objects as actors by sending messages asynchronously (via @@ syntax).
3
3
  class PingPong {
4
- Done = false
5
4
  def initialize: @block {
6
5
  }
7
6
 
8
- def count: count reply: other {
7
+ def count: count reply: other notify: parent {
9
8
  @block call
10
9
  if: (count > 1000) then: {
11
10
  count println
12
- Done = true
11
+ parent run
13
12
  } else: {
14
- other @@ count: (count + 1) reply: self
13
+ other @@ count: (count + 1) reply: self notify: parent
15
14
  }
16
15
  }
17
16
  }
@@ -19,8 +18,5 @@ class PingPong {
19
18
  pong = PingPong new: { "-" print }
20
19
  ping = PingPong new: { "." print }
21
20
 
22
- ping @@ count: 1 reply: pong
23
-
24
- until: { PingPong Done } do: {
25
- Thread sleep: 0.1
26
- }
21
+ ping @@ count: 1 reply: pong notify: $ Thread current
22
+ Thread stop
@@ -1,5 +1,6 @@
1
1
  pong = nil
2
2
  done = false
3
+ Parent = Thread current
3
4
 
4
5
  ping = Actor spawn: {
5
6
  loop: {
@@ -8,6 +9,7 @@ ping = Actor spawn: {
8
9
  { count println; done = true; break } if: (count > 1000)
9
10
  pong ! (count + 1)
10
11
  }
12
+ Parent run
11
13
  }
12
14
 
13
15
  pong = Actor spawn: {
@@ -17,11 +19,10 @@ pong = Actor spawn: {
17
19
  { count println; done = true; break } if: (count > 1000)
18
20
  ping ! (count + 1)
19
21
  }
22
+ Parent run
20
23
  }
21
24
 
22
25
  ping ! 1
23
26
 
24
27
  # Let the actors process while the main thread sleeps...
25
- until: { done } do: {
26
- Thread sleep: 0.1
27
- }
28
+ Thread stop
@@ -1,37 +1,38 @@
1
1
  class Ring {
2
2
  class Node {
3
- def initialize: @next ring: @ring { }
3
+ def initialize: @next ring: @ring
4
4
 
5
5
  def count: count {
6
- if: @next then: {
7
- "." print
8
- @next @@ count: (count + 1)
9
- } else: {
10
- "DONE: " ++ count println
11
- @ring done: true
6
+ match @next {
7
+ case nil ->
8
+ "DONE: " ++ count println
9
+ @ring finish!
10
+ case _ ->
11
+ "." print
12
+ @next @@ count: (count + 1)
12
13
  }
13
14
  die! # let this actor die to free resources
14
15
  }
15
16
  }
16
17
 
17
- read_write_slot: 'done
18
18
  def initialize: amount {
19
19
  node = nil
20
20
  amount times: {
21
21
  node = Node new: node ring: self
22
22
  }
23
23
  @start = node
24
- @done = false
25
24
  }
26
25
 
27
- def start {
26
+ def start: @parent {
28
27
  @start count: 1
29
28
  }
29
+
30
+ def finish! {
31
+ @parent run
32
+ }
30
33
  }
31
34
 
32
35
  # create ring and run through it
33
36
  ring = Ring new: 4000
34
- ring start
35
- until: { ring done } do: {
36
- Thread sleep: 0.1
37
- }
37
+ ring start: $ Thread current
38
+ Thread stop # wait until finished
@@ -0,0 +1,8 @@
1
+ *foo* = 100
2
+ *foo* println
3
+ let: '*foo* be: 10
4
+ *foo* println
5
+ let: '*foo* be: "foobarbaz" in: {
6
+ *foo* println
7
+ }
8
+ *foo* println
@@ -0,0 +1,15 @@
1
+ # *stdout* refers to STDOUT
2
+ File open: "/tmp/foo.txt" modes: ['write] with: |f| {
3
+ let: '*stdout* be: f in: {
4
+ # *stdout* refers to f
5
+ # "foo" will be written to /tmp/foo.txt
6
+ # and not STDOUT
7
+ "foo" println
8
+ }
9
+ }
10
+ File open: "/tmp/foo.txt" modes: ['read] with: |f| {
11
+ let: '*stdin* be: f in: {
12
+ *stdin* readln println # => prints "foo" to *stdout*
13
+ }
14
+ }
15
+ # *stdout* refers to STDOUT
@@ -0,0 +1 @@
1
+ require: "parsing"
data/examples/person.fy CHANGED
@@ -23,8 +23,7 @@ class Person {
23
23
  # method but having initialize: replaced by new:.
24
24
  # So in this case: Person##new:age:city:
25
25
  # which calls this instance method internally
26
- def initialize: @name age: @age city: @city {
27
- }
26
+ def initialize: @name age: @age city: @city
28
27
 
29
28
  def go_to: city {
30
29
  # The .-operator (dot) manages left associativity and treats
data/lib/array.fy CHANGED
@@ -39,9 +39,9 @@ class Array {
39
39
  Appends another @Array@ onto this one.
40
40
 
41
41
  Example:
42
- a = [1,2,3]
43
- a append: [3,4,5]
44
- a # => [1,2,3,3,4,5]
42
+ a = [1,2,3]
43
+ a append: [3,4,5]
44
+ a # => [1,2,3,3,4,5]
45
45
  """
46
46
 
47
47
  arr each: |x| {
@@ -50,6 +50,25 @@ class Array {
50
50
  self
51
51
  }
52
52
 
53
+ def prepend: arr {
54
+ """
55
+ @arr Other @Array@ to be prepended to @self.
56
+ @return @self
57
+
58
+ Prepends another @Array@ to this one.
59
+
60
+ Example:
61
+ a = [1,2,3]
62
+ a prepend: [4,5,6]
63
+ a # => [4,5,6,1,2,3]
64
+ """
65
+
66
+ arr reverse_each: |x| {
67
+ self unshift: x
68
+ }
69
+ self
70
+ }
71
+
53
72
  def [index] {
54
73
  """
55
74
  @index Index to get the value for or @Array@ of 2 indices used for a sub-array.
@@ -126,6 +145,15 @@ class Array {
126
145
  }
127
146
 
128
147
  def reverse_each: block {
148
+ """
149
+ @block @Block@ to be called for each element (in reverse order).
150
+ @return @self.
151
+
152
+ Example:
153
+ [1,2,3] reverse_each: @{print}
154
+ # prints: 321
155
+ """
156
+
129
157
  size - 1 downto: 0 do: |i| {
130
158
  block call: [at: i]
131
159
  }
@@ -230,7 +258,7 @@ class Array {
230
258
  @return Elements of @Array@ joined to a @String@.
231
259
 
232
260
  Joins all elements with the empty @String@.
233
- [\"hello\", \"world\", \"!\"] join # => \"hello,world!\"
261
+ [\"hello\", \"world\", \"!\"] join # => \"hello,world!\"
234
262
  """
235
263
 
236
264
  join: ""
@@ -248,6 +276,15 @@ class Array {
248
276
  return self
249
277
  }
250
278
 
279
+ def reject!: block {
280
+ """
281
+ Same as Array#reject: but doing so in-place (destructive).
282
+ """
283
+
284
+ remove_if: block
285
+ self
286
+ }
287
+
251
288
  def compact! {
252
289
  """
253
290
  @return @self
@@ -291,6 +328,7 @@ class Array {
291
328
  each: |x| {
292
329
  x println
293
330
  }
331
+ nil
294
332
  }
295
333
 
296
334
  def to_s {
@@ -309,16 +347,16 @@ class Array {
309
347
 
310
348
  Returns a pretty-printed @String@ representation of @self.
311
349
  Example:
312
- [1, 'foo, \"bar\", 42] inspect # => \"[1, 'foo, \\\"bar\\\", 42]\"
350
+ [1, 'foo, \"bar\", 42] inspect # => \"[1, 'foo, \\\"bar\\\", 42]\"
313
351
  """
314
352
 
315
353
  str = "["
316
354
  each: |x| {
317
- str = str + (x inspect)
355
+ str << (x inspect)
318
356
  } in_between: {
319
- str = str + ", "
357
+ str << ", "
320
358
  }
321
- str + "]"
359
+ str << "]"
322
360
  }
323
361
 
324
362
  def to_a {
@@ -347,7 +385,7 @@ class Array {
347
385
  @return Concatenation of @self with another @Array@
348
386
 
349
387
  Returns concatenation with another @Array@.
350
- [1,2,3] + [3,4,5] # => [1,2,3,3,4,5]
388
+ [1,2,3] + [3,4,5] # => [1,2,3,3,4,5]
351
389
  """
352
390
 
353
391
  clone append: other_arr
@@ -358,7 +396,7 @@ class Array {
358
396
  @return @Array@ of all indices of @self.
359
397
 
360
398
  Returns an @Array@ of all the indices of an @Array@.
361
- [1,2,3] indices # => [0,1,2]
399
+ [1,2,3] indices # => [0,1,2]
362
400
  """
363
401
 
364
402
  0 upto: (size - 1)
@@ -370,7 +408,7 @@ class Array {
370
408
  @return @Array@ of all indices for a given value within an @Array@ (possibly empty).
371
409
 
372
410
  Returns an Array of all indices of this item. Empty Array if item does not occur.
373
- [1, 'foo, 2, 'foo] indices_of: 'foo # => [1, 3]
411
+ [1, 'foo, 2, 'foo] indices_of: 'foo # => [1, 3]
374
412
  """
375
413
 
376
414
  tmp = []