Module: TinyGQL::Visitors::Fold
- Defined in:
- lib/tinygql/visitors.rb
Instance Method Summary collapse
- #handle_argument(obj, seed) ⇒ Object
- #handle_boolean_value(obj, seed) ⇒ Object
- #handle_directive(obj, seed) ⇒ Object
- #handle_directive_definition(obj, seed) ⇒ Object
- #handle_document(obj, seed) ⇒ Object
- #handle_enum_type_definition(obj, seed) ⇒ Object
- #handle_enum_type_extension(obj, seed) ⇒ Object
- #handle_enum_value(obj, seed) ⇒ Object
- #handle_enum_value_definition(obj, seed) ⇒ Object
- #handle_executable_directive_location(obj, seed) ⇒ Object
- #handle_field(obj, seed) ⇒ Object
- #handle_field_definition(obj, seed) ⇒ Object
- #handle_float_value(obj, seed) ⇒ Object
- #handle_fragment_definition(obj, seed) ⇒ Object
- #handle_fragment_spread(obj, seed) ⇒ Object
- #handle_inline_fragment(obj, seed) ⇒ Object
- #handle_input_object_type_definition(obj, seed) ⇒ Object
- #handle_input_object_type_extension(obj, seed) ⇒ Object
- #handle_input_value_definition(obj, seed) ⇒ Object
- #handle_int_value(obj, seed) ⇒ Object
- #handle_interface_type_definition(obj, seed) ⇒ Object
- #handle_interface_type_extension(obj, seed) ⇒ Object
- #handle_list_type(obj, seed) ⇒ Object
- #handle_list_value(obj, seed) ⇒ Object
- #handle_named_type(obj, seed) ⇒ Object
- #handle_not_null_type(obj, seed) ⇒ Object
- #handle_null_value(obj, seed) ⇒ Object
- #handle_object_field(obj, seed) ⇒ Object
- #handle_object_type_definition(obj, seed) ⇒ Object
- #handle_object_type_extension(obj, seed) ⇒ Object
- #handle_object_value(obj, seed) ⇒ Object
- #handle_operation_definition(obj, seed) ⇒ Object
- #handle_root_operation_type_definition(obj, seed) ⇒ Object
- #handle_scalar_type_definition(obj, seed) ⇒ Object
- #handle_scalar_type_extension(obj, seed) ⇒ Object
- #handle_schema_definition(obj, seed) ⇒ Object
- #handle_string_value(obj, seed) ⇒ Object
- #handle_type_condition(obj, seed) ⇒ Object
- #handle_type_system_directive_location(obj, seed) ⇒ Object
- #handle_union_type_definition(obj, seed) ⇒ Object
- #handle_union_type_extension(obj, seed) ⇒ Object
- #handle_value(obj, seed) ⇒ Object
- #handle_variable(obj, seed) ⇒ Object
- #handle_variable_definition(obj, seed) ⇒ Object
Instance Method Details
#handle_argument(obj, seed) ⇒ Object
255 256 257 258 |
# File 'lib/tinygql/visitors.rb', line 255 def handle_argument obj, seed seed = obj.value.fold(self, seed) seed end |
#handle_boolean_value(obj, seed) ⇒ Object
284 285 286 |
# File 'lib/tinygql/visitors.rb', line 284 def handle_boolean_value obj, seed seed end |
#handle_directive(obj, seed) ⇒ Object
305 306 307 308 |
# File 'lib/tinygql/visitors.rb', line 305 def handle_directive obj, seed obj.arguments.each { |v| seed = v.fold(self, seed) } if obj.arguments seed end |
#handle_directive_definition(obj, seed) ⇒ Object
426 427 428 429 430 431 |
# File 'lib/tinygql/visitors.rb', line 426 def handle_directive_definition obj, seed seed = obj.description.fold(self, seed) if obj.description obj.arguments_definition.each { |v| seed = v.fold(self, seed) } if obj.arguments_definition obj.directive_locations.each { |v| seed = v.fold(self, seed) } seed end |
#handle_document(obj, seed) ⇒ Object
214 215 216 217 |
# File 'lib/tinygql/visitors.rb', line 214 def handle_document obj, seed obj.definitions.each { |v| seed = v.fold(self, seed) } seed end |
#handle_enum_type_definition(obj, seed) ⇒ Object
397 398 399 400 401 402 |
# File 'lib/tinygql/visitors.rb', line 397 def handle_enum_type_definition obj, seed seed = obj.description.fold(self, seed) if obj.description obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.enum_value_definition.each { |v| seed = v.fold(self, seed) } if obj.enum_value_definition seed end |
#handle_enum_type_extension(obj, seed) ⇒ Object
451 452 453 454 455 |
# File 'lib/tinygql/visitors.rb', line 451 def handle_enum_type_extension obj, seed obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.enum_value_definition.each { |v| seed = v.fold(self, seed) } if obj.enum_value_definition seed end |
#handle_enum_value(obj, seed) ⇒ Object
292 293 294 |
# File 'lib/tinygql/visitors.rb', line 292 def handle_enum_value obj, seed seed end |
#handle_enum_value_definition(obj, seed) ⇒ Object
390 391 392 393 394 395 |
# File 'lib/tinygql/visitors.rb', line 390 def handle_enum_value_definition obj, seed seed = obj.description.fold(self, seed) if obj.description seed = obj.enum_value.fold(self, seed) obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives seed end |
#handle_executable_directive_location(obj, seed) ⇒ Object
418 419 420 |
# File 'lib/tinygql/visitors.rb', line 418 def handle_executable_directive_location obj, seed seed end |
#handle_field(obj, seed) ⇒ Object
260 261 262 263 264 265 |
# File 'lib/tinygql/visitors.rb', line 260 def handle_field obj, seed obj.arguments.each { |v| seed = v.fold(self, seed) } if obj.arguments obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.selection_set.each { |v| seed = v.fold(self, seed) } if obj.selection_set seed end |
#handle_field_definition(obj, seed) ⇒ Object
346 347 348 349 350 351 352 |
# File 'lib/tinygql/visitors.rb', line 346 def handle_field_definition obj, seed seed = obj.description.fold(self, seed) if obj.description obj.arguments_definition.each { |v| seed = v.fold(self, seed) } if obj.arguments_definition seed = obj.type.fold(self, seed) obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives seed end |
#handle_float_value(obj, seed) ⇒ Object
276 277 278 |
# File 'lib/tinygql/visitors.rb', line 276 def handle_float_value obj, seed seed end |
#handle_fragment_definition(obj, seed) ⇒ Object
327 328 329 330 331 332 |
# File 'lib/tinygql/visitors.rb', line 327 def handle_fragment_definition obj, seed seed = obj.type_condition.fold(self, seed) obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.selection_set.each { |v| seed = v.fold(self, seed) } seed end |
#handle_fragment_spread(obj, seed) ⇒ Object
322 323 324 325 |
# File 'lib/tinygql/visitors.rb', line 322 def handle_fragment_spread obj, seed obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives seed end |
#handle_inline_fragment(obj, seed) ⇒ Object
315 316 317 318 319 320 |
# File 'lib/tinygql/visitors.rb', line 315 def handle_inline_fragment obj, seed seed = obj.type_condition.fold(self, seed) if obj.type_condition obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.selection_set.each { |v| seed = v.fold(self, seed) } seed end |
#handle_input_object_type_definition(obj, seed) ⇒ Object
404 405 406 407 408 409 |
# File 'lib/tinygql/visitors.rb', line 404 def handle_input_object_type_definition obj, seed seed = obj.description.fold(self, seed) if obj.description obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.input_fields_definition.each { |v| seed = v.fold(self, seed) } if obj.input_fields_definition seed end |
#handle_input_object_type_extension(obj, seed) ⇒ Object
457 458 459 460 461 |
# File 'lib/tinygql/visitors.rb', line 457 def handle_input_object_type_extension obj, seed obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.input_fields_definition.each { |v| seed = v.fold(self, seed) } if obj.input_fields_definition seed end |
#handle_input_value_definition(obj, seed) ⇒ Object
354 355 356 357 358 359 360 |
# File 'lib/tinygql/visitors.rb', line 354 def handle_input_value_definition obj, seed seed = obj.description.fold(self, seed) if obj.description seed = obj.type.fold(self, seed) seed = obj.default_value.fold(self, seed) if obj.default_value obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives seed end |
#handle_int_value(obj, seed) ⇒ Object
272 273 274 |
# File 'lib/tinygql/visitors.rb', line 272 def handle_int_value obj, seed seed end |
#handle_interface_type_definition(obj, seed) ⇒ Object
370 371 372 373 374 375 |
# File 'lib/tinygql/visitors.rb', line 370 def handle_interface_type_definition obj, seed seed = obj.description.fold(self, seed) if obj.description obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.fields_definition.each { |v| seed = v.fold(self, seed) } if obj.fields_definition seed end |
#handle_interface_type_extension(obj, seed) ⇒ Object
438 439 440 441 442 443 |
# File 'lib/tinygql/visitors.rb', line 438 def handle_interface_type_extension obj, seed obj.implements_interfaces.each { |v| seed = v.fold(self, seed) } if obj.implements_interfaces obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.fields_definition.each { |v| seed = v.fold(self, seed) } if obj.fields_definition seed end |
#handle_list_type(obj, seed) ⇒ Object
239 240 241 242 |
# File 'lib/tinygql/visitors.rb', line 239 def handle_list_type obj, seed seed = obj.type.fold(self, seed) seed end |
#handle_list_value(obj, seed) ⇒ Object
296 297 298 |
# File 'lib/tinygql/visitors.rb', line 296 def handle_list_value obj, seed seed end |
#handle_named_type(obj, seed) ⇒ Object
230 231 232 |
# File 'lib/tinygql/visitors.rb', line 230 def handle_named_type obj, seed seed end |
#handle_not_null_type(obj, seed) ⇒ Object
234 235 236 237 |
# File 'lib/tinygql/visitors.rb', line 234 def handle_not_null_type obj, seed seed = obj.type.fold(self, seed) seed end |
#handle_null_value(obj, seed) ⇒ Object
288 289 290 |
# File 'lib/tinygql/visitors.rb', line 288 def handle_null_value obj, seed seed end |
#handle_object_field(obj, seed) ⇒ Object
267 268 269 270 |
# File 'lib/tinygql/visitors.rb', line 267 def handle_object_field obj, seed seed = obj.value.fold(self, seed) seed end |
#handle_object_type_definition(obj, seed) ⇒ Object
362 363 364 365 366 367 368 |
# File 'lib/tinygql/visitors.rb', line 362 def handle_object_type_definition obj, seed seed = obj.description.fold(self, seed) if obj.description obj.implements_interfaces.each { |v| seed = v.fold(self, seed) } if obj.implements_interfaces obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.fields_definition.each { |v| seed = v.fold(self, seed) } if obj.fields_definition seed end |
#handle_object_type_extension(obj, seed) ⇒ Object
411 412 413 414 415 416 |
# File 'lib/tinygql/visitors.rb', line 411 def handle_object_type_extension obj, seed obj.implements_interfaces.each { |v| seed = v.fold(self, seed) } if obj.implements_interfaces obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.fields_definition.each { |v| seed = v.fold(self, seed) } if obj.fields_definition seed end |
#handle_object_value(obj, seed) ⇒ Object
300 301 302 303 |
# File 'lib/tinygql/visitors.rb', line 300 def handle_object_value obj, seed obj.values.each { |v| seed = v.fold(self, seed) } seed end |
#handle_operation_definition(obj, seed) ⇒ Object
219 220 221 222 223 224 |
# File 'lib/tinygql/visitors.rb', line 219 def handle_operation_definition obj, seed obj.variable_definitions.each { |v| seed = v.fold(self, seed) } if obj.variable_definitions obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.selection_set.each { |v| seed = v.fold(self, seed) } seed end |
#handle_root_operation_type_definition(obj, seed) ⇒ Object
334 335 336 337 |
# File 'lib/tinygql/visitors.rb', line 334 def handle_root_operation_type_definition obj, seed seed = obj.named_type.fold(self, seed) seed end |
#handle_scalar_type_definition(obj, seed) ⇒ Object
384 385 386 387 388 |
# File 'lib/tinygql/visitors.rb', line 384 def handle_scalar_type_definition obj, seed seed = obj.description.fold(self, seed) if obj.description obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives seed end |
#handle_scalar_type_extension(obj, seed) ⇒ Object
433 434 435 436 |
# File 'lib/tinygql/visitors.rb', line 433 def handle_scalar_type_extension obj, seed obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives seed end |
#handle_schema_definition(obj, seed) ⇒ Object
339 340 341 342 343 344 |
# File 'lib/tinygql/visitors.rb', line 339 def handle_schema_definition obj, seed seed = obj.description.fold(self, seed) if obj.description obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.root_operation_definitions.each { |v| seed = v.fold(self, seed) } seed end |
#handle_string_value(obj, seed) ⇒ Object
280 281 282 |
# File 'lib/tinygql/visitors.rb', line 280 def handle_string_value obj, seed seed end |
#handle_type_condition(obj, seed) ⇒ Object
310 311 312 313 |
# File 'lib/tinygql/visitors.rb', line 310 def handle_type_condition obj, seed seed = obj.named_type.fold(self, seed) seed end |
#handle_type_system_directive_location(obj, seed) ⇒ Object
422 423 424 |
# File 'lib/tinygql/visitors.rb', line 422 def handle_type_system_directive_location obj, seed seed end |
#handle_union_type_definition(obj, seed) ⇒ Object
377 378 379 380 381 382 |
# File 'lib/tinygql/visitors.rb', line 377 def handle_union_type_definition obj, seed seed = obj.description.fold(self, seed) if obj.description obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.union_member_types.each { |v| seed = v.fold(self, seed) } if obj.union_member_types seed end |
#handle_union_type_extension(obj, seed) ⇒ Object
445 446 447 448 449 |
# File 'lib/tinygql/visitors.rb', line 445 def handle_union_type_extension obj, seed obj.directives.each { |v| seed = v.fold(self, seed) } if obj.directives obj.union_member_types.each { |v| seed = v.fold(self, seed) } if obj.union_member_types seed end |
#handle_value(obj, seed) ⇒ Object
251 252 253 |
# File 'lib/tinygql/visitors.rb', line 251 def handle_value obj, seed seed end |
#handle_variable(obj, seed) ⇒ Object
226 227 228 |
# File 'lib/tinygql/visitors.rb', line 226 def handle_variable obj, seed seed end |
#handle_variable_definition(obj, seed) ⇒ Object
244 245 246 247 248 249 |
# File 'lib/tinygql/visitors.rb', line 244 def handle_variable_definition obj, seed seed = obj.variable.fold(self, seed) seed = obj.type.fold(self, seed) seed = obj.default_value.fold(self, seed) if obj.default_value seed end |