Class: ZOMG::IDL::Visitors::Sexp

Inherits:
Object
  • Object
show all
Defined in:
lib/zomg/idl/visitors/sexp.rb

Instance Method Summary collapse

Instance Method Details

#accept(target) ⇒ Object



268
269
270
# File 'lib/zomg/idl/visitors/sexp.rb', line 268

def accept(target)
  target.accept(self)
end

#visit_Any(o) ⇒ Object



176
177
178
# File 'lib/zomg/idl/visitors/sexp.rb', line 176

def visit_Any(o)
  :any
end

#visit_ArrayDeclarator(o) ⇒ Object



44
45
46
# File 'lib/zomg/idl/visitors/sexp.rb', line 44

def visit_ArrayDeclarator(o)
  [:array_decl, o.name, o.children.map { |c| c.accept(self) }]
end

#visit_ArraySize(o) ⇒ Object



192
193
194
# File 'lib/zomg/idl/visitors/sexp.rb', line 192

def visit_ArraySize(o)
  [:size, o.children.accept(self)]
end

#visit_Attribute(o) ⇒ Object



92
93
94
95
96
97
98
# File 'lib/zomg/idl/visitors/sexp.rb', line 92

def visit_Attribute(o)
  [ :attribute,
    o.readonly && :readonly,
    o.type.accept(self),
    o.children.map { |c| c.accept(self) }
  ]
end

#visit_Boolean(o) ⇒ Object



244
245
246
# File 'lib/zomg/idl/visitors/sexp.rb', line 244

def visit_Boolean(o)
  :boolean
end

#visit_BooleanLiteral(o) ⇒ Object



164
165
166
# File 'lib/zomg/idl/visitors/sexp.rb', line 164

def visit_BooleanLiteral(o)
  [:boolean, o.children]
end

#visit_Case(o) ⇒ Object



25
26
27
# File 'lib/zomg/idl/visitors/sexp.rb', line 25

def visit_Case(o)
  [:case, o.children.map { |c| c.accept(self) }]
end

#visit_CaseLabel(o) ⇒ Object



29
30
31
# File 'lib/zomg/idl/visitors/sexp.rb', line 29

def visit_CaseLabel(o)
  [:label, o.children.accept(self)]
end

#visit_Char(o) ⇒ Object



196
197
198
# File 'lib/zomg/idl/visitors/sexp.rb', line 196

def visit_Char(o)
  :char
end

#visit_CharacterLiteral(o) ⇒ Object



264
265
266
# File 'lib/zomg/idl/visitors/sexp.rb', line 264

def visit_CharacterLiteral(o)
  [:charlit, o.children]
end

#visit_Constant(o) ⇒ Object



52
53
54
55
56
57
# File 'lib/zomg/idl/visitors/sexp.rb', line 52

def visit_Constant(o)
  [ :const,
    o.type.accept(self),
    o.name,
    o.value.accept(self) ]
end

#visit_Context(o) ⇒ Object



108
109
110
# File 'lib/zomg/idl/visitors/sexp.rb', line 108

def visit_Context(o)
  [:context, o.children.map { |c| c.accept(self) }]
end

#visit_DefaultLabel(o) ⇒ Object



188
189
190
# File 'lib/zomg/idl/visitors/sexp.rb', line 188

def visit_DefaultLabel(o)
  [:default]
end

#visit_Double(o) ⇒ Object



240
241
242
# File 'lib/zomg/idl/visitors/sexp.rb', line 240

def visit_Double(o)
  :double
end

#visit_ElementSpec(o) ⇒ Object



33
34
35
# File 'lib/zomg/idl/visitors/sexp.rb', line 33

def visit_ElementSpec(o)
  [:element_spec, o.children.map { |c| c.accept(self) }]
end

#visit_Enum(o) ⇒ Object



17
18
19
# File 'lib/zomg/idl/visitors/sexp.rb', line 17

def visit_Enum(o)
  [:enum, o.name, o.children]
end

#visit_Exception(o) ⇒ Object



104
105
106
# File 'lib/zomg/idl/visitors/sexp.rb', line 104

def visit_Exception(o)
  [:exception, o.name, o.children.map { |c| c.accept(self) }]
end

#visit_Float(o) ⇒ Object



228
229
230
# File 'lib/zomg/idl/visitors/sexp.rb', line 228

def visit_Float(o)
  :float
end

#visit_FloatingPointLiteral(o) ⇒ Object



160
161
162
# File 'lib/zomg/idl/visitors/sexp.rb', line 160

def visit_FloatingPointLiteral(o)
  [:float, o.children]
end

#visit_ForwardDeclaration(o) ⇒ Object



156
157
158
# File 'lib/zomg/idl/visitors/sexp.rb', line 156

def visit_ForwardDeclaration(o)
  [:forward_decl, o.children]
end

#visit_In(o) ⇒ Object



168
169
170
# File 'lib/zomg/idl/visitors/sexp.rb', line 168

def visit_In(o)
  :in
end

#visit_InOut(o) ⇒ Object



180
181
182
# File 'lib/zomg/idl/visitors/sexp.rb', line 180

def visit_InOut(o)
  :in_out
end

#visit_IntegerLiteral(o) ⇒ Object



260
261
262
# File 'lib/zomg/idl/visitors/sexp.rb', line 260

def visit_IntegerLiteral(o)
  [:int, o.to_i]
end

#visit_Interface(o) ⇒ Object



59
60
61
62
63
64
# File 'lib/zomg/idl/visitors/sexp.rb', line 59

def visit_Interface(o)
  [ :interface,
    o.header.accept(self),
    o.children.map { |c| c.accept(self) }
  ]
end

#visit_InterfaceHeader(o) ⇒ Object



184
185
186
# File 'lib/zomg/idl/visitors/sexp.rb', line 184

def visit_InterfaceHeader(o)
  [:header, o.abstract, o.name, o.children.map { |c| c.accept(self) }]
end

#visit_Long(o) ⇒ Object



216
217
218
# File 'lib/zomg/idl/visitors/sexp.rb', line 216

def visit_Long(o)
  :long
end

#visit_LongLong(o) ⇒ Object



220
221
222
# File 'lib/zomg/idl/visitors/sexp.rb', line 220

def visit_LongLong(o)
  :long_long
end

#visit_Member(o) ⇒ Object



13
14
15
# File 'lib/zomg/idl/visitors/sexp.rb', line 13

def visit_Member(o)
  [:member, o.type.accept(self), o.children.map { |c| c.accept(self) }]
end

#visit_Module(o) ⇒ Object



100
101
102
# File 'lib/zomg/idl/visitors/sexp.rb', line 100

def visit_Module(o)
  [:module, o.name, o.children.map { |c| c.accept(self) }]
end

#visit_Object(o) ⇒ Object

Terminal nodes



140
141
142
# File 'lib/zomg/idl/visitors/sexp.rb', line 140

def visit_Object(o)
  :object
end

#visit_Octet(o) ⇒ Object



252
253
254
# File 'lib/zomg/idl/visitors/sexp.rb', line 252

def visit_Octet(o)
  :octet
end

#visit_Operation(o) ⇒ Object



66
67
68
69
70
71
72
73
74
75
# File 'lib/zomg/idl/visitors/sexp.rb', line 66

def visit_Operation(o)
  [:op,
    o.attribute && :oneway,
    o.returns.accept(self),
    o.name,
    o.children.map { |c| c.accept(self) },
    o.raises && o.raises.map { |c| c.accept(self) },
    o.context && o.context.accept(self)
  ]
end

#visit_Out(o) ⇒ Object



172
173
174
# File 'lib/zomg/idl/visitors/sexp.rb', line 172

def visit_Out(o)
  :out
end

#visit_Parameter(o) ⇒ Object



77
78
79
80
81
82
83
# File 'lib/zomg/idl/visitors/sexp.rb', line 77

def visit_Parameter(o)
  [ :param,
    o.attribute.accept(self),
    o.type.accept(self),
    o.declarator.accept(self),
  ]
end

#visit_ScopedName(o) ⇒ Object



85
86
87
88
89
90
# File 'lib/zomg/idl/visitors/sexp.rb', line 85

def visit_ScopedName(o)
  [ :scoped_name,
    o.name,
    o.children.map { |c| c.accept(self) }
  ]
end

#visit_Sequence(o) ⇒ Object



48
49
50
# File 'lib/zomg/idl/visitors/sexp.rb', line 48

def visit_Sequence(o)
  [:sequence, o.children.map { |c| c.accept(self) }]
end

#visit_Short(o) ⇒ Object



212
213
214
# File 'lib/zomg/idl/visitors/sexp.rb', line 212

def visit_Short(o)
  :short
end

#visit_SimpleDeclarator(o) ⇒ Object



256
257
258
# File 'lib/zomg/idl/visitors/sexp.rb', line 256

def visit_SimpleDeclarator(o)
  [:decl, o.name]
end

#visit_Specification(o) ⇒ Object



5
6
7
# File 'lib/zomg/idl/visitors/sexp.rb', line 5

def visit_Specification(o)
  [:spec, o.children.map { |c| c.accept(self) }]
end

#visit_String(o) ⇒ Object



204
205
206
# File 'lib/zomg/idl/visitors/sexp.rb', line 204

def visit_String(o)
  [:string, o.children.map { |c| c.accept(self)}]
end

#visit_StringLiteral(o) ⇒ Object



152
153
154
# File 'lib/zomg/idl/visitors/sexp.rb', line 152

def visit_StringLiteral(o)
  [:string_lit, o.children]
end

#visit_Struct(o) ⇒ Object



9
10
11
# File 'lib/zomg/idl/visitors/sexp.rb', line 9

def visit_Struct(o)
  [:struct, o.name, o.children.map { |c| c.accept(self) }]
end

#visit_Typedef(o) ⇒ Object



37
38
39
40
41
42
# File 'lib/zomg/idl/visitors/sexp.rb', line 37

def visit_Typedef(o)
  [ :typedef,
    o.type_spec.accept(self),
    o.children.map { |c| c.accept(self) }
  ]
end

#visit_UnaryMinus(o) ⇒ Object



116
117
118
# File 'lib/zomg/idl/visitors/sexp.rb', line 116

def visit_UnaryMinus(o)
  [:uminus, o.children.accept(self)]
end

#visit_UnaryPlus(o) ⇒ Object



120
121
122
# File 'lib/zomg/idl/visitors/sexp.rb', line 120

def visit_UnaryPlus(o)
  [:uplus, o.children.accept(self)]
end

#visit_Union(o) ⇒ Object



21
22
23
# File 'lib/zomg/idl/visitors/sexp.rb', line 21

def visit_Union(o)
  [:union, o.name, o.switch_type.accept(self), o.children.map { |c| c.accept(self) }]
end

#visit_UnsignedLong(o) ⇒ Object



236
237
238
# File 'lib/zomg/idl/visitors/sexp.rb', line 236

def visit_UnsignedLong(o)
  :ulong
end

#visit_UnsignedLongLong(o) ⇒ Object



224
225
226
# File 'lib/zomg/idl/visitors/sexp.rb', line 224

def visit_UnsignedLongLong(o)
  :ulong_long
end

#visit_UnsignedShort(o) ⇒ Object



232
233
234
# File 'lib/zomg/idl/visitors/sexp.rb', line 232

def visit_UnsignedShort(o)
  :ushort
end

#visit_ValueBoxDcl(o) ⇒ Object



112
113
114
# File 'lib/zomg/idl/visitors/sexp.rb', line 112

def visit_ValueBoxDcl(o)
  [:valuebox, o.name, o.children.accept(self)]
end

#visit_Void(o) ⇒ Object



248
249
250
# File 'lib/zomg/idl/visitors/sexp.rb', line 248

def visit_Void(o)
  :void
end

#visit_WChar(o) ⇒ Object



200
201
202
# File 'lib/zomg/idl/visitors/sexp.rb', line 200

def visit_WChar(o)
  :wchar
end

#visit_WideCharacterLiteral(o) ⇒ Object



148
149
150
# File 'lib/zomg/idl/visitors/sexp.rb', line 148

def visit_WideCharacterLiteral(o)
  [:wstring_lit, o.children]
end

#visit_WideStringLiteral(o) ⇒ Object



144
145
146
# File 'lib/zomg/idl/visitors/sexp.rb', line 144

def visit_WideStringLiteral(o)
  [:wstring_lit, o.children]
end

#visit_WString(o) ⇒ Object



208
209
210
# File 'lib/zomg/idl/visitors/sexp.rb', line 208

def visit_WString(o)
  [:wstring, o.children.map { |c| c.accept(self)}]
end