feat: replace new keyword with this constructor syntax and ClassName.new() calls across core library and docs

Replace all uses of the `new` reserved word with explicit `this new()` constructor definitions and `ClassName.new()` instantiation calls in builtin/core.wren. Update all documentation files (classes.markdown, fiber.markdown, fn.markdown, sequence.markdown, error-handling.markdown, expressions.markdown, fibers.markdown, functions.markdown) to reflect the new constructor syntax, removing `new` keyword examples and replacing them with `ClassName.new()` patterns and `this new()` definitions.
This commit is contained in:
Bob Nystrom
2015-07-10 16:18:22 +00:00
parent 121d39cb42
commit e19ff59cce
221 changed files with 864 additions and 654 deletions
+8 -8
View File
@@ -3,13 +3,13 @@
A lightweight coroutine. [Here](../fibers.html) is a gentle introduction.
### new **Fiber**(function)
### Fiber.**new**(function)
Creates a new fiber that executes `function` in a separate coroutine when the
fiber is run. Does not immediately start running the fiber.
:::dart
var fiber = new Fiber {
var fiber = Fiber.new {
IO.print("I won't get printed")
}
@@ -25,7 +25,7 @@ Pauses the current fiber and transfers control to the parent fiber. "Parent"
here means the last fiber that was started using `call` and not `run`.
:::dart
var fiber = new Fiber {
var fiber = Fiber.new {
IO.print("Before yield")
Fiber.yield()
IO.print("After yield")
@@ -41,7 +41,7 @@ If a yielded fiber is resumed by calling `call()` or `run()` with an argument,
`yield()` returns that value.
:::dart
var fiber = new Fiber {
var fiber = Fiber.new {
IO.print(Fiber.yield()) // "value"
}
@@ -65,7 +65,7 @@ Similar to `Fiber.yield` but provides a value to return to the parent fiber's
`call`.
:::dart
var fiber = new Fiber {
var fiber = Fiber.new {
Fiber.yield("value")
}
@@ -78,7 +78,7 @@ Similar to `Fiber.yield` but provides a value to return to the parent fiber's
Starts or resumes the fiber if it is in a paused state.
:::dart
var fiber = new Fiber {
var fiber = Fiber.new {
IO.print("Fiber called")
Fiber.yield()
IO.print("Fiber called again")
@@ -94,7 +94,7 @@ If the called fiber is resuming from a yield, the `yield()` method returns
`null` in the called fiber.
:::dart
var fiber = new Fiber {
var fiber = Fiber.new {
IO.print(Fiber.yield())
}
@@ -107,7 +107,7 @@ Invokes the fiber or resumes the fiber if it is in a paused state and sets
`value` as the returned value of the fiber's call to `yield`.
:::dart
var fiber = new Fiber {
var fiber = Fiber.new {
IO.print(Fiber.yield())
}
+5 -5
View File
@@ -4,7 +4,7 @@
A first class function—an object that wraps an executable chunk of code.
[Here](../functions.html) is a friendly introduction.
### new **Fn**(function)
### Fn.**new**(function)
Creates a new function from... `function`. Of course, `function` is already a
function, so this really just returns the argument. It exists mainly to let you
@@ -12,7 +12,7 @@ create a "bare" function when you don't want to immediately pass it as a [block
argument](../functions.html#block-arguments) to some other method.
:::dart
var fn = new Fn {
var fn = Fn.new {
IO.print("The body")
}
@@ -25,15 +25,15 @@ It is a runtime error if `function` is not a function.
The number of arguments the function requires.
:::dart
IO.print(new Fn {}.arity) // 0.
IO.print(new Fn {|a, b, c| a }.arity) // 3.
IO.print(Fn.new {}.arity) // 0.
IO.print(Fn.new {|a, b, c| a }.arity) // 3.
### **call**(args...)
Invokes the function with the given arguments.
:::dart
var fn = new Fn { |arg|
var fn = Fn.new { |arg|
IO.print(arg)
}
+5 -5
View File
@@ -109,11 +109,11 @@ To force eager evaluation, just call `.toList` on the result.
### **reduce**(function)
Reduces the sequence down to a single value. `function` is a function that takes
two arguments, the accumulator and sequence item and returns the new accumulator
value. The accumulator is initialized from the first item in the sequence. Then,
the function is invoked on each remaining item in the sequence, iteratively
updating the accumulator.
Reduces the sequence down to a single value. `function` is a function that
takes two arguments, the accumulator and sequence item and returns the new
accumulator value. The accumulator is initialized from the first item in the
sequence. Then, the function is invoked on each remaining item in the sequence,
iteratively updating the accumulator.
It is a runtime error to call this on an empty sequence.