pry-docmore 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1,2 @@
|
|
1
|
-
The $0 global
|
1
|
+
The $0 global contains the name of the script being executed. May be assignable.
|
2
|
+
Alias: $PROGRAM_NAME
|
@@ -2,12 +2,28 @@
|
|
2
2
|
defined? self ⇒ "self"
|
3
3
|
defined? true ⇒ "true"
|
4
4
|
defined? false ⇒ "false"
|
5
|
-
|
5
|
+
defined? "asdf" ⇒ "expression"
|
6
|
+
defined? a = 3 ⇒ "assignment" # but doesn't actually set a to 3.
|
6
7
|
defined? printf ⇒ "method"
|
7
8
|
printf = 3
|
8
|
-
defined? printf ⇒ "local-variable"
|
9
|
-
defined?
|
9
|
+
defined? printf ⇒ "local-variable" # nil if there is no local or method with that name
|
10
|
+
defined? $foo ⇒ "global-variable" # nil if $foo has not been assigned to
|
11
|
+
defined? Object ⇒ "constant" # nil if there is no constant with that name
|
12
|
+
defined? super ⇒ "super" # nil if there is no super method.
|
13
|
+
defined? yield ⇒ "yield" # nil if no block was passed to this method
|
14
|
+
|
15
|
+
defined? is most often used to determine whether a constant or global variable is defined. For example ruby-1.8.7 didn't have a RUBY_ENGINE constant, so jruby was often detected using:
|
16
|
+
|
17
|
+
defined?(RUBY_ENGINE) && RUBY_ENGINE == "jruby"
|
18
|
+
|
19
|
+
Another idiomatic use is to safely call a super-method:
|
20
|
+
|
21
|
+
super if defined?(super)
|
22
|
+
|
23
|
+
It can be used to detect whether a block was passed to this method, though `block_given?` is usually preferred.
|
24
|
+
|
25
|
+
yield if defined?(yield)
|
10
26
|
|
11
|
-
|
27
|
+
Although the return value of `defined?` is a string, this is usually ignored and only the truthiness of the result considered.
|
12
28
|
|
13
|
-
|
29
|
+
Improve these docs at https://github.com/rking/pry-docmore/wiki
|
@@ -24,7 +24,8 @@ hand, classes can be instantiated, where modules cannot).
|
|
24
24
|
# Now, these work:
|
25
25
|
Y.new.foo
|
26
26
|
Z.foo
|
27
|
-
#
|
27
|
+
# "extend just calls include on the eigenclass"
|
28
|
+
# Mnemonic! INclude for INstances, Extend for sElf
|
28
29
|
|
29
30
|
For all you ever wanted to know about constant lookup, see:
|
30
31
|
http://cirw.in/blog/constant-lookup
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pry-docmore
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-01-08 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: pry
|