hind 0.1.10 → 0.1.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 17d40e3480263f8d89fafaa68331c385b59cec00d33b663b4137b1650c442a0b
4
- data.tar.gz: 997d038c73557a51589b6aa60b48e2de46eeec70e5973decb51f2a959f1a4cbf
3
+ metadata.gz: 47976412f00e1ef73ece58033efbfbdc363deeafd8c02b773b8d4416808819f9
4
+ data.tar.gz: 1712f5118a6d4fe4fd05cc25cd425288fa1fffe0bba8368ac9d020249332229b
5
5
  SHA512:
6
- metadata.gz: d92e2fc4d5fa9f17318eb365c0bc8b65a460ad5f3352c0823b3a3e58b3304df78b962cc5509d230821db165f8aaffdd2c46dd39d031c9637f4e17ad9698c7fe1
7
- data.tar.gz: 49ac671929d1e06dd8b706c37512465cd231bf9ba4a011205edf84c3704e53e2b3d779d4a5c29491c22d819cb5dc4564c0bab688ea5fa74f7a092089cfc1660e
6
+ metadata.gz: ed15005304b079cefc8525fcd7fb534af2ab743f8fc4e68fdade9deb54d8e1e94a11a02441e815e6cb453ce4399ef91a0ae077f929b75b341e569de57fba8759
7
+ data.tar.gz: '08c465616f3f62a28882a80e1b637341604ac2725d8dd1b1ef7c4b8d908ada3c53ff5d53534573bbdb12aeab988e26944f75f297ef12afe9376b9a762d4560e8'
data/lib/hind/cli.rb CHANGED
@@ -99,11 +99,6 @@ module Hind
99
99
  )
100
100
  output_file.puts(reference_lsif_data.map(&:to_json).join("\n"))
101
101
  end
102
-
103
- # Finalize and write cross-file references
104
- say 'Processing cross-file references...', :cyan if options[:verbose]
105
- final_references = generator.finalize_references
106
- output_file.puts(final_references.map(&:to_json).join("\n"))
107
102
  end
108
103
  end
109
104
 
@@ -90,30 +90,6 @@ module Hind
90
90
  @initial_data
91
91
  end
92
92
 
93
- def finalize_references
94
- # Restore vertex ID
95
- @vertex_id = @last_vertex_id
96
- # Process all references to create definition results
97
- @global_state.references.each do |qualified_name, references|
98
- declaration = @global_state.declarations[qualified_name]
99
- next unless declaration && declaration[:result_set_id]
100
-
101
- # Create reference result for this symbol
102
- ref_result_id = emit_vertex('referenceResult')
103
- emit_edge('textDocument/references', declaration[:result_set_id], ref_result_id)
104
-
105
- # Group references by document
106
- references_by_doc = references.group_by { |ref| ref[:document_id] }
107
-
108
- # Create item edges for each document's references
109
- references_by_doc.each do |doc_id, refs|
110
- emit_edge('item', ref_result_id, refs.map { |r| r[:range_id] }, 'references', doc_id)
111
- end
112
- end
113
-
114
- @lsif_data
115
- end
116
-
117
93
  def register_declaration(declaration)
118
94
  return unless @current_uri && declaration[:node]
119
95
 
@@ -122,7 +98,15 @@ module Hind
122
98
  setup_document if @document_id.nil?
123
99
  current_doc_id = @document_id
124
100
 
125
- range_id = create_range(declaration[:node].location, declaration[:node].location)
101
+ range_id = if declaration[:type] == :constant_write
102
+ create_range(declaration[:node].name_loc)
103
+ elsif declaration[:type] == :module
104
+ create_range(declaration[:node].module_keyword_loc)
105
+ elsif declaration[:type] == :class
106
+ create_range(declaration[:node].constant_path)
107
+ else
108
+ create_range(declaration[:node].location)
109
+ end
126
110
  return unless range_id
127
111
 
128
112
  result_set_id = emit_vertex('resultSet')
@@ -161,7 +145,7 @@ module Hind
161
145
  setup_document if @document_id.nil?
162
146
  current_doc_id = @document_id
163
147
 
164
- range_id = create_range(reference[:node].location, reference[:node].location)
148
+ range_id = create_range(reference[:node].location)
165
149
  return unless range_id
166
150
 
167
151
  declaration = @global_state.declarations[reference[:name]]
@@ -213,17 +197,17 @@ module Hind
213
197
  end
214
198
  end
215
199
 
216
- def create_range(start_location, end_location)
217
- return nil unless @current_uri && start_location && end_location
200
+ def create_range(location)
201
+ return nil unless @current_uri && location
218
202
 
219
203
  range_id = emit_vertex('range', {
220
204
  start: {
221
- line: start_location.start_line - 1,
222
- character: start_location.start_column
205
+ line: location.start_line - 1, # Convert from 1-based to 0-based numbering
206
+ character: location.start_column
223
207
  },
224
208
  end: {
225
- line: end_location.end_line - 1,
226
- character: end_location.end_column
209
+ line: location.end_line - 1,
210
+ character: location.end_column
227
211
  }
228
212
  })
229
213
 
data/lib/hind/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Hind
4
- VERSION = '0.1.10'
4
+ VERSION = '0.1.12'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hind
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.10
4
+ version: 0.1.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aboobacker MK