vanken 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +5 -0
  3. data/LICENSE.txt +21 -0
  4. data/README.md +84 -0
  5. data/docs/filters.md +25 -0
  6. data/docs/performance.md +113 -0
  7. data/docs/releases.md +15 -0
  8. data/docs/upstream.md +32 -0
  9. data/exe/vanken +5 -0
  10. data/exe/vanken-capture +6 -0
  11. data/lib/vanken/app/capture_controller.rb +197 -0
  12. data/lib/vanken/app/document.rb +305 -0
  13. data/lib/vanken/app/document_jobs.rb +199 -0
  14. data/lib/vanken/capture/analyzer.rb +44 -0
  15. data/lib/vanken/capture/analyzer_process.rb +91 -0
  16. data/lib/vanken/capture/analyzer_wire.rb +42 -0
  17. data/lib/vanken/capture/analyzer_worker.rb +153 -0
  18. data/lib/vanken/capture/control_protocol.rb +32 -0
  19. data/lib/vanken/capture/filter_worker.rb +180 -0
  20. data/lib/vanken/capture/helper_main.rb +137 -0
  21. data/lib/vanken/capture/helper_options.rb +70 -0
  22. data/lib/vanken/capture/launcher.rb +181 -0
  23. data/lib/vanken/capture/privileges.rb +24 -0
  24. data/lib/vanken/capture/receiver.rb +39 -0
  25. data/lib/vanken/cli.rb +68 -0
  26. data/lib/vanken/config/log.rb +19 -0
  27. data/lib/vanken/config/preferences.rb +126 -0
  28. data/lib/vanken/core/display_filter/compiler.rb +108 -0
  29. data/lib/vanken/core/display_filter/errors.rb +19 -0
  30. data/lib/vanken/core/display_filter/field_resolver.rb +86 -0
  31. data/lib/vanken/core/display_filter/lexer.rb +124 -0
  32. data/lib/vanken/core/display_filter/parser.rb +157 -0
  33. data/lib/vanken/core/display_filter/types.rb +176 -0
  34. data/lib/vanken/core/frame.rb +33 -0
  35. data/lib/vanken/core/frame_store.rb +179 -0
  36. data/lib/vanken/core/frame_view.rb +68 -0
  37. data/lib/vanken/core/stores.rb +192 -0
  38. data/lib/vanken/errors.rb +9 -0
  39. data/lib/vanken/gateway/capture_filter.rb +30 -0
  40. data/lib/vanken/gateway/detail_builder.rb +63 -0
  41. data/lib/vanken/gateway/dissector.rb +176 -0
  42. data/lib/vanken/gateway/file_reader.rb +153 -0
  43. data/lib/vanken/gateway/file_writer.rb +64 -0
  44. data/lib/vanken/gateway/interfaces.rb +30 -0
  45. data/lib/vanken/gateway/live_capture.rb +79 -0
  46. data/lib/vanken/gateway/packet_snapshot.rb +89 -0
  47. data/lib/vanken/ui/actions.rb +50 -0
  48. data/lib/vanken/ui/application.rb +205 -0
  49. data/lib/vanken/ui/dialogs.rb +89 -0
  50. data/lib/vanken/ui/file_operations.rb +113 -0
  51. data/lib/vanken/ui/filter_operations.rb +120 -0
  52. data/lib/vanken/ui/main_view.rb +113 -0
  53. data/lib/vanken/ui/packet_source.rb +161 -0
  54. data/lib/vanken/ui/selection.rb +91 -0
  55. data/lib/vanken/version.rb +5 -0
  56. data/lib/vanken.rb +17 -0
  57. data/packaging/README.md +33 -0
  58. data/sig/generated/vanken/app/capture_controller.rbs +58 -0
  59. data/sig/generated/vanken/app/document.rbs +117 -0
  60. data/sig/generated/vanken/app/document_jobs.rbs +27 -0
  61. data/sig/generated/vanken/capture/analyzer.rbs +11 -0
  62. data/sig/generated/vanken/capture/analyzer_process.rbs +17 -0
  63. data/sig/generated/vanken/capture/analyzer_wire.rbs +19 -0
  64. data/sig/generated/vanken/capture/analyzer_worker.rbs +45 -0
  65. data/sig/generated/vanken/capture/control_protocol.rbs +17 -0
  66. data/sig/generated/vanken/capture/filter_worker.rbs +51 -0
  67. data/sig/generated/vanken/capture/helper_main.rbs +23 -0
  68. data/sig/generated/vanken/capture/helper_options.rbs +27 -0
  69. data/sig/generated/vanken/capture/launcher.rbs +60 -0
  70. data/sig/generated/vanken/capture/privileges.rbs +12 -0
  71. data/sig/generated/vanken/capture/receiver.rbs +15 -0
  72. data/sig/generated/vanken/cli.rbs +9 -0
  73. data/sig/generated/vanken/config/log.rbs +9 -0
  74. data/sig/generated/vanken/config/preferences.rbs +49 -0
  75. data/sig/generated/vanken/core/display_filter/compiler.rbs +45 -0
  76. data/sig/generated/vanken/core/display_filter/errors.rbs +16 -0
  77. data/sig/generated/vanken/core/display_filter/field_resolver.rbs +48 -0
  78. data/sig/generated/vanken/core/display_filter/lexer.rbs +49 -0
  79. data/sig/generated/vanken/core/display_filter/parser.rbs +95 -0
  80. data/sig/generated/vanken/core/display_filter/types.rbs +45 -0
  81. data/sig/generated/vanken/core/frame.rbs +63 -0
  82. data/sig/generated/vanken/core/frame_store.rbs +65 -0
  83. data/sig/generated/vanken/core/frame_view.rbs +36 -0
  84. data/sig/generated/vanken/core/stores.rbs +110 -0
  85. data/sig/generated/vanken/errors.rbs +18 -0
  86. data/sig/generated/vanken/gateway/capture_filter.rbs +17 -0
  87. data/sig/generated/vanken/gateway/detail_builder.rbs +21 -0
  88. data/sig/generated/vanken/gateway/dissector.rbs +113 -0
  89. data/sig/generated/vanken/gateway/file_reader.rbs +53 -0
  90. data/sig/generated/vanken/gateway/file_writer.rbs +27 -0
  91. data/sig/generated/vanken/gateway/interfaces.rbs +16 -0
  92. data/sig/generated/vanken/gateway/live_capture.rbs +48 -0
  93. data/sig/generated/vanken/gateway/packet_snapshot.rbs +48 -0
  94. data/sig/generated/vanken/ui/actions.rbs +9 -0
  95. data/sig/generated/vanken/ui/application.rbs +85 -0
  96. data/sig/generated/vanken/ui/dialogs.rbs +21 -0
  97. data/sig/generated/vanken/ui/file_operations.rbs +25 -0
  98. data/sig/generated/vanken/ui/filter_operations.rbs +33 -0
  99. data/sig/generated/vanken/ui/main_view.rbs +21 -0
  100. data/sig/generated/vanken/ui/packet_source.rbs +40 -0
  101. data/sig/generated/vanken/ui/selection.rbs +23 -0
  102. data/sig/generated/vanken/version.rbs +5 -0
  103. data/sig/vanken.rbs +25 -0
  104. metadata +192 -0
@@ -0,0 +1,49 @@
1
+ # Generated from lib/vanken/config/preferences.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Config
5
+ module Paths
6
+ def self.config: () -> untyped
7
+
8
+ def self.state: () -> untyped
9
+ end
10
+
11
+ class Preferences
12
+ DEFAULTS: untyped
13
+
14
+ attr_reader warning: untyped
15
+
16
+ attr_reader directory: untyped
17
+
18
+ def initialize: (?directory: untyped) -> untyped
19
+
20
+ def get: (untyped path) -> untyped
21
+
22
+ def set: (untyped path, untyped value) -> untyped
23
+
24
+ def history: () -> untyped
25
+
26
+ def recent_files: () -> untyped
27
+
28
+ def bookmarks: () -> untyped
29
+
30
+ def remember_filter: (untyped expression) -> untyped
31
+
32
+ def remember_file: (untyped path) -> untyped
33
+
34
+ def bookmark: (untyped name, untyped expression) -> untyped
35
+
36
+ def save: () -> untyped
37
+
38
+ private
39
+
40
+ def remember: (untyped key, untyped value, untyped limit) -> untyped
41
+
42
+ def merge: (untyped base, untyped saved) -> untyped
43
+
44
+ def validate: () -> untyped
45
+
46
+ def validate_shape: (untyped default, untyped value) -> untyped
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,45 @@
1
+ # Generated from lib/vanken/core/display_filter/compiler.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Core
5
+ module DisplayFilter
6
+ class Program
7
+ attr_reader expression: String
8
+
9
+ attr_reader fields: Array[String]
10
+
11
+ attr_reader sources: Array[Symbol]
12
+
13
+ attr_reader warnings: Array[String]
14
+
15
+ # @rbs (expression: String, fields: Array[String], sources: Array[Symbol], warnings: Array[String], evaluator: ^(untyped) -> bool) -> void
16
+ def initialize: (expression: String, fields: Array[String], sources: Array[Symbol], warnings: Array[String], evaluator: ^(untyped) -> bool) -> void
17
+
18
+ # @rbs (_FilterView view) -> bool
19
+ def match?: (_FilterView view) -> bool
20
+
21
+ # @rbs () -> bool
22
+ def fast?: () -> bool
23
+ end
24
+
25
+ class Compiler
26
+ # @rbs (?catalog: untyped) -> void
27
+ def initialize: (?catalog: untyped) -> void
28
+
29
+ # @rbs (String expression) -> Program
30
+ def compile: (String expression) -> Program
31
+
32
+ private
33
+
34
+ # @rbs (Node node) -> ^(untyped) -> bool
35
+ def compile_node: (Node node) -> ^(untyped) -> bool
36
+
37
+ # @rbs (Node node) -> ^(untyped) -> bool
38
+ def compile_test: (Node node) -> ^(untyped) -> bool
39
+ end
40
+
41
+ # @rbs (String expression, ?catalog: untyped) -> Program
42
+ def self.compile: (String expression, ?catalog: untyped) -> Program
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,16 @@
1
+ # Generated from lib/vanken/core/display_filter/errors.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Core
5
+ module DisplayFilter
6
+ class SyntaxError < StandardError
7
+ attr_reader position: Integer
8
+
9
+ attr_reader length: Integer
10
+
11
+ # @rbs (String message, position: Integer, ?length: Integer) -> void
12
+ def initialize: (String message, position: Integer, ?length: Integer) -> void
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,48 @@
1
+ # Generated from lib/vanken/core/display_filter/field_resolver.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Core
5
+ module DisplayFilter
6
+ class Reference < Data
7
+ attr_reader name(): String
8
+
9
+ attr_reader type(): field_type?
10
+
11
+ attr_reader source(): Symbol
12
+
13
+ attr_reader protocol(): bool
14
+
15
+ attr_reader known(): bool
16
+
17
+ def self.new: (String name, field_type? type, Symbol source, bool protocol, bool known) -> instance
18
+ | (name: String, type: field_type?, source: Symbol, protocol: bool, known: bool) -> instance
19
+
20
+ def self.members: () -> [ :name, :type, :source, :protocol, :known ]
21
+
22
+ def members: () -> [ :name, :type, :source, :protocol, :known ]
23
+ end
24
+
25
+ class FieldResolver
26
+ PROTOCOLS: untyped
27
+
28
+ FRAME_FIELDS: untyped
29
+
30
+ VIRTUAL_FIELDS: untyped
31
+
32
+ # @rbs (?untyped catalog) -> void
33
+ def initialize: (?untyped catalog) -> void
34
+
35
+ # @rbs (String name) -> Reference
36
+ def resolve: (String name) -> Reference
37
+
38
+ # @rbs (untyped type) -> field_type?
39
+ def normalize_type: (untyped type) -> field_type?
40
+
41
+ private
42
+
43
+ # @rbs (untyped entry, Symbol key) -> untyped
44
+ def metadata: (untyped entry, Symbol key) -> untyped
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,49 @@
1
+ # Generated from lib/vanken/core/display_filter/lexer.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Core
5
+ module DisplayFilter
6
+ class Token < Data
7
+ attr_reader type(): Symbol
8
+
9
+ attr_reader value(): untyped
10
+
11
+ attr_reader position(): Integer
12
+
13
+ attr_reader length(): Integer
14
+
15
+ attr_reader raw(): String
16
+
17
+ def self.new: (Symbol type, untyped value, Integer position, Integer length, String raw) -> instance
18
+ | (type: Symbol, value: untyped, position: Integer, length: Integer, raw: String) -> instance
19
+
20
+ def self.members: () -> [ :type, :value, :position, :length, :raw ]
21
+
22
+ def members: () -> [ :type, :value, :position, :length, :raw ]
23
+ end
24
+
25
+ class Lexer
26
+ OPERATORS: untyped
27
+
28
+ PUNCTUATION: untyped
29
+
30
+ # @rbs (String expression) -> void
31
+ def initialize: (String expression) -> void
32
+
33
+ # @rbs () -> Array[Token]
34
+ def tokens: () -> Array[Token]
35
+
36
+ private
37
+
38
+ # @rbs (Integer position) -> String
39
+ def read_string: (Integer position) -> String
40
+
41
+ # @rbs (String raw, Integer position) -> [Symbol, untyped]
42
+ def classify: (String raw, Integer position) -> [ Symbol, untyped ]
43
+
44
+ # @rbs (String message, Integer position, Integer length) -> bot
45
+ def fail_at: (String message, Integer position, Integer length) -> bot
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,95 @@
1
+ # Generated from lib/vanken/core/display_filter/parser.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Core
5
+ module DisplayFilter
6
+ class Node < Data
7
+ attr_reader kind(): Symbol
8
+
9
+ attr_reader left(): untyped
10
+
11
+ attr_reader right(): untyped
12
+
13
+ def self.new: (Symbol kind, untyped left, untyped right) -> instance
14
+ | (kind: Symbol, left: untyped, right: untyped) -> instance
15
+
16
+ def self.members: () -> [ :kind, :left, :right ]
17
+
18
+ def members: () -> [ :kind, :left, :right ]
19
+ end
20
+
21
+ class Predicate < Data
22
+ attr_reader operator(): Symbol
23
+
24
+ attr_reader values(): Array[Member]
25
+
26
+ attr_reader token(): Token
27
+
28
+ def self.new: (Symbol operator, Array[Member] values, Token token) -> instance
29
+ | (operator: Symbol, values: Array[Member], token: Token) -> instance
30
+
31
+ def self.members: () -> [ :operator, :values, :token ]
32
+
33
+ def members: () -> [ :operator, :values, :token ]
34
+ end
35
+
36
+ class Member < Data
37
+ attr_reader first(): Token
38
+
39
+ attr_reader last(): Token?
40
+
41
+ def self.new: (Token first, Token? last) -> instance
42
+ | (first: Token, last: Token?) -> instance
43
+
44
+ def self.members: () -> [ :first, :last ]
45
+
46
+ def members: () -> [ :first, :last ]
47
+ end
48
+
49
+ class Parser
50
+ PRECEDENCE: untyped
51
+
52
+ VALUES: untyped
53
+
54
+ RELATIONS: untyped
55
+
56
+ attr_reader warnings: Array[String]
57
+
58
+ # @rbs (String expression) -> void
59
+ def initialize: (String expression) -> void
60
+
61
+ # @rbs () -> Node
62
+ def parse: () -> Node
63
+
64
+ private
65
+
66
+ # @rbs (Integer minimum) -> Node
67
+ def expression: (Integer minimum) -> Node
68
+
69
+ # @rbs () -> Node
70
+ def primary: () -> Node
71
+
72
+ # @rbs () -> Predicate?
73
+ def predicate: () -> Predicate?
74
+
75
+ # @rbs () -> Array[Member]
76
+ def set_members: () -> Array[Member]
77
+
78
+ # @rbs () -> Token
79
+ def value: () -> Token
80
+
81
+ # @rbs (Symbol type) -> Token
82
+ def expect_token: (Symbol type) -> Token
83
+
84
+ # @rbs () -> Token
85
+ def current: () -> Token
86
+
87
+ # @rbs () -> Token
88
+ def advance: () -> Token
89
+
90
+ # @rbs (String message, Token token) -> bot
91
+ def fail_at: (String message, Token token) -> bot
92
+ end
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,45 @@
1
+ # Generated from lib/vanken/core/display_filter/types.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Core
5
+ module DisplayFilter
6
+ module Types
7
+ NUMERIC: untyped
8
+
9
+ ORDERED: untyped
10
+
11
+ SEVERITIES: untyped
12
+
13
+ # @rbs (Predicate predicate, field_type? type) -> ^(untyped, field_type?) -> bool
14
+ def self?.predicate: (Predicate predicate, field_type? type) -> ^(untyped, field_type?) -> bool
15
+
16
+ # @rbs (Symbol operator, field_type? type, Token token) -> void
17
+ def self?.validate_operator: (Symbol operator, field_type? type, Token token) -> void
18
+
19
+ # @rbs (Array[Member] members, field_type? type) -> Array[prepared_member]
20
+ def self?.prepare_members: (Array[Member] members, field_type? type) -> Array[prepared_member]
21
+
22
+ # @rbs (Token token, field_type? type) -> untyped
23
+ def self?.literal: (Token token, field_type? type) -> untyped
24
+
25
+ # @rbs (untyped value, field_type? type) -> untyped
26
+ def self?.actual_value: (untyped value, field_type? type) -> untyped
27
+
28
+ # @rbs (untyped actual, Token token) -> field_type
29
+ def self?.infer_type: (untyped actual, Token token) -> field_type
30
+
31
+ # @rbs (untyped value, Symbol operator, Array[prepared_member] members, Regexp? regex, field_type? type) -> bool
32
+ def self?.compare: (untyped value, Symbol operator, Array[prepared_member] members, Regexp? regex, field_type? type) -> bool
33
+
34
+ # @rbs (untyped value) -> String
35
+ def self?.normalized_mac: (untyped value) -> String
36
+
37
+ # @rbs (Token token) -> Regexp
38
+ def self?.regular_expression: (Token token) -> Regexp
39
+
40
+ # @rbs (String message, Token token) -> bot
41
+ def self?.fail_at: (String message, Token token) -> bot
42
+ end
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,63 @@
1
+ # Generated from lib/vanken/core/frame.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Core
5
+ class Frame < Data
6
+ attr_reader bytes(): String
7
+
8
+ attr_reader timestamp_ns(): Integer
9
+
10
+ attr_reader original_length(): Integer
11
+
12
+ attr_reader linktype(): Integer
13
+
14
+ attr_reader interface(): Hash[String, untyped]?
15
+
16
+ attr_reader direction(): (:in | :out)?
17
+
18
+ attr_reader number(): Integer
19
+
20
+ def self.new: (String bytes, Integer timestamp_ns, Integer original_length, Integer linktype, Hash[String, untyped]? interface, (:in | :out)? direction, Integer number) -> instance
21
+ | (bytes: String, timestamp_ns: Integer, original_length: Integer, linktype: Integer, interface: Hash[String, untyped]?, direction: (:in | :out)?, number: Integer) -> instance
22
+
23
+ def self.members: () -> [ :bytes, :timestamp_ns, :original_length, :linktype, :interface, :direction, :number ]
24
+
25
+ def members: () -> [ :bytes, :timestamp_ns, :original_length, :linktype, :interface, :direction, :number ]
26
+ end
27
+
28
+ class DetailNode < Data
29
+ attr_reader id(): String
30
+
31
+ attr_reader label(): String
32
+
33
+ attr_reader field(): String?
34
+
35
+ attr_reader offset(): Integer?
36
+
37
+ attr_reader length(): Integer
38
+
39
+ attr_reader source(): Symbol
40
+
41
+ attr_reader severity(): Symbol?
42
+
43
+ attr_reader filter(): String?
44
+
45
+ attr_reader children(): Array[DetailNode]
46
+
47
+ def self.new: (String id, String label, String? field, Integer? offset, Integer length, Symbol source, Symbol? severity, String? filter, Array[DetailNode] children) -> instance
48
+ | (id: String, label: String, field: String?, offset: Integer?, length: Integer, source: Symbol, severity: Symbol?, filter: String?, children: Array[DetailNode]) -> instance
49
+
50
+ def self.members: () -> [ :id, :label, :field, :offset, :length, :source, :severity, :filter, :children ]
51
+
52
+ def members: () -> [ :id, :label, :field, :offset, :length, :source, :severity, :filter, :children ]
53
+ end
54
+
55
+ class DetailNode
56
+ # @rbs () -> Array[DetailNode]
57
+ def descendants: () -> Array[DetailNode]
58
+
59
+ # @rbs () -> Hash[Symbol, untyped]
60
+ def to_h: () -> Hash[Symbol, untyped]
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,65 @@
1
+ # Generated from lib/vanken/core/frame_store.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Core
5
+ class FrameStore
6
+ RECORD: ::String
7
+
8
+ RECORD_SIZE: ::Integer
9
+
10
+ DIRECTION_IDS: Hash[Symbol?, Integer]
11
+
12
+ MIN_TIMESTAMP: Integer
13
+
14
+ MAX_TIMESTAMP: Integer
15
+
16
+ attr_reader directory: String
17
+
18
+ @interfaces: Array[Hash[String, untyped]]
19
+
20
+ # @rbs (?parent: String?, ?directory: String?, ?recover: bool) -> void
21
+ def initialize: (?parent: String?, ?directory: String?, ?recover: bool) -> void
22
+
23
+ # @rbs (String directory) -> FrameStore
24
+ def self.recover: (String directory) -> FrameStore
25
+
26
+ # @rbs () -> Integer
27
+ def count: () -> Integer
28
+
29
+ # @rbs () -> Integer
30
+ # Published only after both files flush; reading the immutable count must not wait for writer IO.
31
+ def durable_count: () -> Integer
32
+
33
+ # @rbs (Frame frame) -> Integer
34
+ def append: (Frame frame) -> Integer
35
+
36
+ # @rbs () -> self
37
+ def flush: () -> self
38
+
39
+ # @rbs (Integer number) -> frame_metadata
40
+ def metadata: (Integer number) -> frame_metadata
41
+
42
+ # @rbs (Integer number) -> Frame
43
+ def read: (Integer number) -> Frame
44
+
45
+ # @rbs () -> Array[Hash[String, untyped]]
46
+ def interfaces: () -> Array[Hash[String, untyped]]
47
+
48
+ # @rbs (?remove: bool) -> void
49
+ def close: (?remove: bool) -> void
50
+
51
+ private
52
+
53
+ # @rbs (String name, String mode) -> File
54
+ def private_file: (String name, String mode) -> File
55
+
56
+ def validate_directory: () -> untyped
57
+
58
+ def persist: (untyped name, untyped value) -> untyped
59
+
60
+ def intern_interface: (untyped value) -> untyped
61
+
62
+ def restore: () -> untyped
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,36 @@
1
+ # Generated from lib/vanken/core/frame_view.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Core
5
+ class FrameView
6
+ # @rbs (App::Document document, Integer number, ?packet: Gateway::PacketView?, ?snapshot: Hash[Symbol, untyped]?) -> void
7
+ def initialize: (App::Document document, Integer number, ?packet: Gateway::PacketView?, ?snapshot: Hash[Symbol, untyped]?) -> void
8
+
9
+ # @rbs (String name) -> bool
10
+ def layer?: (String name) -> bool
11
+
12
+ # @rbs (String name) -> Symbol?
13
+ def field_type: (String name) -> Symbol?
14
+
15
+ # @rbs (String name) -> Array[untyped]
16
+ def values: (String name) -> Array[untyped]
17
+
18
+ private
19
+
20
+ # @rbs () -> frame_metadata
21
+ def metadata: () -> frame_metadata
22
+
23
+ # @rbs () -> column_values
24
+ def column: () -> column_values
25
+
26
+ # @rbs () -> annotation_values
27
+ def annotation: () -> annotation_values
28
+
29
+ # @rbs () -> Gateway::PacketView | Gateway::PacketSnapshot
30
+ def packet: () -> Gateway::PacketView
31
+
32
+ # @rbs () -> Float
33
+ def displayed_delta: () -> Float
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,110 @@
1
+ # Generated from lib/vanken/core/stores.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Core
5
+ class InternTable
6
+ # @rbs! @values: Array[String]
7
+ # @rbs! @ids: Hash[String, Integer]
8
+ # @rbs () -> void
9
+ def initialize: () -> void
10
+
11
+ # @rbs (String value) -> Integer
12
+ def intern: (String value) -> Integer
13
+
14
+ # @rbs (Integer id) -> String
15
+ def []: (Integer id) -> String
16
+
17
+ # @rbs () -> Integer
18
+ def size: () -> Integer
19
+
20
+ # @rbs (Integer index) -> Array[String]
21
+ def since: (Integer index) -> Array[String]
22
+ end
23
+
24
+ class ColumnStore
25
+ FORMAT: ::String
26
+
27
+ SIZE: ::Integer
28
+
29
+ attr_reader strings: InternTable
30
+
31
+ # @rbs! @protocol_ids: Hash[String, Integer]
32
+ # @rbs! @protocol_names: Array[String]
33
+ # @rbs! @transport_values: Hash[Integer, Hash[String, Array[Integer]]]
34
+ # @rbs! @base: Integer
35
+ # @rbs! @string_cursor: Integer
36
+ # @rbs! @protocol_cursor: Integer
37
+ # @rbs () -> void
38
+ def initialize: () -> void
39
+
40
+ # @rbs (column_values values) -> void
41
+ def append: (column_values values) -> void
42
+
43
+ # Transfer a batch without retaining a second copy of every frame in the worker.
44
+ # @rbs () -> Hash[Symbol, untyped]
45
+ def drain: () -> Hash[Symbol, untyped]
46
+
47
+ # @rbs (Hash[Symbol, untyped] batch) -> void
48
+ def import: (Hash[Symbol, untyped] batch) -> void
49
+
50
+ # @rbs (Integer number) -> column_values
51
+ def []: (Integer number) -> column_values
52
+
53
+ # @rbs (Integer number, String name) -> bool?
54
+ def layer?: (Integer number, String name) -> bool?
55
+
56
+ # @rbs (Integer number, String name) -> Array[Integer]
57
+ def port_values: (Integer number, String name) -> Array[Integer]
58
+ end
59
+
60
+ class AnnotationStore
61
+ FLAGS: untyped
62
+
63
+ FORMAT: ::String
64
+
65
+ SIZE: ::Integer
66
+
67
+ attr_reader streams: Hash[Integer, Array[Integer]]
68
+
69
+ attr_reader experts: Hash[Integer, Array[Hash[Symbol, untyped]]]
70
+
71
+ # @rbs! @extra: Hash[Integer, Hash[String, untyped]]
72
+ # @rbs! @io: File?
73
+ # @rbs (String directory, ?persist: bool) -> void
74
+ def initialize: (String directory, ?persist: bool) -> void
75
+
76
+ # @rbs (Integer number, annotation_values annotation) -> void
77
+ def append: (Integer number, annotation_values annotation) -> void
78
+
79
+ # @rbs () -> Hash[Symbol, untyped]
80
+ def drain: () -> Hash[Symbol, untyped]
81
+
82
+ # @rbs (Hash[Symbol, untyped] batch) -> void
83
+ def import: (Hash[Symbol, untyped] batch) -> void
84
+
85
+ # @rbs (Integer number) -> annotation_values
86
+ def []: (Integer number) -> annotation_values
87
+
88
+ # @rbs () -> void
89
+ def flush: () -> void
90
+
91
+ # @rbs (String path) -> String
92
+ def snapshot: (String path) -> String
93
+
94
+ # @rbs () -> void
95
+ def close: () -> void
96
+ end
97
+
98
+ class RowCache
99
+ # @rbs! @entries: Hash[untyped, untyped]
100
+ # @rbs (?limit: Integer) -> void
101
+ def initialize: (?limit: Integer) -> void
102
+
103
+ # @rbs [T] (untyped key) { () -> T } -> T
104
+ def fetch: [T] (untyped key) { () -> T } -> T
105
+
106
+ # @rbs () -> void
107
+ def clear: () -> void
108
+ end
109
+ end
110
+ end
@@ -0,0 +1,18 @@
1
+ # Generated from lib/vanken/errors.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ class Error < StandardError
5
+ end
6
+
7
+ class FileError < Error
8
+ end
9
+
10
+ class CaptureError < Error
11
+ end
12
+
13
+ class ConfigError < Error
14
+ end
15
+
16
+ class FilterError < Error
17
+ end
18
+ end
@@ -0,0 +1,17 @@
1
+ # Generated from lib/vanken/gateway/capture_filter.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Gateway
5
+ module CaptureFilter
6
+ class Error < StandardError
7
+ attr_reader position: Integer?
8
+
9
+ # @rbs (String message, ?position: Integer?) -> void
10
+ def initialize: (String message, ?position: Integer?) -> void
11
+ end
12
+
13
+ # @rbs (String expression, ?linktype: Integer, ?snaplen: Integer, ?live: bool) -> Redhound::Filter::Program
14
+ def self.compile: (String expression, ?linktype: Integer, ?snaplen: Integer, ?live: bool) -> Redhound::Filter::Program
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,21 @@
1
+ # Generated from lib/vanken/gateway/detail_builder.rb with RBS::Inline
2
+
3
+ module Vanken
4
+ module Gateway
5
+ class DetailBuilder
6
+ # @rbs (PacketView packet, ?annotations: Core::annotation_values?) -> Array[Core::DetailNode]
7
+ def build: (PacketView packet, ?annotations: Core::annotation_values?) -> Array[Core::DetailNode]
8
+
9
+ private
10
+
11
+ # @rbs (untyped value, ?Symbol? type) -> String
12
+ def literal: (untyped value, ?Symbol? type) -> String
13
+
14
+ # @rbs (untyped value) -> String
15
+ def escape: (untyped value) -> String
16
+
17
+ # @rbs (String id, String label, ?field: String?, ?offset: Integer?, ?length: Integer, ?source: Symbol, ?severity: Symbol?, ?filter: String?, ?children: Array[Core::DetailNode]) -> Core::DetailNode
18
+ def node: (String id, String label, ?field: String?, ?offset: Integer?, ?length: Integer, ?source: Symbol, ?severity: Symbol?, ?filter: String?, ?children: Array[Core::DetailNode]) -> Core::DetailNode
19
+ end
20
+ end
21
+ end