Class: Lisp::Atom

Inherits:
Object show all
Defined in:
lib/rubylisp/atom.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#valueObject (readonly)

Returns the value of attribute value.



5
6
7
# File 'lib/rubylisp/atom.rb', line 5

def value
  @value
end

Instance Method Details

#all?(&block) ⇒ Boolean

Returns:



127
128
129
# File 'lib/rubylisp/atom.rb', line 127

def all?(&block)
  false
end

#apply_to(args, env) ⇒ Object



123
124
125
# File 'lib/rubylisp/atom.rb', line 123

def apply_to(args, env)
  nil
end

#carObject



139
140
141
# File 'lib/rubylisp/atom.rb', line 139

def car
  nil
end

#cdrObject



143
144
145
# File 'lib/rubylisp/atom.rb', line 143

def cdr
  nil
end

#character?Boolean

Returns:



19
20
21
# File 'lib/rubylisp/atom.rb', line 19

def character?
  false
end

#class?Boolean

Returns:



71
72
73
# File 'lib/rubylisp/atom.rb', line 71

def class?
  false
end

#copyObject



99
100
101
# File 'lib/rubylisp/atom.rb', line 99

def copy
  self.class.new(self.value)
end

#docObject



166
167
168
# File 'lib/rubylisp/atom.rb', line 166

def doc
  nil
end

#environment?Boolean

Returns:



91
92
93
# File 'lib/rubylisp/atom.rb', line 91

def environment?
  false
end

#eof_object?Boolean

Returns:



87
88
89
# File 'lib/rubylisp/atom.rb', line 87

def eof_object?
  false
end

#eq?(sexpr) ⇒ Boolean

Returns:



107
108
109
# File 'lib/rubylisp/atom.rb', line 107

def eq?(sexpr)
  eqv?(sexpr)
end

#equal?(sexpr) ⇒ Boolean

Returns:



111
112
113
# File 'lib/rubylisp/atom.rb', line 111

def equal?(sexpr)
  eq?(sexpr)
end

#eqv?(sexpr) ⇒ Boolean

Returns:



103
104
105
# File 'lib/rubylisp/atom.rb', line 103

def eqv?(sexpr)
  self == sexpr
end

#evaluate(env) ⇒ Object



119
120
121
# File 'lib/rubylisp/atom.rb', line 119

def evaluate(env)
  self
end

#false?Boolean

Returns:



135
136
137
# File 'lib/rubylisp/atom.rb', line 135

def false?
  false
end

#frame?Boolean

Returns:



75
76
77
# File 'lib/rubylisp/atom.rb', line 75

def frame?
  false
end

#function?Boolean

Returns:



59
60
61
# File 'lib/rubylisp/atom.rb', line 59

def function?
  false
end

#lengthObject



95
96
97
# File 'lib/rubylisp/atom.rb', line 95

def length
  1
end

#lisp_object?Boolean

Returns:



11
12
13
# File 'lib/rubylisp/atom.rb', line 11

def lisp_object?
  true
end

#list?Boolean

Returns:



47
48
49
# File 'lib/rubylisp/atom.rb', line 47

def list?
  false
end

#macro?Boolean

Returns:



63
64
65
# File 'lib/rubylisp/atom.rb', line 63

def macro?
  false
end

#negative?Boolean

Returns:



35
36
37
# File 'lib/rubylisp/atom.rb', line 35

def negative?
  false
end

#number?Boolean

Returns:



23
24
25
# File 'lib/rubylisp/atom.rb', line 23

def number?
  false
end

#object?Boolean

Returns:



67
68
69
# File 'lib/rubylisp/atom.rb', line 67

def object?
  false
end

#pair?Boolean

Returns:



43
44
45
# File 'lib/rubylisp/atom.rb', line 43

def pair?
  false
end

#port?Boolean

Returns:



83
84
85
# File 'lib/rubylisp/atom.rb', line 83

def port?
  false
end

#positive?Boolean

Returns:



27
28
29
# File 'lib/rubylisp/atom.rb', line 27

def positive?
  false
end

#primitive?Boolean

Returns:



51
52
53
# File 'lib/rubylisp/atom.rb', line 51

def primitive?
  false
end


159
160
161
# File 'lib/rubylisp/atom.rb', line 159

def print_string
  self.to_s
end

#quotedObject



147
148
149
# File 'lib/rubylisp/atom.rb', line 147

def quoted
  Lisp::ConsCell.cons(Symbol.named("quote"), self)
end

#set!(v) ⇒ Object



151
152
# File 'lib/rubylisp/atom.rb', line 151

def set!(v)
end

#set_location(type, package, file, start, length) ⇒ Object



7
8
# File 'lib/rubylisp/atom.rb', line 7

def set_location(type, package, file, start, length)
end

#special?Boolean

Returns:



55
56
57
# File 'lib/rubylisp/atom.rb', line 55

def special?
  false
end

#string?Boolean

Returns:



15
16
17
# File 'lib/rubylisp/atom.rb', line 15

def string?
  false
end

#symbol?Boolean

Returns:



39
40
41
# File 'lib/rubylisp/atom.rb', line 39

def symbol?
  false
end

#to_sObject



154
155
156
# File 'lib/rubylisp/atom.rb', line 154

def to_s
  @value.to_s
end

#true?Boolean

Returns:



131
132
133
# File 'lib/rubylisp/atom.rb', line 131

def true?
  true
end

#typeObject



115
116
117
# File 'lib/rubylisp/atom.rb', line 115

def type
  :unknown
end

#vector?Boolean

Returns:



79
80
81
# File 'lib/rubylisp/atom.rb', line 79

def vector?
  false
end

#zero?Boolean

Returns:



31
32
33
# File 'lib/rubylisp/atom.rb', line 31

def zero?
  false
end