Class: NilClass

Inherits:
Object show all
Includes:
Enumerable, Inform::NilClassObjectHelpers, Inform::NilClassSetHelpers
Defined in:
lib/story_teller/mixins.rb,
lib/story_teller/helpers.rb,
lib/story_teller/helpers.rb

Overview

Define some built-in Inform helper methods

Instance Method Summary collapse

Methods included from Inform::NilClassObjectHelpers

#ephemeral?, #list_together, #object?

Methods included from Inform::NilClassSetHelpers

#in?

Methods included from Enumerable

#inform

Methods included from Inform::SetHelpers

#in?, #notin?

Instance Method Details

#+(other) ⇒ Object



67
68
69
70
71
72
73
74
# File 'lib/story_teller/mixins.rb', line 67

def +(other)
  case other
  when String then format(JoinedTemplate, str: self.to_s, other: other.to_s)
  when Integer then 0 + other
  when Enumerable then [] + other
  else format(JoinedTemplate, str: self.to_s, other: other.to_s)
  end
end

#-(other) ⇒ Object



76
77
78
79
80
81
82
83
# File 'lib/story_teller/mixins.rb', line 76

def -(other)
  case other
  when String then self.to_s.delete other
  when Integer then 0 - other
  when Enumerable then [] - other
  else self.to_s.delete other
  end
end

#<(other, default = false) ⇒ Object



101
102
103
104
105
106
107
# File 'lib/story_teller/mixins.rb', line 101

def <(other, default = false)
  other > 0
#   return default unless other.respond_to? __method__
#   0.send(__method__, other)
rescue StandardError => _e
  default
end

#<=(other, default = false) ⇒ Object



109
110
111
112
113
114
115
# File 'lib/story_teller/mixins.rb', line 109

def <=(other, default = false)
  other >= 0
#   return default unless other.respond_to? __method__
#   0.send(__method__, other)
rescue StandardError => _e
  default
end

#>(other, default = false) ⇒ Object



85
86
87
88
89
90
91
# File 'lib/story_teller/mixins.rb', line 85

def >(other, default = false)
  other < 0
#   return default unless other.respond_to? __method__
#   0.send(__method__, other)
rescue StandardError => _e
  default
end

#>=(other, default = false) ⇒ Object



93
94
95
96
97
98
99
# File 'lib/story_teller/mixins.rb', line 93

def >=(other, default = false)
  other <= 0
#   return default unless other.respond_to? __method__
#   0.send(__method__, other)
rescue StandardError => _e
  default
end

#[](_key) ⇒ Object

Incompatible with RubyUnits::Unit#to_base def *(other)

0 * other
return self unless other.respond_to? __method__
0.send(__method__, other) rescue self

end



136
137
138
# File 'lib/story_teller/mixins.rb', line 136

def [](_key)
  self
end

#[]=(_key, _value) ⇒ Object



140
141
142
# File 'lib/story_teller/mixins.rb', line 140

def []=(_key, _value)
  self
end

#each(*_args, &_block) ⇒ Object



171
172
173
# File 'lib/story_teller/mixins.rb', line 171

def each(*_args, &_block)
  return # Don't do anything, I'm nil
end

#empty?Boolean

Returns:

  • (Boolean)


165
166
167
# File 'lib/story_teller/mixins.rb', line 165

def empty?
  true
end

#join(s) ⇒ Object



175
176
177
# File 'lib/story_teller/mixins.rb', line 175

def join(s)
  [].join(s)
end

#refreshObject



179
180
181
# File 'lib/story_teller/mixins.rb', line 179

def refresh
  self
end

#to_aryObject



144
145
146
# File 'lib/story_teller/mixins.rb', line 144

def to_ary
  []
end

#to_fObject



152
153
154
# File 'lib/story_teller/mixins.rb', line 152

def to_f
  0.0
end

#to_iObject



148
149
150
# File 'lib/story_teller/mixins.rb', line 148

def to_i
  0
end

#to_strObject



156
157
158
# File 'lib/story_teller/mixins.rb', line 156

def to_str
  self.to_s
end

#to_symObject Also known as: intern



160
161
162
# File 'lib/story_teller/mixins.rb', line 160

def to_sym
  self
end