fancy 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (111) hide show
  1. data/AUTHORS +2 -0
  2. data/README.md +6 -1
  3. data/bin/fancy +6 -0
  4. data/bin/ifancy +44 -3
  5. data/boot/fancy_ext/module.rb +4 -0
  6. data/boot/fancy_ext/object.rb +4 -0
  7. data/boot/rbx-compiler/compiler/ast/block.rb +29 -1
  8. data/boot/rbx-compiler/compiler/ast/identifier.rb +6 -0
  9. data/boot/rbx-compiler/compiler/ast/message_send.rb +1 -0
  10. data/boot/rbx-compiler/parser/fancy_parser.bundle +0 -0
  11. data/boot/rbx-compiler/parser/lexer.lex +2 -0
  12. data/boot/rbx-compiler/parser/parser.rb +6 -0
  13. data/boot/rbx-compiler/parser/parser.y +14 -1
  14. data/doc/api/fancy.jsonp +1 -1
  15. data/doc/features.md +24 -0
  16. data/examples/99bottles.fy +5 -0
  17. data/examples/conditions_exceptions.fy +9 -0
  18. data/examples/conditions_parsing.fy +68 -0
  19. data/examples/greeter.fy +9 -0
  20. data/examples/html_generator.fy +59 -29
  21. data/examples/webserver/webserver.fy +8 -11
  22. data/lib/argv.fy +6 -0
  23. data/lib/array.fy +17 -35
  24. data/lib/block.fy +82 -1
  25. data/lib/boot.fy +4 -2
  26. data/lib/compiler.fy +2 -2
  27. data/lib/compiler/ast/block.fy +24 -20
  28. data/lib/compiler/ast/message_send.fy +11 -0
  29. data/lib/contracts.fy +60 -0
  30. data/lib/dynamic_slot_object.fy +61 -0
  31. data/lib/enumerable.fy +432 -394
  32. data/lib/enumerator.fy +152 -150
  33. data/lib/fdoc.fy +4 -17
  34. data/lib/fiber.fy +4 -10
  35. data/lib/file.fy +33 -25
  36. data/lib/future.fy +59 -5
  37. data/lib/hash.fy +54 -1
  38. data/lib/html.fy +107 -0
  39. data/lib/kvo.fy +173 -0
  40. data/lib/main.fy +6 -2
  41. data/lib/message_sink.fy +19 -0
  42. data/lib/number.fy +48 -0
  43. data/lib/object.fy +65 -13
  44. data/lib/package.fy +12 -2
  45. data/lib/package/dependency.fy +13 -0
  46. data/lib/package/dependency_installer.fy +27 -0
  47. data/lib/package/installer.fy +4 -10
  48. data/lib/package/uninstaller.fy +1 -3
  49. data/lib/parser/ext/lexer.lex +8 -3
  50. data/lib/parser/ext/parser.y +4 -1
  51. data/lib/parser/methods.fy +7 -3
  52. data/lib/range.fy +1 -1
  53. data/lib/rbx.fy +2 -1
  54. data/lib/rbx/array.fy +28 -12
  55. data/lib/rbx/bignum.fy +1 -1
  56. data/lib/rbx/block.fy +27 -0
  57. data/lib/rbx/console.fy +6 -6
  58. data/lib/rbx/date.fy +6 -1
  59. data/lib/rbx/documentation.fy +8 -3
  60. data/lib/rbx/exception.fy +5 -0
  61. data/lib/rbx/file.fy +40 -7
  62. data/lib/rbx/fixnum.fy +12 -1
  63. data/lib/rbx/method.fy +9 -2
  64. data/lib/rbx/module.fy +24 -0
  65. data/lib/rbx/regexp.fy +8 -0
  66. data/lib/rbx/string.fy +23 -7
  67. data/lib/rbx/tcp_server.fy +4 -2
  68. data/lib/rbx/tcp_socket.fy +14 -0
  69. data/lib/remote_object.fy +59 -0
  70. data/lib/set.fy +15 -4
  71. data/lib/string.fy +38 -5
  72. data/lib/stringio.fy +1 -0
  73. data/lib/symbol.fy +4 -0
  74. data/lib/system.fy +22 -0
  75. data/lib/thread_pool.fy +2 -2
  76. data/lib/tuple.fy +18 -1
  77. data/lib/vars.fy +17 -0
  78. data/lib/version.fy +1 -1
  79. data/ruby_lib/fancy +6 -0
  80. data/tests/array.fy +30 -0
  81. data/tests/block.fy +106 -0
  82. data/tests/class.fy +19 -0
  83. data/tests/enumerable.fy +1 -1
  84. data/tests/enumerator.fy +5 -5
  85. data/tests/file.fy +28 -0
  86. data/tests/fixnum.fy +0 -50
  87. data/tests/future.fy +9 -24
  88. data/tests/hash.fy +35 -0
  89. data/tests/html.fy +33 -0
  90. data/tests/kvo.fy +101 -0
  91. data/tests/number.fy +75 -0
  92. data/tests/object.fy +50 -3
  93. data/tests/string.fy +19 -10
  94. data/tests/symbol.fy +5 -0
  95. data/tests/tuple.fy +7 -0
  96. data/tools/fancy-mode.el +5 -1
  97. metadata +22 -21
  98. data/boot/compiler/parser/ext/fancy_parser.bundle +0 -0
  99. data/boot/rbx-compiler/parser/Makefile +0 -156
  100. data/boot/rbx-compiler/parser/lexer.c +0 -2310
  101. data/boot/rbx-compiler/parser/lexer.h +0 -315
  102. data/boot/rbx-compiler/parser/parser.c +0 -2946
  103. data/boot/rbx-compiler/parser/parser.h +0 -151
  104. data/lib/fiber_pool.fy +0 -78
  105. data/lib/method.fy +0 -6
  106. data/lib/parser/ext/Makefile +0 -156
  107. data/lib/parser/ext/fancy_parser.bundle +0 -0
  108. data/lib/parser/ext/lexer.c +0 -2392
  109. data/lib/parser/ext/lexer.h +0 -315
  110. data/lib/parser/ext/parser.c +0 -3251
  111. data/lib/parser/ext/parser.h +0 -161
data/AUTHORS CHANGED
@@ -5,3 +5,5 @@
5
5
  - Jose Narvaez: { email: goyox86@gmail.com, irc: goyox86, twitter: goyox86 }
6
6
  - Nils Haldenwang: { email: n.haldenwang@googlemail.com, website: http://www.nils-haldenwang.de, irc: NilsH }
7
7
  - Victor Hugo Borja: { email: vic.borja@gmail.com, irc: vborja, twitter: vborja }
8
+ - Michael Fellinger:
9
+ - Denny Abraham:
data/README.md CHANGED
@@ -3,7 +3,6 @@
3
3
  (C) 2010, 2011 Christopher Bertels chris@fancy-lang.org
4
4
  http://www.fancy-lang.org
5
5
 
6
- [![Build Status](https://secure.travis-ci.org/bakkdoor/fancy.png)](http://travis-ci.org/bakkdoor/fancy)
7
6
 
8
7
 
9
8
  ----------------------------------------------------------------------
@@ -89,23 +88,28 @@ Kernel#print or any other method in Ruby's kernel and work seamlessly.
89
88
 
90
89
  Here's an example:
91
90
 
91
+ ```fancy
92
92
  class Object {
93
93
  def print {
94
94
  "Print itself to the Console."
95
95
  Console print: self
96
96
  }
97
97
  }
98
+ ```
98
99
 
99
100
  To meet this goal, the Fancy compiler renames Fancy methods taking no
100
101
  arguments (like the previous "print" example) to a method named
101
102
  ":print". Using explicit parens syntax will allow you to invoke any
102
103
  Ruby method.
103
104
 
105
+ ```fancy
104
106
  someObject print # Will actually invoke the Fancy ":print" method.
105
107
  someObject print() # With explicit parens invokes the Ruby method.
108
+ ```
106
109
 
107
110
  Ruby method invocation supports passing a block variable to Ruby as a proc.
108
111
 
112
+ ```fancy
109
113
  class Something {
110
114
  def open: block {
111
115
  someRubyMethod(arg0, arg1, &block)
@@ -116,6 +120,7 @@ Ruby method invocation supports passing a block variable to Ruby as a proc.
116
120
  # with this syntax, calling ruby's inject is just as easy.
117
121
  # This example will print the number 6
118
122
  [1, 2, 3] inject(0) |sum, num| { sum + num } println
123
+ ```
119
124
 
120
125
 
121
126
  ##What's already working?
data/bin/fancy CHANGED
@@ -4,6 +4,12 @@
4
4
  base = File.dirname(__FILE__)
5
5
  require File.expand_path("../boot/fancy_ext", base)
6
6
 
7
+ class Object
8
+ define_method("__AFTER__BOOTSTRAP__:") do |block|
9
+ block.call
10
+ end
11
+ end
12
+
7
13
  # Use the bootstrapping code loader.
8
14
  require File.expand_path("../boot/load", base)
9
15
 
data/bin/ifancy CHANGED
@@ -1,7 +1,6 @@
1
1
  #!/usr/bin/env fancy
2
2
  # -*- fancy -*-
3
-
4
- require("readline")
3
+ require("rb-readline/readline")
5
4
 
6
5
  ["Welcome to the (still very simple) Fancy REPL",
7
6
  "Fancy " ++ FANCY_VERSION] println
@@ -53,12 +52,54 @@ def save_history {
53
52
  }
54
53
  }
55
54
 
55
+ def Readline completion: block {
56
+ Readline completion_proc=(block)
57
+ }
58
+
59
+ Readline completion_append_character=(" ")
60
+ Readline completion: |str| {
61
+ receiver = nil
62
+ end_idx = -2
63
+ methods = []
64
+ 3 times: {
65
+ try {
66
+ receiver = Readline line_buffer() split: " " . [[0,end_idx]] . join: " " . eval
67
+ methods = receiver class instance_methods
68
+ } catch Fancy Parser ParseError => e {
69
+ end_idx = end_idx - 1
70
+ } catch Exception => e {
71
+ methods = Object instance_methods
72
+ }
73
+ }
74
+
75
+ completions = []
76
+ try {
77
+ regexp = Regexp new(str)
78
+ completions = methods select: @{ =~ regexp } . map: @{ gsub(/^:/, "") }
79
+ } catch RegexpError {
80
+ } finally {
81
+ completions
82
+ }
83
+ }
84
+
85
+ def read_line {
86
+ try {
87
+ return Readline readline(">> ", true)
88
+ } catch ArgumentError {
89
+ return ""
90
+ }
91
+ }
92
+
56
93
  load_history
57
94
 
58
95
  try {
59
96
  bnd = binding()
60
97
 
61
- while: { Readline readline(">> ", true) } do: |line| {
98
+ while: { read_line } do: |line| {
99
+ if: (line =~ /^\s*(exit|quit)\s*$/) then: {
100
+ break
101
+ }
102
+
62
103
  HISTORY << line
63
104
  if: (double_or_empty?: line) then: {
64
105
  Readline::HISTORY pop()
@@ -1,4 +1,7 @@
1
1
  class Module
2
+ define_method :"included:" do |mod|
3
+ nil # do nothing by default
4
+ end
2
5
 
3
6
  # Fancy version does not restricts to only modules.
4
7
  define_method :"include:" do |modules|
@@ -6,6 +9,7 @@ class Module
6
9
  modules.reverse_each do |mod|
7
10
  mod.send :"append_features:", self
8
11
  mod.send :included, self
12
+ mod.send :"included:", self
9
13
  end
10
14
  end
11
15
 
@@ -1,4 +1,8 @@
1
1
  class Object
2
+ define_method("__AFTER__BOOTSTRAP__:") do |block|
3
+ nil
4
+ end
5
+
2
6
  define_method("ruby:with_block:") do |method, block|
3
7
  self.send(method, &block)
4
8
  end
@@ -2,7 +2,7 @@ class Fancy
2
2
  class AST
3
3
 
4
4
  class BlockLiteral < Rubinius::AST::Iter
5
- def initialize(line, args, body)
5
+ def initialize(line, args, body, partial = false)
6
6
  @args = args
7
7
  body = body || Rubinius::AST::NilLiteral.new(line)
8
8
 
@@ -20,6 +20,34 @@ class Fancy
20
20
  @arguments.prelude = :multi
21
21
  end
22
22
  @arguments.required_args = args.required_args
23
+
24
+ @partial = partial
25
+
26
+ if @partial
27
+ @body = ExpressionList.new @line, *@body.expressions.map{ |e| convert_to_implicit_arg_send(e) }
28
+ end
29
+ end
30
+
31
+ def convert_to_implicit_arg_send(expr)
32
+ # see self-hosted version in lib/compiler/block.fy
33
+ # this is just a port of it so we can use partial blocks
34
+ # in fancy's stdlib
35
+
36
+ new_receiver = Identifier.new(@line, @args.args.first.to_s)
37
+ case expr
38
+ when Identifier
39
+ expr = MessageSend.new(@line, new_receiver, expr, MessageArgs.new(@line))
40
+ when MessageSend
41
+ case expr.receiver
42
+ when Self
43
+ expr.receiver = new_receiver
44
+ when Identifier
45
+ expr.receiver = MessageSend.new(@line, new_receiver, expr.receiver, MessageArgs.new(@line))
46
+ when MessageSend
47
+ expr.receiver = convert_to_implicit_arg_send(expr.receiver)
48
+ end
49
+ end
50
+ expr
23
51
  end
24
52
 
25
53
  def bytecode(g)
@@ -4,6 +4,12 @@ class Fancy
4
4
  class Identifier < Node
5
5
  attr_reader :identifier
6
6
 
7
+ @@gen_ident_start = 0
8
+ def Identifier.generate(line)
9
+ @@gen_ident_start += 1
10
+ Identifier.new(line, "______gen_ident______#{@@gen_ident_start}")
11
+ end
12
+
7
13
  def initialize(line, identifier)
8
14
  super(line)
9
15
  @identifier = identifier
@@ -2,6 +2,7 @@ class Fancy
2
2
  class AST
3
3
 
4
4
  class MessageSend < Node
5
+ attr_accessor :receiver
5
6
  def initialize(line, receiver, message_name, message_args)
6
7
  super(line)
7
8
  @receiver = receiver
@@ -26,6 +26,7 @@ string_lit L?\"(\\.|[^\\"])*\"
26
26
  multiline_string L?\"\"\"(\\.|[^\\"])*\"\"\"
27
27
  lparen \(
28
28
  rparen \)
29
+ at_lcurly "@{"
29
30
  lcurly "{"
30
31
  rcurly "}"
31
32
  lbracket "["
@@ -99,6 +100,7 @@ escaped_newline "\\".*\n
99
100
  }
100
101
  {lparen} { return LPAREN; }
101
102
  {rparen} { return RPAREN; }
103
+ {at_lcurly} { return AT_LCURLY; }
102
104
  {lcurly} { return LCURLY; }
103
105
  {rcurly} { return RCURLY; }
104
106
  {lbracket} { return LBRACKET; }
@@ -243,6 +243,12 @@ class Fancy
243
243
  Rubinius::AST::NilLiteral.new(line)
244
244
  end
245
245
 
246
+ def partial_block(line, block_body)
247
+ gen_blockarg = AST::Identifier.generate(line)
248
+ args = AST::BlockArgs.new line, gen_blockarg
249
+ AST::BlockLiteral.new(line, args, block_body, true)
250
+ end
251
+
246
252
  def block_literal(line, block_args, block_body)
247
253
  block_args ||= Array.new
248
254
  args = AST::BlockArgs.new line, *block_args
@@ -24,6 +24,7 @@ extern char *yytext;
24
24
 
25
25
  %token LPAREN
26
26
  %token RPAREN
27
+ %token AT_LCURLY
27
28
  %token LCURLY
28
29
  %token RCURLY
29
30
  %token LBRACKET
@@ -101,6 +102,7 @@ extern char *yytext;
101
102
  %type <object> code
102
103
  %type <object> expression_list
103
104
  %type <object> expression_block
105
+ %type <object> partial_expression_block
104
106
  %type <object> exp
105
107
  %type <object> assignment
106
108
  %type <object> multiple_assignment
@@ -194,6 +196,11 @@ expression_block: LCURLY space expression_list space RCURLY {
194
196
  }
195
197
  ;
196
198
 
199
+ partial_expression_block: AT_LCURLY space expression_list space RCURLY {
200
+ $$ = $3;
201
+ }
202
+ ;
203
+
197
204
  statement: assignment
198
205
  | return_local_statement
199
206
  | return_statement
@@ -249,6 +256,9 @@ identifier: IDENTIFIER {
249
256
  | CLASS {
250
257
  $$ = fy_terminal_node_from(self, "identifier", "class");
251
258
  }
259
+ | RETURN {
260
+ $$ = fy_terminal_node_from(self, "identifier", "return");
261
+ }
252
262
  ;
253
263
 
254
264
  any_identifier: const_identifier
@@ -640,7 +650,10 @@ hash_literal: LEFTHASH space key_value_list space RIGHTHASH {
640
650
  }
641
651
  ;
642
652
 
643
- block_literal: expression_block {
653
+ block_literal: partial_expression_block {
654
+ $$ = rb_funcall(self, rb_intern("partial_block"), 2, INT2NUM(yylineno), $1);
655
+ }
656
+ | expression_block {
644
657
  $$ = rb_funcall(self, rb_intern("block_literal"), 3, INT2NUM(yylineno), Qnil, $1);
645
658
  }
646
659
  | STAB block_args STAB space expression_block {
@@ -1 +1 @@
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"}}}); })();
1
+ (function() { fancy.fdoc({title:"Fancy Documentation", methods:{"FutureSend#initialize:receiver:message:":{doc:"<p>Forward to message initialize:receiver:message:with_params:</p>\n\n<div class=\"doctags\"></div>\n\n", args:["@actor", "@receiver", "@message"]}, "Fancy Package Specification#add_dependency:":{doc:"<p>Forward to message add_dependency:version:</p>\n\n<div class=\"doctags\"></div>\n\n", args:["name"]}, "FutureSend#:value":{doc:"<p>Returns the value returned by performing <code data-lang=\"fancy\">self</code>.\nWill block the calling <code data-lang=\"fancy\" data-class-ref=\"Thread\" class=\"class-ref selectable\">Thread</code> if <code data-lang=\"fancy\">self</code> hasn't completed or failed yet.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Return value of performing <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", args:[]}, "String#:raise!":{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", args:[]}, "Fancy Enumerator#initialize:":{doc:"<p>Initializes a new Enumerator 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", args:["@collection"]}, "Fancy Enumerator#initialize:with:":{doc:"<p>Initializes a new Enumerator 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", args:["@collection", "@iterator"]}, "Object#for_option:do:":{doc:"<p>Runs a given block if an option is in ARGV.</p>\n\n<div class=\"doctags\"></div>\n\n", args:["op_name", "block"]}, "Fancy Enumerator#:rewind":{doc:"<p>Resets the enumerator to start from the collection's beginning.</p>\n\n<div class=\"doctags\"></div>\n\n", args:[]}, "Fancy Enumerator#with:each:":{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", args:["object", "block"]}, "FutureSend#:failed?":{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 FutureSend failed, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", args:[]}, "FutureSend#:succeeded?":{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 FutureSend completed without failure, <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", args:[]}, "Fancy FDoc JSON#write:":{doc:"<p>Forward to message write:call:</p>\n\n<div class=\"doctags\"></div>\n\n", args:["filename"]}, "FutureSend#:completed?":{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 FutureSend completed (success or failure), <code data-lang=\"fancy\">false</code> otherwise.</div></div></div>\n\n", args:[]}, "Fancy Package Specification#add_ruby_dependency:":{doc:"<p>Forward to message add_ruby_dependency:version:</p>\n\n<div class=\"doctags\"></div>\n\n", args:["gem_name"]}, "FutureSend#when_done:":{doc:"<p>Registers <code data-lang=\"fancy\">block</code> as a continuation to be called with <code data-lang=\"fancy\">self's</code> value on success.</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 registered as a continuation when <code data-lang=\"fancy\">self</code> succeeds.</div></div></div>\n\n", args:["block"]}, "Fancy Enumerator#each:":{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", args:["block"]}, "Module#included:":{doc:"<p>Gets called when a <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> or <code data-lang=\"fancy\" data-class-ref=\"Module\" class=\"class-ref selectable\">Module</code> is included into another <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\">module</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Module\" class=\"class-ref selectable\">Module</code> or <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> that has been included into <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", args:["module"]}, "Object#for_options:do:":{doc:"<p>Runs a given block if any of the given options is in ARGV.</p>\n\n<div class=\"doctags\"></div>\n\n", args:["op_names", "block"]}, "Fancy Enumerator#:next":{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", args:[]}, "Fancy Enumerator#:ended?":{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", args:[]}, "FutureSend#:failure":{doc:"<p>Returns the <code data-lang=\"fancy\" data-class-ref=\"Exception\" class=\"class-ref selectable\">Exception</code> that caused <code data-lang=\"fancy\">self</code> to fail, or <code data-lang=\"fancy\">nil</code>, if it didn't fail.\nWill block the calling <code data-lang=\"fancy\" data-class-ref=\"Thread\" class=\"class-ref selectable\">Thread</code> if <code data-lang=\"fancy\">self</code> hasn't completed or failed yet.</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=\"Exception\" class=\"class-ref selectable\">Exception</code> that caused the FutureSend to fail, or <code data-lang=\"fancy\">nil</code>, if no failure.</div></div></div>\n\n", args:[]}, "ThreadPool#execute_synchronous:":{doc:"<p>Forward to message execute_synchronous:with_args:</p>\n\n<div class=\"doctags\"></div>\n\n", args:["block"]}, "ThreadPool#execute:":{doc:"<p>Forward to message execute:with_args:</p>\n\n<div class=\"doctags\"></div>\n\n", args:["block"]}, "Module#:[]":{doc:"<p>Returns the value of the constant with the given name in <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">constant_name's</code> value.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">constant_name</code> </label><div>Name (<code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>) of constant's name.</div></div></div>\n\n", args:["constant_name"]}, "DynamicKeyHash#:initialize":{doc:"<p>Forward to message initialize:</p>\n\n<div class=\"doctags\"></div>\n\n", args:[]}, "ThreadPool#initialize:":{doc:"<p>Forward to message initialize:limit:</p>\n\n<div class=\"doctags\"></div>\n\n", args:["@count"]}, "Fancy Enumerator#:peek":{doc:"<p>Returns the next object in the Enumerator, 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", args:[]}}, date:"Wed Jan 25 10:57:30 +0100 2012", objects:{}, classes:{"File":{methods:{"delete:":{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:[127, 127], file:"lib/rbx/file.fy"}, "read:length:offset:":{doc:"<p>Reads all the contens (in ASCII mode) of a given file, length and offset\nand returns them as an Array of lines being read.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">length</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code> being the maximum length to read from the File.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> containing the path of the File to be read.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">offset</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Fixnum\" class=\"class-ref selectable\">Fixnum</code> being the offset in bytes to start reading from the File.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Contents of the File as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:["filename", "length", "offset"], lines:[75, 75], file:"lib/rbx/file.fy"}, "read:with:":{doc:"<p>Opens a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> for reading and calls <code data-lang=\"fancy\">block</code> with 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> called with a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> object to read from.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Filename of <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> to read from.</div></div></div>\n\n", arg:["filename", "block"], lines:[26, 26], file:"lib/file.fy"}, "open:modes:with:":{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], file:"lib/rbx/file.fy"}, "touch:":{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:[36, 36], file:"lib/file.fy"}, "rename:to:":{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:[148, 148], file:"lib/rbx/file.fy"}, "exists?:":{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], file:"lib/rbx/file.fy"}, "read:length:":{doc:"<p>Forward to message read:length:offset:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["filename", "length"], lines:[64, 64], file:"lib/rbx/file.fy"}, "modes_str:":{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:[108, 108], file:"lib/rbx/file.fy"}, "directory?:":{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:[138, 138], file:"lib/rbx/file.fy"}, "write:with:":{doc:"<p>Opens a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> for writing and calls <code data-lang=\"fancy\">block</code> with 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> called with a <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> object to write to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Filename of <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> to write to.</div></div></div>\n\n", arg:["filename", "block"], lines:[15, 15], file:"lib/file.fy"}, "open:modes:":{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:[90, 90], file:"lib/rbx/file.fy"}, "read:":{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 class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> containing the path of the File to be read.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Contents of the File as a <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code>.</div></div></div>\n\n", arg:["filename"], lines:[61, 61], file:"lib/rbx/file.fy"}}, ancestors:["File", "Enumerable", "IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Enumerable", "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":{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:[219, 219], file:"lib/rbx/file.fy"}, "write:":{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:[205, 205], file:"lib/rbx/file.fy"}, "writeln:":{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:[49, 49], file:"lib/file.fy"}, "println:":{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:[49, 49], file:"lib/file.fy"}, "print:":{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:[205, 205], file:"lib/rbx/file.fy"}, ":modes":{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:[174, 174], file:"lib/rbx/file.fy"}, "modes:":{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:[184, 184], file:"lib/rbx/file.fy"}, ":open?":{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:[194, 194], file:"lib/rbx/file.fy"}, ":close":{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:[165, 165], file:"lib/rbx/file.fy"}, ":expanded_path":{doc:"<p>Example:</p>\n\n<pre><code> f = File open: \"README.txt\"\n f expanded_path # =&gt; \"/path/to/README.txt\" (when run from /path/to/)\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Expanded (absolute) path of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[64, 64], file:"lib/file.fy"}, ":directory?":{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:[228, 228], file:"lib/rbx/file.fy"}, "read:":{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:[213, 213], file:"lib/rbx/file.fy"}}}, "Set":{methods:{":[]":{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=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Enumerable\" class=\"class-ref selectable\">Enumerable</code> of values used for new Set.</div></div></div>\n\n", arg:["values"], lines:[78, 78], file:"lib/set.fy"}}, ancestors:["Set", "Fancy Enumerable", "Object", "Object", "Kernel"], doc:"<p>A simple Set data structure class.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{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=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Enumerable\" class=\"class-ref selectable\">Enumerable</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:[168, 168], file:"lib/set.fy"}, ":initialize":{doc:"<p>Initialize a new empty Set.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[26, 26], file:"lib/set.fy"}, ":size":{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], file:"lib/set.fy"}, "remove:":{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:[150, 150], file:"lib/set.fy"}, ":inspect":{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:[140, 140], file:"lib/set.fy"}, ":[]":{doc:"<p>Indicates, if the Set includes <code data-lang=\"fancy\">value</code>.</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> is in <code data-lang=\"fancy\">self</code>, <code data-lang=\"fancy\">nil</code> otherwise.</div></div></div>\n\n", arg:["value"], lines:[112, 112], 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:[89, 89], file:"lib/set.fy"}, ":values":{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:[181, 181], 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:[159, 159], 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], file:"lib/set.fy"}, "each:":{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:[123, 123], file:"lib/set.fy"}, ":empty?":{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], file:"lib/set.fy"}, "includes?:":{doc:"<p>Indicates, if the Set includes <code data-lang=\"fancy\">value</code>.</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:[101, 101], file:"lib/set.fy"}, ":to_s":{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:[132, 132], file:"lib/set.fy"}}}, "Fancy Package":{methods:{":add_to_loadpath":{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:[99, 99], file:"lib/package.fy"}, ":install_dependencies":{doc:"<p>Installs dependencies found in .fancypack file in the current directory.\nIf no .fancypack file is found, fails and quits.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[52, 52], file:"lib/package.fy"}, "uninstall:":{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:[62, 62], file:"lib/package.fy"}, ":list_packages":{doc:"<p>Lists (prints) all installed packages on this system.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[70, 70], file:"lib/package.fy"}, "install:version:":{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", "version"], lines:[43, 43], file:"lib/package.fy"}, ":package_list_file":{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:[90, 90], file:"lib/package.fy"}, ":root_dir":{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:[83, 83], file:"lib/package.fy"}, "install:":{doc:"<p>Forward to message install:version:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["package_name"], lines:[33, 33], file:"lib/package.fy"}}, 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:</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", instance_methods:{}}, "Struct":{methods:{"new:":{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], file:"lib/struct.fy"}}, 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:{}}, "RespondsToProxy":{methods:{}, 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:":{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], file:"lib/proxy.fy"}, "unknown_message:with_params:":{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], file:"lib/proxy.fy"}}}, "Array":{methods:{"new:":{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:[470, 470], file:"lib/array.fy"}, "new:with:":{doc:"<p>Creates a new Array with a given size and default-value.\nIf <code data-lang=\"fancy\">default</code> is a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>, call that block for each element instead.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["size", "default"], lines:[12, 12], file:"lib/rbx/array.fy"}}, ancestors:["Array", "Fancy Enumerable", "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":{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:[], lines:[249, 249], file:"lib/array.fy"}, "remove_if:":{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:[305, 305], file:"lib/array.fy"}, "index:":{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:[88, 88], file:"lib/rbx/array.fy"}, ":second":{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:[101, 101], file:"lib/array.fy"}, "select_with_index:":{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:[434, 434], file:"lib/array.fy"}, ":first":{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:[94, 94], file:"lib/array.fy"}, "unshift:":{doc:"<p>Inserts a value at the front of <code data-lang=\"fancy\">self</code>.</p>\n\n<p>Example:</p>\n\n<pre><code> a = [1,2,3]\n a unshift: 10\n a # =&gt; [10,1,2,3]\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">value</code> </label><div>Value to be added at the front 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:["value"], lines:[126, 126], file:"lib/rbx/array.fy"}, ":to_a":{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:[351, 351], file:"lib/array.fy"}, "reverse_each:":{doc:"<p>Example:</p>\n\n<pre><code> [1,2,3] reverse_each: @{print}\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"], lines:[157, 157], file:"lib/array.fy"}, "prepend:":{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"], lines:[66, 66], file:"lib/array.fy"}, ":compact!":{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:[280, 280], file:"lib/array.fy"}, "indices_of:":{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"], lines:[398, 398], file:"lib/array.fy"}, "at:":{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], file:"lib/rbx/array.fy"}, "each:":{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:[145, 145], file:"lib/array.fy"}, "join:":{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:[110, 110], file:"lib/rbx/array.fy"}, "remove_at:":{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], file:"lib/rbx/array.fy"}, "select!:":{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:[260, 260], file:"lib/array.fy"}, "values_at:":{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:[221, 221], file:"lib/array.fy"}, ":indices":{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:[], lines:[386, 386], file:"lib/array.fy"}, "at:put:":{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:[76, 76], file:"lib/rbx/array.fy"}, ":rest":{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:[124, 124], file:"lib/array.fy"}, ":println":{doc:"<p>Prints each element on a seperate line.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[315, 315], file:"lib/array.fy"}, "append:":{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"], lines:[47, 47], file:"lib/array.fy"}, "from:to:":{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:[418, 418], file:"lib/array.fy"}, "find:":{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:[195, 195], file:"lib/array.fy"}, "find_by:":{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:[210, 210], file:"lib/array.fy"}, ":to_hash":{doc:"<p>Returns a <code data-lang=\"fancy\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code> with each key-value pair in <code data-lang=\"fancy\">self</code>.</p>\n\n<p>Example:</p>\n\n<pre><code> [[1,2],[3,4]] to_hash # =&gt; &lt;[1 =&gt; 2, 3 =&gt; 4]&gt;\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[451, 451], 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:[360, 360], file:"lib/array.fy"}, "remove:":{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:[292, 292], file:"lib/array.fy"}, ":clone":{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], file:"lib/array.fy"}, "reject!:":{doc:"<p>Same as Array#reject: but doing so in-place (destructive).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"], lines:[269, 269], file:"lib/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:[76, 76], file:"lib/rbx/array.fy"}, ":inspect":{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:[], lines:[337, 337], 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:[87, 87], file:"lib/array.fy"}, ":+":{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"], lines:[375, 375], file:"lib/array.fy"}, ":third":{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:[108, 108], 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:[236, 236], file:"lib/array.fy"}, "includes?:":{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:[27, 27], file:"lib/rbx/array.fy"}, ":fourth":{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:[115, 115], file:"lib/array.fy"}, "last:":{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:[98, 98], file:"lib/rbx/array.fy"}, ":to_s":{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:[326, 326], 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:[178, 178], file:"lib/array.fy"}}}, "Fixnum":{methods:{}, 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:{":random":{doc:"<p>Returns a random number between 0 and <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Random number between 0 and <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[29, 29], file:"lib/rbx/fixnum.fy"}}}, "Directory":{methods:{"delete:":{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], file:"lib/rbx/directory.fy"}, "list:":{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], file:"lib/rbx/directory.fy"}, "create:":{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], file:"lib/rbx/directory.fy"}, "exists?:":{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], file:"lib/directory.fy"}, "create!:":{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], file:"lib/rbx/directory.fy"}}, 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:{}}, "ProxyReceiver":{methods:{}, 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:":{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], file:"lib/proxy.fy"}, "initialize:for:":{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], file:"lib/proxy.fy"}}}, "Method":{methods:{}, ancestors:["Method", "MethodMixin", "Object", "Unmarshalable", "Object", "Kernel"], doc:"<p>An instance of Method represents a method on a Class.\nEvery method in Fancy is an instance of the Method class.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}}, "NameError":{methods:{}, 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:{}}, "Range":{methods:{}, ancestors:["Range", "Fancy Enumerable", "Object", "Enumerable", "Object", "Kernel"], 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", instance_methods:{"each:":{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:[36, 36], file:"lib/rbx/range.fy"}, ":to_s":{doc:"<p>Same as Range#inspect</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[18, 18], file:"lib/range.fy"}, "initialize:to:":{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:[13, 13], file:"lib/rbx/range.fy"}, ":inspect":{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], file:"lib/range.fy"}}}, "Fancy Enumerable":{methods:{}, ancestors:["Fancy Enumerable", "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:{"superior_by:taking:":{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"], lines:[388, 388], file:"lib/enumerable.fy"}, ":first":{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:[339, 339], file:"lib/enumerable.fy"}, "sort_by:":{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:[496, 496], file:"lib/enumerable.fy"}, "reverse_each:":{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"], lines:[568, 568], file:"lib/enumerable.fy"}, "inject:into:":{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"], lines:[286, 286], file:"lib/enumerable.fy"}, "partition_by:":{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"], lines:[456, 456], file:"lib/enumerable.fy"}, "each:in_between:":{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:[40, 40], file:"lib/enumerable.fy"}, ":max":{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:[409, 409], file:"lib/enumerable.fy"}, "map:":{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:[140, 140], file:"lib/enumerable.fy"}, ":last":{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:[349, 349], file:"lib/enumerable.fy"}, ":uniq":{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:[], lines:[298, 298], file:"lib/enumerable.fy"}, "take_while:":{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"], lines:[187, 187], file:"lib/enumerable.fy"}, ":product":{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:[437, 437], file:"lib/enumerable.fy"}, "reject:":{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:[168, 168], file:"lib/enumerable.fy"}, "in_groups_of:":{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"], lines:[507, 507], file:"lib/enumerable.fy"}, "join:":{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"], lines:[57, 57], file:"lib/enumerable.fy"}, ":empty?":{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:[328, 328], file:"lib/enumerable.fy"}, ":compact":{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:[], lines:[367, 367], file:"lib/enumerable.fy"}, ":reverse":{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:[], lines:[537, 537], file:"lib/enumerable.fy"}, "superior_by:":{doc:"<p>Forward to message superior_by:taking:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["comparison_block"], lines:[369, 369], file:"lib/enumerable.fy"}, ":average":{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:[444, 444], file:"lib/enumerable.fy"}, "all?:":{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"], lines:[95, 95], file:"lib/enumerable.fy"}, "find:":{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:[117, 117], file:"lib/enumerable.fy"}, "find_by:":{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:[129, 129], file:"lib/enumerable.fy"}, "drop:":{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"], lines:[251, 251], file:"lib/enumerable.fy"}, ":size":{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:[314, 314], file:"lib/enumerable.fy"}, "any?:":{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:[79, 79], file:"lib/enumerable.fy"}, "take:":{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"], lines:[235, 235], file:"lib/enumerable.fy"}, "drop_while:":{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"], lines:[208, 208], file:"lib/enumerable.fy"}, "skip:":{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"], lines:[251, 251], file:"lib/enumerable.fy"}, ":sum":{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:[428, 428], file:"lib/enumerable.fy"}, "select:":{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:[155, 155], file:"lib/enumerable.fy"}, "to_hash:":{doc:"<p>Example:</p>\n\n<pre><code> [\"foo\", \\\342\200\235hello\", \"ok\", \"\"] to_hash: @{ size }\n # =&gt; &lt;[3 =&gt; \"foo\", 5 =&gt; \"hello\", 2 =&gt; \"ok\", 0 =&gt; \"\"]&gt;\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 to get the key 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\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code> of key/value pairs based on values in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[551, 551], file:"lib/enumerable.fy"}, "each_with_index:":{doc:"<p>Iterate over all elements in <code data-lang=\"fancy\">self</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 index in the <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:[16, 16], file:"lib/enumerable.fy"}, "includes?:":{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:[32, 32], file:"lib/enumerable.fy"}, "reduce:init_val:":{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"], lines:[269, 269], file:"lib/enumerable.fy"}, ":random":{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:[479, 479], file:"lib/enumerable.fy"}, ":min":{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:[419, 419], file:"lib/enumerable.fy"}}}, "Thread":{methods:{"sleep:":{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:[87, 87], file:"lib/rbx/thread.fy"}}, 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:{}}, "Bignum":{methods:{}, 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:{}}, "NilClass":{methods:{":new":{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], file:"lib/nil_class.fy"}}, 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:":{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], file:"lib/nil_class.fy"}, "if_nil:else:":{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], file:"lib/nil_class.fy"}, ":nil?":{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], file:"lib/nil_class.fy"}, ":not":{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], file:"lib/nil_class.fy"}, "if_true:":{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], file:"lib/nil_class.fy"}, "if_true:else:":{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], file:"lib/nil_class.fy"}, ":to_a":{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], file:"lib/nil_class.fy"}, ":to_s":{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], file:"lib/nil_class.fy"}, ":inspect":{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], file:"lib/nil_class.fy"}}}, "Fancy Package Uninstaller":{methods:{}, ancestors:["Fancy Package Uninstaller", "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> Uninstaller.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}}, "MatchData":{methods:{}, 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:":{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], file:"lib/rbx/match_data.fy"}, ":to_a":{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], file:"lib/rbx/match_data.fy"}}}, "Regexp":{methods:{}, 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:{}}, "TCPSocket":{methods:{"open:port:":{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:[19, 19], file:"lib/rbx/tcp_socket.fy"}}, ancestors:["TCPSocket", "IPSocket", "BasicSocket", "IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Enumerable", "Object", "Kernel"], doc:"<p>TCP Socket class.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"send:":{doc:"<p>Forward to message send:flags:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["msg"], lines:[21, 21], file:"lib/rbx/tcp_socket.fy"}}}, "Date":{methods:{}, ancestors:["Date", "Comparable", "Object", "Kernel"], doc:"<p>Date class. Used for timely stuff.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{":!=":{doc:"\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=\"Date\" class=\"class-ref selectable\">Date</code> to compare to.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div><code data-lang=\"fancy\">true</code> if equal, <code data-lang=\"fancy\">false</code> otherwhise.</div></div></div>\n\n", arg:["other"], lines:[20, 20], file:"lib/rbx/date.fy"}}}, "Fancy Documentation":{methods:{"for:append:":{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], file:"lib/documentation.fy"}, "for_method:on_class:is:":{doc:"<p>Similar to <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> <code data-lang=\"fancy\" data-ruby-singleton-method-ref=\"\" data-owner-class=\"Fancy Documentation\" class=\"ruby-singleton-method-ref selectable\"></code> but taking the method name and the <code data-lang=\"fancy\" data-class-ref=\"Class\" class=\"class-ref selectable\">Class</code> for which <code data-lang=\"fancy\" data-class-ref=\"Method\" class=\"class-ref selectable\">Method</code> to define the docstring.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["method_name", "class", "docstring"], lines:[49, 49], file:"lib/rbx/documentation.fy"}, "remove:":{doc:"<p>Removes the documentation for obj.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["obj"], lines:[62, 62], file:"lib/rbx/documentation.fy"}, "formatter:is:":{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], file:"lib/documentation.fy"}, ":formatters":{doc:"<p>Obtain the hash of known documentation formatters.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[100, 100], file:"lib/documentation.fy"}, "for:is:":{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:[37, 37], file:"lib/rbx/documentation.fy"}, "for:":{doc:"<p>Obtains the Fancy Documentation for obj.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["obj"], lines:[57, 57], file:"lib/rbx/documentation.fy"}, "formatter:":{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], file:"lib/documentation.fy"}}, 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:":{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], file:"lib/documentation.fy"}, ":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"}}}, "TrueClass":{methods:{":new":{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], file:"lib/true_class.fy"}}, 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":{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], file:"lib/true_class.fy"}, "if_true:":{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], file:"lib/true_class.fy"}, "if_true:else:":{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], file:"lib/true_class.fy"}, ":true?":{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], file:"lib/true_class.fy"}, ":to_a":{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], file:"lib/true_class.fy"}, ":to_s":{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], file:"lib/true_class.fy"}, ":inspect":{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], file:"lib/true_class.fy"}}}, "Console":{methods:{":newline":{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], file:"lib/rbx/console.fy"}, "println:":{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], file:"lib/rbx/console.fy"}, ":readln":{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:[56, 56], file:"lib/rbx/console.fy"}, "print:":{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], file:"lib/rbx/console.fy"}, ":clear":{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], file:"lib/rbx/console.fy"}, "readln:":{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], file:"lib/rbx/console.fy"}}, 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:{}}, "Tuple":{methods:{"new:":{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/rbx/tuple.fy"}, "with_values:":{doc:"<p>Creates a new <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> with the <code data-lang=\"fancy\">values</code> passed in.</p>\n\n<p>Example:</p>\n\n<pre><code> Tuple with_values: [1,2,3] # =&gt; (1,2,3)\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">values</code> </label><div>Values of the <code data-lang=\"fancy\" data-class-ref=\"Tuple\" class=\"class-ref selectable\">Tuple</code> to be created.</div></div></div>\n\n", arg:["values"], lines:[19, 19], 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:[144, 144], file:"lib/tuple.fy"}}, ancestors:["Rubinius Tuple", "Fancy Enumerable", "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":{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:[48, 48], file:"lib/tuple.fy"}, "at:":{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], file:"lib/rbx/tuple.fy"}, ":third":{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:[56, 56], 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:[114, 114], file:"lib/tuple.fy"}, "each:":{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:[74, 74], file:"lib/tuple.fy"}, ":first":{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:[40, 40], file:"lib/tuple.fy"}, ":fourth":{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:[64, 64], file:"lib/tuple.fy"}, "reverse_each:":{doc:"<p>Example:</p>\n\n<pre><code> (1,2,3) reverse_each: @{print}\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"], lines:[90, 90], file:"lib/tuple.fy"}, "at:put:":{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/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/rbx/tuple.fy"}, ":inspect":{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:[122, 122], 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:[32, 32], file:"lib/tuple.fy"}}}, "Exception":{methods:{}, ancestors:["Exception", "Object", "Kernel"], doc:"<p>Base Exception class.\nAll Exception classes inherit from <code data-lang=\"fancy\" data-class-ref=\"Exception\" class=\"class-ref selectable\">Exception</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}}, "NoMethodError":{methods:{}, 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":{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], file:"lib/rbx/no_method_error.fy"}}}, "Fancy BreakIteration":{methods:{}, 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:</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", instance_methods:{}}, "Actor":{methods:{"spawn:":{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"], lines:[51, 51], file:"lib/rbx/actor.fy"}}, 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:{}}, "String":{methods:{}, ancestors:["String", "Fancy Enumerable", "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 <code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Enumerable\" class=\"class-ref selectable\">Enumerable</code>, 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:{":lines":{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:[123, 123], file:"lib/string.fy"}, ":eval":{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/rbx/string.fy"}, "==":{doc:"<p>Compares <code data-lang=\"fancy\">self</code> to another <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> and returns <code data-lang=\"fancy\">true</code>, if equal, <code data-lang=\"fancy\">false</code> otherwise.</p>\n\n<div class=\"doctags\"></div>\n\n", lines:[139, 139], file:"kernel/common/string.rb"}, ":characters":{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:[], lines:[165, 165], file:"lib/string.fy"}, ":words":{doc:"<p>Example:</p>\n\n<pre><code> \"hello world\" words # =&gt; [\"hello\", \"world\"]\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 the whitespace seperated words in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[93, 93], file:"lib/string.fy"}, ":==":{doc:"<p>Compares <code data-lang=\"fancy\">self</code> to another <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> and returns <code data-lang=\"fancy\">true</code>, if equal, <code data-lang=\"fancy\">false</code> otherwise.</p>\n\n<div class=\"doctags\"></div>\n\n", lines:[139, 139], file:"kernel/common/string.rb"}, "at:":{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], file:"lib/rbx/string.fy"}, "each:":{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], file:"lib/rbx/string.fy"}, ":character":{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:[], lines:[172, 172], file:"lib/string.fy"}, "split:":{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/rbx/string.fy"}, ":split":{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], file:"lib/rbx/string.fy"}, ":lowercase":{doc:"<p>Example:</p>\n\n<pre><code> \"HELLO WORLD\" lowercase # =&gt; \"hello world\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Lowercased version of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", lines:[580, 580], file:"kernel/common/string.rb"}, ":rest":{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:[], lines:[113, 113], file:"lib/string.fy"}, ":raise!":{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:[101, 101], file:"lib/string.fy"}, ":uppercase":{doc:"<p>Example:</p>\n\n<pre><code> \"hello world\" uppercase # =&gt; \"HELLO WORLD\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Uppercased version of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", lines:[1549, 1549], file:"kernel/common/string.rb"}, "append:":{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], file:"lib/rbx/string.fy"}, "from:to:":{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/rbx/string.fy"}, ":blank?":{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:[60, 60], file:"lib/string.fy"}, "downcase":{doc:"<p>Example:</p>\n\n<pre><code> \"HELLO WORLD\" lowercase # =&gt; \"hello world\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Lowercased version of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", lines:[580, 580], file:"kernel/common/string.rb"}, ":*":{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<p>Example:</p>\n\n<pre><code> \"foo\" * 3 # =&gt; \"foofoofoo\"\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:[78, 78], file:"lib/string.fy"}, "lowercase":{doc:"<p>Example:</p>\n\n<pre><code> \"HELLO WORLD\" lowercase # =&gt; \"hello world\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Lowercased version of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", lines:[580, 580], file:"kernel/common/string.rb"}, "uppercase":{doc:"<p>Example:</p>\n\n<pre><code> \"hello world\" uppercase # =&gt; \"HELLO WORLD\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Uppercased version of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", lines:[1549, 1549], file:"kernel/common/string.rb"}, ":downcase":{doc:"<p>Example:</p>\n\n<pre><code> \"HELLO WORLD\" lowercase # =&gt; \"hello world\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Lowercased version of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", lines:[580, 580], file:"kernel/common/string.rb"}, ":bytes":{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=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Enumerator\" class=\"class-ref selectable\">Enumerator</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:[], lines:[184, 184], file:"lib/string.fy"}, "upcase":{doc:"<p>Example:</p>\n\n<pre><code> \"hello world\" uppercase # =&gt; \"HELLO WORLD\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Uppercased version of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", lines:[1549, 1549], file:"kernel/common/string.rb"}, ":[]":{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:[24, 24], file:"lib/rbx/string.fy"}, "substitute:with:":{doc:"\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">substitution</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> to replace <code data-lang=\"fancy\">substring</code> with.</div></div><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> or <code data-lang=\"fancy\" data-class-ref=\"Regexp\" class=\"class-ref selectable\">Regexp</code> to be substituted.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>A new <code data-lang=\"fancy\" data-class-ref=\"String\" class=\"class-ref selectable\">String</code> where <code data-lang=\"fancy\">substring</code> is substituted by <code data-lang=\"fancy\">substitution</code>.</div></div></div>\n\n", arg:["substring", "substitution"], lines:[164, 164], file:"lib/rbx/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:</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"], lines:[140, 140], file:"lib/string.fy"}, "relative_path:":{doc:"<p>Example:</p>\n\n<pre><code> __FILE__ relative: \"../foo/bar\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">path</code> </label><div>Relative path to <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Absolute <code data-lang=\"fancy\" data-class-ref=\"File\" class=\"class-ref selectable\">File</code> path relative to <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["path"], lines:[199, 199], file:"lib/string.fy"}, ":upcase":{doc:"<p>Example:</p>\n\n<pre><code> \"hello world\" uppercase # =&gt; \"HELLO WORLD\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Uppercased version of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", lines:[1549, 1549], file:"kernel/common/string.rb"}, ":whitespace?":{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:[50, 50], file:"lib/string.fy"}, ":skip_leading_indentation":{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:[148, 148], 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.</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"], lines:[40, 40], file:"lib/string.fy"}, "includes?:":{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], file:"lib/rbx/string.fy"}, ":eval_global":{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], file:"lib/rbx/string.fy"}}}, "KVO":{methods:{}, ancestors:["KVO", "Object", "Kernel"], doc:"<p>Key-Value Observing Mixin class.\nInclude this Class into any class to add support for Key-Value Observing.\nInspired by Objective-C's KVO, but using <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>s, as it fits nicer\nwith Fancy's semantics.</p>\n\n<p>Example:</p>\n\n<pre><code> class Person {\n include: KVO\n read_write_slots: ('name, 'age, 'city)\n }\n\n tom = Person new tap: @{\n name: \"Tom Cruise\"\n age: 55\n city: \"Hollywood\"\n }\n\n tom observe: 'name with: |new old| {\n new println\n }\n tom name: \"Tommy Cruise\" # will cause \"Tommy Cruise\" to be printed\n tom age: 56 # No observer Blocks defined, so nothing will happen\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"observe:with:":{doc:"<p>Registers a new observer <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> for <code data-lang=\"fancy\">slotname</code> in <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 old and new value of <code data-lang=\"fancy\">slotname</code> in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of slot to be observed with <code data-lang=\"fancy\">block</code>.</div></div></div>\n\n", arg:["slotname", "block"], lines:[68, 68], file:"lib/kvo.fy"}, "observe_removal:with:":{doc:"<p>Registers a new removal observer <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> for collection named <code data-lang=\"fancy\">slotname</code> in <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 value removed from collection named <code data-lang=\"fancy\">slotname</code> in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of collection slot to be observed with <code data-lang=\"fancy\">block</code>.</div></div></div>\n\n", arg:["slotname", "block"], lines:[90, 90], file:"lib/kvo.fy"}, "observe_insertion:with:":{doc:"<p>Registers a new insertion observer <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> for collection named <code data-lang=\"fancy\">slotname</code> in <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 value inserted in collection named <code data-lang=\"fancy\">slotname</code> in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">slotname</code> </label><div>Name of collection slot to be observed with <code data-lang=\"fancy\">block</code>.</div></div></div>\n\n", arg:["slotname", "block"], lines:[79, 79], file:"lib/kvo.fy"}}}, "Fancy Package RubyDependency":{methods:{}, 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:":{doc:"<p>Forward to message initialize:version:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@gem_name"], lines:[22, 22], file:"lib/package/dependency.fy"}, ":install":{doc:"<p>Installs the RubyDependency (a RubyGem) via rbx -S gem on the system.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[29, 29], file:"lib/package/dependency.fy"}}}, "Number":{methods:{}, 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:{":even?":{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:[177, 177], file:"lib/number.fy"}, "upto:in_steps_of:do:":{doc:"<p>Calls <code data-lang=\"fancy\">block</code> every <code data-lang=\"fancy\">steps</code> steps between <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">num</code> with the current <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</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 every <code data-lang=\"fancy\">steps</code> steps 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\">steps</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> of numbers to skip each step.</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", "steps", "block"], lines:[53, 53], file:"lib/number.fy"}, ":cubed":{doc:"<p>Returns the cubed value of a Number.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Cubed value of <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[143, 143], file:"lib/number.fy"}, "downto:":{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:[70, 70], file:"lib/number.fy"}, "downto:in_steps_of:do:":{doc:"<p>Calls <code data-lang=\"fancy\">block</code> every <code data-lang=\"fancy\">steps</code> steps between <code data-lang=\"fancy\">self</code> and <code data-lang=\"fancy\">num</code> with the current <code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</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 every <code data-lang=\"fancy\">steps</code> steps 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\">steps</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Number\" class=\"class-ref selectable\">Number</code> of numbers to skip each step.</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", "steps", "block"], lines:[108, 108], file:"lib/number.fy"}, "upto:":{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], file:"lib/number.fy"}, ":negate":{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:[167, 167], file:"lib/number.fy"}, ":abs":{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:[158, 158], file:"lib/number.fy"}, "min:":{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"], lines:[212, 212], file:"lib/number.fy"}, "upto:do:":{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], file:"lib/number.fy"}, "max:":{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"], lines:[200, 200], file:"lib/number.fy"}, ":odd?":{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:[187, 187], file:"lib/number.fy"}, ":squared":{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:[123, 123], file:"lib/number.fy"}, ":doubled":{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:[133, 133], file:"lib/number.fy"}, "downto:do:":{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:[89, 89], file:"lib/number.fy"}}}, "Block":{methods:{}, 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:{":to_hash":{doc:"<p>Creates and returns a new <code data-lang=\"fancy\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code> with keys and values defined dynamically in <code data-lang=\"fancy\">self</code>.\nSimilar to <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> <code data-lang=\"fancy\" data-ruby-singleton-method-ref=\"object\" data-owner-class=\"Block\" class=\"ruby-singleton-method-ref selectable\">object</code> but returning a <code data-lang=\"fancy\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code> instead of an <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code></p>\n\n<p>Example:</p>\n\n<pre><code> o = {\n something: \"foo bar baz\"\n with: 42\n } to_hash # =&gt; &lt;['something =&gt; \"foo bar baz\", 'with =&gt; 42]&gt;\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[171, 171], file:"lib/block.fy"}, "while_nil:":{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"], lines:[29, 29], file:"lib/block.fy"}, "call:with_receiver:":{doc:"<p>Same as <code data-lang=\"fancy\">call_with_receiver:</code> but passing along arguments to the <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</p>\n\n<p>Example:</p>\n\n<pre><code> r1 = [1,2,3]\n r2 = \"hello world\"\n b = |arg| { self to_s + arg }\n b call: [\"foo\"] with_receiver: r1 # =&gt; \"123foo\"\n b call: [\"foo\"] with_receiver: r2 # =&gt; \"hello worldfoo\"\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">receiver</code> </label><div>Receiver (value of <code data-lang=\"fancy\">self</code>) when calling the <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">args</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of arguments passed to <code data-lang=\"fancy\">self</code> for invocation.</div></div></div>\n\n", arg:["args", "receiver"], lines:[93, 93], file:"lib/rbx/block.fy"}, ":receiver":{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:[38, 38], file:"lib/rbx/block.fy"}, ":to_a":{doc:"<p>Creates and returns a new <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> with values defined dynamically in <code data-lang=\"fancy\">self</code>.\nSimilar to <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> <code data-lang=\"fancy\" data-ruby-singleton-method-ref=\"to_hash\" data-owner-class=\"Block\" class=\"ruby-singleton-method-ref selectable\">to_hash</code> but returning an <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> instead of a <code data-lang=\"fancy\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code></p>\n\n<p>Example:</p>\n\n<pre><code> a = {\n something: \"foo bar baz\"\n with: 42\n something; else\n } to_a # =&gt; [['something, \"foo bar baz\"], ['with, 42], 'something, 'else]\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[205, 205], file:"lib/block.fy"}, "until_do:":{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:[59, 59], file:"lib/block.fy"}, "while_do:":{doc:"<p>Calls <code data-lang=\"fancy\">block</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\">block</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"], lines:[48, 48], file:"lib/block.fy"}, ":to_proc":{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:[], lines:[102, 102], file:"lib/rbx/block.fy"}, ":||":{doc:"<p>Short-circuiting || (boolean OR).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["other_block"], lines:[87, 87], file:"lib/block.fy"}, "until:":{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:[69, 69], file:"lib/block.fy"}, "while_true:":{doc:"<p>Calls <code data-lang=\"fancy\">block</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\">block</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"], lines:[48, 48], file:"lib/block.fy"}, ":[]":{doc:"<p>Same as Block#call:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["args"], lines:[137, 137], file:"lib/block.fy"}, "if:":{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:[99, 99], file:"lib/block.fy"}, ":to_hash_deep":{doc:"<p>Creates and returns a new <code data-lang=\"fancy\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code> with keys and values defined dynamically in <code data-lang=\"fancy\">self</code>.\nSimilar to <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> <code data-lang=\"fancy\" data-ruby-singleton-method-ref=\"to_hash\" data-owner-class=\"Block\" class=\"ruby-singleton-method-ref selectable\">to_hash</code> but converting any value that's a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> to a <code data-lang=\"fancy\" data-class-ref=\"Hash\" class=\"class-ref selectable\">Hash</code> as well.</p>\n\n<p>Example:</p>\n\n<pre><code> o = {\n something: \"foo bar baz\"\n with: 42\n and: {\n another: 'field\n }\n } to_hash_deep # =&gt; &lt;['something =&gt; \"foo bar baz\", 'with =&gt; 42, 'and =&gt; &lt;['another =&gt; 'field]&gt;]&gt;\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[189, 189], file:"lib/block.fy"}, ":to_object":{doc:"<p>Creates and returns a new <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> with slots defined dynamically in <code data-lang=\"fancy\">self</code>.\nLooks and feels similar to Javascript object literals.</p>\n\n<p>Example:</p>\n\n<pre><code> o = {\n something: \"foo bar baz\"\n with: 42\n } to_object\n\n o something # =&gt; \"foo bar baz\"\n o with # =&gt; 42\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[154, 154], file:"lib/block.fy"}, "call_with_receiver:":{doc:"<p>Calls a <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with <code data-lang=\"fancy\">receiver</code> as the receiver (referenced by <code data-lang=\"fancy\">self</code> within the Block).</p>\n\n<p>Example:</p>\n\n<pre><code> r1 = [1,2,3]\n r2 = \"hello world\"\n b = { self class }\n b call_with_receiver: r1 # =&gt; Array\n b call_with_receiver: r2 # =&gt; String\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">receiver</code> </label><div>Receiver (value of <code data-lang=\"fancy\">self</code>) when calling the <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code>.</div></div></div>\n\n", arg:["receiver"], lines:[71, 71], file:"lib/rbx/block.fy"}, ":&&":{doc:"<p>Short-circuiting &amp;&amp; (boolean AND).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["other_block"], lines:[80, 80], file:"lib/block.fy"}, "unless:":{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:[109, 109], file:"lib/block.fy"}, "while_false:":{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"], lines:[29, 29], 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:[121, 121], file:"lib/block.fy"}, "receiver:":{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:[47, 47], file:"lib/rbx/block.fy"}}}, "Float":{methods:{}, 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:{}}, "Fancy MessageSink":{methods:{}, ancestors:["Fancy MessageSink", "BasicObject", "Object", "Kernel"], doc:"<p>A MessageSink just swallows all messages that are sent to it.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"unknown_message:with_params:":{doc:"<p><code data-lang=\"fancy\">m</code> Message sent to <code data-lang=\"fancy\">self</code>.\n<code data-lang=\"fancy\">p</code> <code data-lang=\"fancy\" data-class-ref=\"Array\" class=\"class-ref selectable\">Array</code> of parameters sent along with <code data-lang=\"fancy\">m</code>.</p>\n\n<p>Catches all messages and arguments and simply always returns <code data-lang=\"fancy\">self</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>.</div></div></div>\n\n", arg:["m", "p"], lines:[16, 16], file:"lib/message_sink.fy"}}}, "FalseClass":{methods:{}, 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":{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:[62, 62], file:"lib/false_class.fy"}, "if_true:":{doc:"<p>Returns <code data-lang=\"fancy\">nil</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["block"], lines:[14, 14], file:"lib/false_class.fy"}, "if_true:else:":{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], file:"lib/false_class.fy"}, ":to_a":{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:[52, 52], file:"lib/false_class.fy"}, ":to_s":{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:[45, 45], file:"lib/false_class.fy"}, ":false?":{doc:"<p>Returns <code data-lang=\"fancy\">true</code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[40, 40], file:"lib/false_class.fy"}, ":inspect":{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:[45, 45], file:"lib/false_class.fy"}}}, "Fancy Documentation RDiscount":{methods:{"rdiscount:":{doc:"<p>Format string as HTML using RDiscount ruby gem.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["doc"], lines:[123, 123], file:"lib/documentation.fy"}}, 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:{}}, "TCPServer":{methods:{}, ancestors:["TCPServer", "Socket ListenAndAccept", "IO Socketable", "TCPSocket", "IPSocket", "BasicSocket", "IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Enumerable", "Object", "Kernel"], doc:"<p>TCP Server</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}}, "Object":{methods:{}, 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:":{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:[525, 525], file:"lib/object.fy"}, "if_false:else:":{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], file:"lib/object.fy"}, ":break":{doc:"<p>Breaks / Stops current iteration.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[433, 433], file:"lib/object.fy"}, ":to_enum":{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=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Enumerator\" class=\"class-ref selectable\">Enumerator</code> for <code data-lang=\"fancy\">self</code> using 'each: for iteration.</div></div></div>\n\n", arg:[], lines:[155, 155], file:"lib/object.fy"}, "returning:do:":{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"], lines:[348, 348], file:"lib/object.fy"}, ":to_a":{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], file:"lib/object.fy"}, "do:while:":{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:[261, 261], file:"lib/object.fy"}, "while:do:":{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:[243, 243], file:"lib/object.fy"}, "next:":{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:[425, 425], 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:[391, 391], 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"}, "get_slots:":{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"], lines:[570, 570], file:"lib/object.fy"}, ":actor":{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:[501, 501], file:"lib/object.fy"}, "loop:":{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], file:"lib/object.fy"}, ":dclone":{doc:"<p>Returns a deep clone of self using Ruby's Marshal class.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[19, 19], file:"lib/rbx/object.fy"}, "if_true:":{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], file:"lib/object.fy"}, "if_true:else:":{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], file:"lib/object.fy"}, "copy_slots:from:":{doc:"<p>Copies slots from <code data-lang=\"fancy\">object</code> to <code data-lang=\"fancy\">self</code>.</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=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Enumerable\" class=\"class-ref selectable\">Enumerable</code> of slot names to copy from <code data-lang=\"fancy\">object</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">object</code> </label><div>Target <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> to copy slots from.</div></div></div>\n\n", arg:["slots", "object"], lines:[549, 549], file:"lib/object.fy"}, "do:":{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"], lines:[606, 606], file:"lib/object.fy"}, "send_async:":{doc:"<p>Forward to message send_async:with_params:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["message"], lines:[516, 516], file:"lib/object.fy"}, "receive_message:with_params:":{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:[112, 112], file:"lib/rbx/object.fy"}, ":next":{doc:"<p>Skip to the next iteration.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[415, 415], file:"lib/object.fy"}, ":nil?":{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], file:"lib/object.fy"}, "receive_message:":{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:[101, 101], file:"lib/rbx/object.fy"}, ":yield":{doc:"<p>Same as Fiber##yield.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[399, 399], file:"lib/object.fy"}, "set_slot:value:":{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:[39, 39], file:"lib/rbx/object.fy"}, ":true?":{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"}, "sleep:":{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"], lines:[637, 637], 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], file:"lib/object.fy"}, "require:":{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:[14, 14], file:"lib/rbx/object.fy"}, "responds_to?:":{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:[132, 132], file:"lib/rbx/object.fy"}, "yield:":{doc:"<p>Same as Fiber##yield:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["values"], lines:[407, 407], file:"lib/object.fy"}, ":to_s":{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:[28, 28], file:"lib/rbx/object.fy"}, "define_singleton_method:with:":{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:[60, 60], file:"lib/rbx/object.fy"}, "if:then:":{doc:"<p>Same as:\ncond if_true: block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond", "block"], lines:[225, 225], file:"lib/object.fy"}, ":print":{doc:"<p>Same as:\n<em>stdout</em> print: self</p>\n\n<p>Prints <code data-lang=\"fancy\">self</code> on <code data-lang=\"fancy\"><em>stdout</em></code>.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[48, 48], file:"lib/object.fy"}, "until:do:":{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:[252, 252], file:"lib/object.fy"}, "documentation:":{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:[319, 319], file:"lib/object.fy"}, "is_a?:":{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:[82, 82], file:"lib/rbx/object.fy"}, ":die!":{doc:"<p>Tells an object to let its actor to die (quit running).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[491, 491], file:"lib/object.fy"}, "do:until:":{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:[271, 271], file:"lib/object.fy"}, "tap:":{doc:"<p>Calls a given <code data-lang=\"fancy\" data-class-ref=\"Block\" class=\"class-ref selectable\">Block</code> with <code data-lang=\"fancy\">self</code> before returning <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><code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:["block"], lines:[618, 618], file:"lib/object.fy"}, "xor:":{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"], lines:[214, 214], 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:[581, 581], file:"lib/object.fy"}, "copy_slots_from:":{doc:"<p>Copies all slots from <code data-lang=\"fancy\">object</code> to <code data-lang=\"fancy\">self</code>.</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">object</code> </label><div><code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> to copy slots from.</div></div></div>\n\n", arg:["object"], lines:[562, 562], file:"lib/object.fy"}, "if:then:else:":{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:[234, 234], file:"lib/object.fy"}, "if_nil:else:":{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], file:"lib/object.fy"}, ":if_responds?":{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:[], lines:[365, 365], file:"lib/object.fy"}, "unless:do:":{doc:"<p>Same as:\ncond if_true: { nil } else: block</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["cond", "block"], lines:[281, 281], file:"lib/object.fy"}, "let:be:":{doc:"<p>Forward to message let:be:in:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["var_name", "value"], lines:[640, 640], file:"lib/object.fy"}, ":documentation":{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:[309, 309], file:"lib/object.fy"}, "kind_of?:":{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:[91, 91], file:"lib/rbx/object.fy"}, "send_future:":{doc:"<p>Forward to message send_future:with_params:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["message"], lines:[504, 504], file:"lib/object.fy"}, ":println":{doc:"<p>Same as:\n<em>stdout</em> println: self</p>\n\n<p>Prints <code data-lang=\"fancy\">self</code> on <code data-lang=\"fancy\"><em>stdout</em></code>, followed by a newline.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[37, 37], file:"lib/object.fy"}, "let:be:in:":{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 write: \"/tmp/output.txt\" 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"], lines:[657, 657], file:"lib/object.fy"}, "if_nil:":{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], file:"lib/object.fy"}, "undefine_singleton_method:":{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:[70, 70], file:"lib/rbx/object.fy"}, "to_enum:":{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=\"Fancy\" class=\"class-ref selectable\">Fancy</code> <code data-lang=\"fancy\" data-class-ref=\"Fancy Enumerator\" class=\"class-ref selectable\">Enumerator</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], file:"lib/object.fy"}, ":identity":{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:[329, 329], file:"lib/object.fy"}, "backtick:":{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:[380, 380], file:"lib/object.fy"}, "break:":{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:[443, 443], file:"lib/object.fy"}, "unless:do:else:":{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:[290, 290], file:"lib/object.fy"}, "extend:":{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:[141, 141], file:"lib/rbx/object.fy"}, "with_output_to:do:":{doc:"<p>Opens <code data-lang=\"fancy\">filename</code> and rebinds <code>*stdout*</code> to it within <code data-lang=\"fancy\">block</code>.</p>\n\n<p>Example:</p>\n\n<pre><code> with_output_to: \"/tmp/hello_world.txt\" do: {\n \"hello\" println\n \"world\" println\n }\n</code></pre>\n\n<p>This writes</p>\n\n<pre><code> hello\n world\n</code></pre>\n\n<p>to /tmp/hello_world.txt</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 executed with *stdout* being bound to the output file.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">filename</code> </label><div>Filename of file to write to.</div></div></div>\n\n", arg:["filename", "block"], lines:[694, 694], file:"lib/object.fy"}, "send_future:with_params:":{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:[513, 513], file:"lib/object.fy"}, ":false?":{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], 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], file:"lib/object.fy"}, "synchronized:":{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:[537, 537], file:"lib/object.fy"}, "if_false:":{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], file:"lib/object.fy"}, ":to_i":{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], file:"lib/object.fy"}, "and:":{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], file:"lib/object.fy"}, "or:":{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], file:"lib/object.fy"}, "get_slot:":{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:[50, 50], file:"lib/rbx/object.fy"}, "method:":{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:[300, 300], file:"lib/object.fy"}, ":slots":{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 slot names that <code data-lang=\"fancy\">self</code> has.</div></div></div>\n\n", arg:[], lines:[627, 627], file:"lib/object.fy"}}}, "Fancy FDoc":{methods:{":main":{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], file:"lib/fdoc.fy"}}, 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:{}}, "System":{methods:{":abort":{doc:"<p>Exits the current running Fancy process (application) with an exit\ncode of 1 (indicating failure).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[9, 9], file:"lib/system.fy"}, "pipe:do:":{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:[65, 65], file:"lib/rbx/system.fy"}, "abort:":{doc:"<p>Prints a given message on <code data-lang=\"fancy\"><em>stderr</em></code> and then exits with an exit\ncode of 1 (indicating failure).</p>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">message</code> </label><div>Error message to be printed before aborting programm execution.</div></div></div>\n\n", arg:["message"], lines:[19, 19], file:"lib/system.fy"}, "do:":{doc:"<p>Runs the given string as a system() command.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["command_str"], lines:[31, 31], file:"lib/rbx/system.fy"}, "piperead:":{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:[40, 40], file:"lib/rbx/system.fy"}, "pipe:":{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:[52, 52], file:"lib/rbx/system.fy"}, "exit:":{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"], lines:[23, 23], file:"lib/rbx/system.fy"}, ":exit":{doc:"<p>Exit the running Fancy process.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[13, 13], file:"lib/rbx/system.fy"}}, ancestors:["System", "Object", "Kernel"], doc:"<p>System class. Holds system-wide relevant methods.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{}}, "Fiber":{methods:{"new:":{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], file:"lib/rbx/fiber.fy"}, "yield:":{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], file:"lib/rbx/fiber.fy"}}, 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:":{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], file:"lib/rbx/fiber.fy"}}}, "Integer":{methods:{}, 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:":{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:[18, 18], file:"lib/integer.fy"}, "times:":{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:[19, 19], file:"lib/rbx/integer.fy"}}}, "UnboundMethod":{methods:{}, 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:{}}, "Time":{methods:{}, 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:{}}, "Fancy FDoc Formatter":{methods:{"create_class_references:":{doc:"<p>Creates class references for Fancy class names.\nA 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<pre><code> Foo::Bar\n</code></pre>\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<pre><code> Foo::Bar#baz\n</code></pre>\n\n<p>Class methods should be written:</p>\n\n<pre><code> Foo::Bar.baz\n</code></pre>\n\n<p>Some examples:\nA simple class reference:\n<code data-lang=\"fancy\" data-class-ref=\"Fancy\" class=\"class-ref selectable\">Fancy</code></p>\n\n<p>Nested class reference:\n<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:\n<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)\n<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:\n<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:\n<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:[243, 243], file:"lib/fdoc.fy"}}, 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:{}}, "StandardError":{methods:{}, 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:":{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:[31, 31], file:"lib/rbx/exception.fy"}, ":initialize":{doc:"<p>Creates a new Exception with an empty message.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[21, 21], file:"lib/rbx/exception.fy"}, ":raise!":{doc:"<p>Raises (throws) an Exception to be caught somewhere up the\ncallstack.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[40, 40], file:"lib/rbx/exception.fy"}}}, "Fancy Package Installer":{methods:{}, 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:{"download_url:":{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], file:"lib/package/installer.fy"}, "initialize:":{doc:"<p>Forward to message initialize:version:install_path:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@package_name"], lines:[44, 44], file:"lib/package/installer.fy"}, "rename_dir:":{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], file:"lib/package/installer.fy"}, ":latest_tag":{doc:"<p>Returns the latest tag (sorted alphabetically).</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[82, 82], file:"lib/package/installer.fy"}, ":run":{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], file:"lib/package/installer.fy"}, ":load_fancypack":{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], file:"lib/package/installer.fy"}, "initialize:version:":{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], file:"lib/package/installer.fy"}, ":tags":{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], file:"lib/package/installer.fy"}, "initialize:version:install_path:":{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], file:"lib/package/installer.fy"}, "has_version?:":{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], file:"lib/package/installer.fy"}, "download_tgz:":{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], file:"lib/package/installer.fy"}}}, "Hash":{methods:{}, ancestors:["Hash", "Fancy Enumerable", "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:":{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:[74, 74], file:"lib/hash.fy"}, "delete:":{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], file:"lib/rbx/hash.fy"}, "each_key:":{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:[62, 62], file:"lib/hash.fy"}, ":to_object":{doc:"<p>Creates and returns a new <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> with slot names and values based on keys and values in <code data-lang=\"fancy\">self</code>.</p>\n\n<p>Example:</p>\n\n<pre><code> o = &lt;['name =&gt; \"Christopher Bertels\", 'interest =&gt; \"programming languages\"]&gt; to_object\n o name # =&gt; \"Christopher Bertels\"\n o interest # =&gt; 42\n</code></pre>\n\n<div class=\"doctags\"><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>New <code data-lang=\"fancy\" data-class-ref=\"Object\" class=\"class-ref selectable\">Object</code> with slots defined by keys and values in <code data-lang=\"fancy\">self</code>.</div></div></div>\n\n", arg:[], lines:[110, 110], file:"lib/hash.fy"}, "each:":{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:[51, 51], file:"lib/hash.fy"}, "at:else:":{doc:"<p>Returns the value for a given key.\nIf the key is not found, calls <code data-lang=\"fancy\">else_block</code> and returns the value it yields.</p>\n\n<div class=\"doctags\"><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 if <code data-lang=\"fancy\">key</code> is not found.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">key</code> </label><div>Key of the value to get.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">return</code> </label><div>Value for <code data-lang=\"fancy\">key</code> or value of calling <code data-lang=\"fancy\">else_block</code>, if <code data-lang=\"fancy\">key</code> is not found.</div></div></div>\n\n", arg:["key", "else_block"], lines:[33, 33], file:"lib/hash.fy"}, "includes?:":{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], file:"lib/rbx/hash.fy"}, "values_at:":{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"], lines:[140, 140], file:"lib/hash.fy"}, ":to_a":{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:[86, 86], file:"lib/hash.fy"}, "fetch:else:":{doc:"<p>Example:</p>\n\n<pre><code> &lt;['foo =&gt; 'bar]&gt; fetch: 'foo else: { 42 } # =&gt; 'bar\n &lt;['foo =&gt; 'bar]&gt; fetch: 'unknown else: { 42 } # =&gt; 42\n &lt;['nil =&gt; nil]&gt; fetch: 'nil else: { 'not_found } # =&gt; nil\n</code></pre>\n\n<div class=\"doctags\"><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> that gets called if <code data-lang=\"fancy\">key</code> not in <code data-lang=\"fancy\">self</code>.</div></div><div class=\"doctag\"><label> <code data-lang=\"fancy\">key</code> </label><div>Key of value to get.</div></div></div>\n\n", arg:["key", "else_block"], lines:[159, 159], file:"lib/hash.fy"}, ":to_s":{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:[95, 95], 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], file:"lib/hash.fy"}}}, "IO":{methods:{}, ancestors:["IO", "IOMixin", "Object", "Unmarshalable", "File Constants", "Enumerable", "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:{}}, "Fancy Package Dependency":{methods:{}, 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:":{doc:"<p>Forward to message initialize:version:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["@name"], lines:[11, 11], file:"lib/package/dependency.fy"}}}, "Symbol":{methods:{}, 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":{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:[], lines:[37, 37], file:"lib/symbol.fy"}, "call:":{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"], lines:[22, 22], file:"lib/symbol.fy"}, ":defined?":{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], file:"lib/rbx/symbol.fy"}}}, "HTML":{methods:{}, ancestors:["HTML", "Object", "Kernel"], doc:"<p>HTML generator class.</p>\n\n<p>Example:</p>\n\n<pre><code> require: \"html\"\n html = HTML new: @{\n html: @{\n head: @{ title: \"My Fancy Website\" }\n body: @{\n div: { id: \\\342\200\235main\\\342\200\235 } with: \"Hello, Fancy World!\"\n }\n }\n } . to_s\n\n # html is now:\n \"\"\"\n &lt;html&gt;\n &lt;head&gt;\n &lt;title&gt;\n My Fancy Website\n &lt;/title&gt;\n &lt;/head&gt;\n &lt;body&gt;\n &lt;div id=\"main\"&gt;\n Hello, Fancy World!\n &lt;/div&gt;\n &lt;/body&gt;\n &lt;/html&gt;\n \"\"\"\n</code></pre>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"open_tag:":{doc:"<p>Forward to message open_tag:attrs:indent:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["name"], lines:[44, 44], file:"lib/html.fy"}, "html_block:body:":{doc:"<p>Forward to message html_block:body:attrs:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["tag", "body"], lines:[71, 71], file:"lib/html.fy"}, "open_tag:attrs:":{doc:"<p>Forward to message open_tag:attrs:indent:</p>\n\n<div class=\"doctags\"></div>\n\n", arg:["name", "attrs"], lines:[44, 44], file:"lib/html.fy"}}}, "Fancy StopIteration":{methods:{}, 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:</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", instance_methods:{":result":{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], file:"lib/iteration.fy"}}}, "Fancy NextIteration":{methods:{}, 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:{}}, "MethodMixin":{methods:{}, 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?":{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], file:"lib/rbx/method.fy"}, "documentation:":{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], file:"lib/rbx/method.fy"}, ":public?":{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], file:"lib/rbx/method.fy"}, ":documentation":{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], file:"lib/rbx/method.fy"}, ":tests":{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], file:"lib/rbx/method.fy"}, ":visibility":{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], file:"lib/rbx/method.fy"}, ":protected?":{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], file:"lib/rbx/method.fy"}}}, "Class":{methods:{"superclass:body:":{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:[41, 41], file:"lib/rbx/class.fy"}}, 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:":{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:[55, 55], file:"lib/rbx/class.fy"}, "alias_method:for:":{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], file:"lib/class.fy"}, "write_slot:":{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], file:"lib/class.fy"}, "define_slot_reader:":{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"], lines:[25, 25], file:"lib/class.fy"}, "subclass:":{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:[109, 109], file:"lib/rbx/class.fy"}, "instance_method:":{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:[131, 131], file:"lib/rbx/class.fy"}, "read_write_slots:":{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], file:"lib/class.fy"}, ":nested_classes":{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:[119, 119], file:"lib/rbx/class.fy"}, "define_class_method:with:":{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:[89, 89], file:"lib/rbx/class.fy"}, ":new":{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:[12, 12], file:"lib/rbx/class.fy"}, "alias_method:for_ruby:":{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:[147, 147], file:"lib/rbx/class.fy"}, "subclass?:":{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], file:"lib/class.fy"}, ":initialize":{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:[48, 48], file:"lib/rbx/class.fy"}, "private:":{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:[168, 168], file:"lib/rbx/class.fy"}, "protected:":{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:[180, 180], file:"lib/rbx/class.fy"}, "undefine_method:":{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:[77, 77], file:"lib/rbx/class.fy"}, "undefine_class_method:":{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:[99, 99], file:"lib/rbx/class.fy"}, "public:":{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:[156, 156], file:"lib/rbx/class.fy"}, ":forwards_unary_ruby_methods":{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:[190, 190], file:"lib/rbx/class.fy"}, "write_slots:":{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], file:"lib/class.fy"}, "read_slot:":{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], file:"lib/class.fy"}, "define_slot_writer:":{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"], lines:[41, 41], file:"lib/class.fy"}, "read_slots:":{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], file:"lib/class.fy"}, "new:":{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:[26, 26], file:"lib/rbx/class.fy"}, "read_write_slot:":{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], file:"lib/class.fy"}, "define_method:with:":{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:[67, 67], file:"lib/rbx/class.fy"}, "alias_method_rbx:for:":{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:[140, 140], file:"lib/rbx/class.fy"}}}, "Stack":{methods:{}, ancestors:["Stack", "Object", "Kernel"], doc:"<p>A simple Stack container class.</p>\n\n<div class=\"doctags\"></div>\n\n", instance_methods:{"initialize:":{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], file:"lib/stack.fy"}, ":initialize":{doc:"<p>Initializes a new Stack.</p>\n\n<div class=\"doctags\"></div>\n\n", arg:[], lines:[11, 11], file:"lib/stack.fy"}, ":size":{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], file:"lib/stack.fy"}, ":top":{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], file:"lib/stack.fy"}, "each:":{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], file:"lib/stack.fy"}, "push:":{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], file:"lib/stack.fy"}, ":pop":{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], file:"lib/stack.fy"}, ":empty?":{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], file:"lib/stack.fy"}}}}}); })();
@@ -2,6 +2,7 @@
2
2
 
3
3
  ### Class definitions (including nested classes that work like modules / namespaces) ###
4
4
 
5
+ ```fancy
5
6
  class Person {
6
7
  # Person constructor method.
7
8
  # @name, @age & @friends instance variables get auto-assigned
@@ -24,9 +25,11 @@
24
25
  }
25
26
  # ...
26
27
  }
28
+ ```
27
29
 
28
30
  ### Instance & class method definitions ###
29
31
 
32
+ ```fancy
30
33
  class Foo {
31
34
  def instance_method: an_argument {
32
35
  """
@@ -46,6 +49,7 @@
46
49
  @@a_class_var = another_argument another_method
47
50
  }
48
51
  }
52
+ ```
49
53
 
50
54
  ### Literal syntax for: ###
51
55
  * Symbols:
@@ -92,9 +96,11 @@
92
96
 
93
97
  ### Method & Operator calls ###
94
98
 
99
+ ```fancy
95
100
  object a_simple_message # unary (0-argument) message to object
96
101
  object && another_object # operator (binary) message to object
97
102
  object give: "foo" to: "bar" # keyword message to object with arguments "foo" and "bar"
103
+ ```
98
104
 
99
105
  ### Instance & class variable access ###
100
106
  * Instance variables: `@name`, `@age`
@@ -102,15 +108,18 @@
102
108
 
103
109
  ### Dynamically scoped variables ###
104
110
 
111
+ ```fancy
105
112
  File open: "/tmp/foo.txt" modes: ['write] with: |f| {
106
113
  let: '*stdout* be: f in: {
107
114
  "foo" println # writes to /tmp/foo.txt instead of normal STDOUT (console)
108
115
  }
109
116
  }
110
117
  # *stdout* is back to old value here.
118
+ ```
111
119
 
112
120
  ### Dynamic getter and setter method definitions (similar to Ruby's attr_acessor) ###
113
121
 
122
+ ```fancy
114
123
  class Person {
115
124
  # getter methods:
116
125
  read_slots: ['name, 'age]
@@ -121,9 +130,11 @@
121
130
  # getter & setter methods
122
131
  read_write_slots: ['location, 'friends, 'money]
123
132
  }
133
+ ```
124
134
 
125
135
  ### Loops ###
126
136
 
137
+ ```fancy
127
138
  { x < y } while_true: {
128
139
  x println
129
140
  x = x + 1
@@ -155,9 +166,11 @@
155
166
  { next } if: (i == 5)
156
167
  # do something else here
157
168
  }
169
+ ```
158
170
 
159
171
  ### Support for closures via Blocks ###
160
172
 
173
+ ```fancy
161
174
  x = 0
162
175
  10 times: {
163
176
  x println
@@ -169,6 +182,7 @@
169
182
  b = |x y| { x + y println }
170
183
  b call: [2, 3] # prints 5
171
184
  b(2,3) # same as above
185
+ ```
172
186
 
173
187
  ### Local & non-local returns from Blocks & Methods ###
174
188
 
@@ -188,14 +202,17 @@
188
202
 
189
203
  ### Class-Mixins (including methods of one class into another) ###
190
204
 
205
+ ```fancy
191
206
  class MyClass {
192
207
  # include all methods of MyMixinClass into MyClass
193
208
  include: MyMixinClass
194
209
  # ...
195
210
  }
211
+ ```
196
212
 
197
213
  ### Exception handling (try, catch, finally & retry) ###
198
214
 
215
+ ```fancy
199
216
  try {
200
217
  File read: "/etc/passwd" . println
201
218
  } catch IOError => e {
@@ -214,9 +231,11 @@
214
231
  } finally {
215
232
  "it worked!" println # this gets run at the end
216
233
  }
234
+ ```
217
235
 
218
236
  ### Simple pattern matching (work-in-progress) ###
219
237
 
238
+ ```fancy
220
239
  def match_it: a_string {
221
240
  match a_string {
222
241
  case /^hello, (\S+)!$/ -> |_, name| # _ gets bound to matcher object (not used)
@@ -224,9 +243,11 @@
224
243
  case _ -> "No match, sorry." println
225
244
  }
226
245
  }
246
+ ```
227
247
 
228
248
  ### Single and multiple assignment. ###
229
249
 
250
+ ```fancy
230
251
  x = "foo"
231
252
  x, y = "Hello", "World"
232
253
  x, y = y, x # swap x and y
@@ -235,9 +256,11 @@
235
256
  # from:to: message
236
257
  a, b, *rest = [1,2,3,4,5,6] # => a = 1, b = 2, rest = [3,4,5,6]
237
258
  *a, *b = [1,2,3] # => a = [1,2,3], b = [2,3]
259
+ ```
238
260
 
239
261
  ### Calling, using and extending arbitrary Ruby classes and methods (including C-extensions). ###
240
262
 
263
+ ```fancy
241
264
  require("open3") # require ruby's open3 library
242
265
  require: "fancy_irc" # require fancy's fancy_irc library
243
266
  require("activerecord")
@@ -248,6 +271,7 @@
248
271
  "Welcome to Fancy's extension capabilities!" println
249
272
  }
250
273
  }
274
+ ```
251
275
 
252
276
  ### Standard library ###
253
277
  * Including: