graphlyte 0.3.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/lib/graphlyte/data.rb +68 -0
  3. data/lib/graphlyte/document.rb +131 -0
  4. data/lib/graphlyte/dsl.rb +86 -0
  5. data/lib/graphlyte/editor.rb +288 -0
  6. data/lib/graphlyte/editors/annotate_types.rb +75 -0
  7. data/lib/graphlyte/editors/canonicalize.rb +26 -0
  8. data/lib/graphlyte/editors/collect_variable_references.rb +36 -0
  9. data/lib/graphlyte/editors/infer_signature.rb +36 -0
  10. data/lib/graphlyte/editors/inline_fragments.rb +37 -0
  11. data/lib/graphlyte/editors/remove_unneeded_spreads.rb +64 -0
  12. data/lib/graphlyte/editors/select_operation.rb +116 -0
  13. data/lib/graphlyte/editors/with_variables.rb +106 -0
  14. data/lib/graphlyte/errors.rb +33 -0
  15. data/lib/graphlyte/lexer.rb +392 -0
  16. data/lib/graphlyte/lexing/location.rb +43 -0
  17. data/lib/graphlyte/lexing/token.rb +31 -0
  18. data/lib/graphlyte/parser.rb +269 -0
  19. data/lib/graphlyte/parsing/backtracking_parser.rb +160 -0
  20. data/lib/graphlyte/refinements/string_refinement.rb +14 -8
  21. data/lib/graphlyte/refinements/syntax_refinements.rb +62 -0
  22. data/lib/graphlyte/schema.rb +165 -0
  23. data/lib/graphlyte/schema_query.rb +82 -65
  24. data/lib/graphlyte/selection_builder.rb +189 -0
  25. data/lib/graphlyte/selector.rb +75 -0
  26. data/lib/graphlyte/serializer.rb +223 -0
  27. data/lib/graphlyte/syntax.rb +369 -0
  28. data/lib/graphlyte.rb +24 -42
  29. metadata +88 -19
  30. data/lib/graphlyte/arguments/set.rb +0 -94
  31. data/lib/graphlyte/arguments/value.rb +0 -42
  32. data/lib/graphlyte/arguments/value_literal.rb +0 -17
  33. data/lib/graphlyte/builder.rb +0 -59
  34. data/lib/graphlyte/directive.rb +0 -25
  35. data/lib/graphlyte/field.rb +0 -65
  36. data/lib/graphlyte/fieldset.rb +0 -36
  37. data/lib/graphlyte/fragment.rb +0 -17
  38. data/lib/graphlyte/inline_fragment.rb +0 -29
  39. data/lib/graphlyte/query.rb +0 -150
  40. data/lib/graphlyte/schema/parser.rb +0 -687
  41. data/lib/graphlyte/schema/types/base.rb +0 -54
  42. data/lib/graphlyte/types.rb +0 -9
@@ -1,54 +0,0 @@
1
- module Graphlyte
2
- module Schema
3
- module Types
4
- class Defaults
5
- attr_reader :value
6
- def initialize(value)
7
- @value = value
8
- end
9
-
10
- def merge!(str)
11
- parse_value(@value, str)
12
- end
13
-
14
- def parse_value(value, str)
15
- if value.is_a?(Hash)
16
- str << "{ "
17
- value.each_with_index do |(k, v), idx|
18
- str << "#{k}: "
19
- parse_value(v, str)
20
- str << ", " if idx < (value.size - 1)
21
- end
22
- str << " }"
23
- elsif value.is_a?(Array)
24
- str << "["
25
- value.each_with_index do |item, idx|
26
- parse_value(item, str)
27
- str << ", " if idx < (value.size - 1)
28
- end
29
- str << "]"
30
- elsif value.is_a?(Symbol)
31
- str << value.to_s
32
- else
33
- str << "#{Arguments::Value.new(value).to_s}"
34
- end
35
- end
36
- end
37
-
38
- class Base
39
- attr_reader :name, :placeholder
40
-
41
- def initialize(name, placeholder, defaults=nil)
42
- @name = name
43
- @placeholder = placeholder
44
- @defaults = defaults
45
- end
46
-
47
- def default
48
- return nil if @defaults.class == NilClass
49
- Defaults.new(@defaults)
50
- end
51
- end
52
- end
53
- end
54
- end
@@ -1,9 +0,0 @@
1
- require_relative "schema/types/base"
2
-
3
- module Graphlyte
4
- class Types
5
- def method_missing(method, placeholder, default = nil)
6
- Schema::Types::Base.new(method, placeholder, default)
7
- end
8
- end
9
- end