mt-lang 0.3.8 → 0.3.10

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 (200) hide show
  1. checksums.yaml +4 -4
  2. data/lib/milk_tea/base.rb +1 -2
  3. data/lib/milk_tea/bindings/bindgen/ast_parser.rb +0 -2
  4. data/lib/milk_tea/bindings/bindgen/declaration.rb +0 -2
  5. data/lib/milk_tea/bindings/bindgen/emitter.rb +0 -2
  6. data/lib/milk_tea/bindings/bindgen/overrides.rb +0 -2
  7. data/lib/milk_tea/bindings/bindgen/type_mapper.rb +51 -53
  8. data/lib/milk_tea/bindings/imported_bindings/generator.rb +7 -9
  9. data/lib/milk_tea/bindings/imported_bindings/method_source.rb +0 -2
  10. data/lib/milk_tea/bindings/imported_bindings/naming.rb +6 -8
  11. data/lib/milk_tea/bindings/imported_bindings.rb +0 -2
  12. data/lib/milk_tea/bindings/opengl_registry.rb +3 -7
  13. data/lib/milk_tea/bindings/steamworks.rb +12 -16
  14. data/lib/milk_tea/bindings/upstream_sources.rb +10 -14
  15. data/lib/milk_tea/bindings/vendored_box2d.rb +10 -12
  16. data/lib/milk_tea/bindings/vendored_cjson.rb +6 -8
  17. data/lib/milk_tea/bindings/vendored_flecs.rb +10 -12
  18. data/lib/milk_tea/bindings/vendored_glfw.rb +11 -13
  19. data/lib/milk_tea/bindings/vendored_libuv.rb +11 -13
  20. data/lib/milk_tea/bindings/vendored_pcre2.rb +11 -13
  21. data/lib/milk_tea/bindings/vendored_raylib.rb +6 -10
  22. data/lib/milk_tea/bindings/vendored_sdl3.rb +11 -13
  23. data/lib/milk_tea/bindings/vendored_steamworks.rb +1 -5
  24. data/lib/milk_tea/core/ast.rb +103 -45
  25. data/lib/milk_tea/core/async_runtime_installer.rb +0 -2
  26. data/lib/milk_tea/core/bindings/attribute_binding.rb +1 -3
  27. data/lib/milk_tea/core/c_backend/aggregate_utils.rb +147 -84
  28. data/lib/milk_tea/core/c_backend/control_flow_emission.rb +394 -396
  29. data/lib/milk_tea/core/c_backend/expressions.rb +489 -476
  30. data/lib/milk_tea/core/c_backend/feature_detection.rb +446 -437
  31. data/lib/milk_tea/core/c_backend/format_helpers.rb +0 -2
  32. data/lib/milk_tea/core/c_backend/reachability.rb +339 -341
  33. data/lib/milk_tea/core/c_backend/reinterpret.rb +231 -217
  34. data/lib/milk_tea/core/c_backend/runtime_helpers.rb +531 -526
  35. data/lib/milk_tea/core/c_backend/statements.rb +528 -530
  36. data/lib/milk_tea/core/c_backend/type_collectors.rb +1344 -1346
  37. data/lib/milk_tea/core/c_backend/type_declaration.rb +215 -213
  38. data/lib/milk_tea/core/c_backend/type_system.rb +347 -349
  39. data/lib/milk_tea/core/c_backend.rb +17 -9
  40. data/lib/milk_tea/core/compatibility_helpers.rb +0 -2
  41. data/lib/milk_tea/core/compile_time/const_eval.rb +7 -12
  42. data/lib/milk_tea/core/compile_time.rb +32 -38
  43. data/lib/milk_tea/core/control_flow/builder.rb +3 -5
  44. data/lib/milk_tea/core/control_flow/constant_propagation.rb +14 -17
  45. data/lib/milk_tea/core/control_flow/definite_assignment.rb +0 -1
  46. data/lib/milk_tea/core/ir.rb +10 -10
  47. data/lib/milk_tea/core/lexer/character_classes.rb +5 -7
  48. data/lib/milk_tea/core/lexer/format_strings.rb +7 -9
  49. data/lib/milk_tea/core/lexer/heredocs.rb +22 -22
  50. data/lib/milk_tea/core/lexer/indentation.rb +0 -2
  51. data/lib/milk_tea/core/lexer/numbers.rb +0 -2
  52. data/lib/milk_tea/core/lexer/recovery.rb +0 -2
  53. data/lib/milk_tea/core/lexer/strings.rb +0 -2
  54. data/lib/milk_tea/core/lexer/symbols.rb +0 -2
  55. data/lib/milk_tea/core/lexer/trivia.rb +0 -2
  56. data/lib/milk_tea/core/lexer.rb +0 -2
  57. data/lib/milk_tea/core/lowering/async/analysis.rb +0 -2
  58. data/lib/milk_tea/core/lowering/async/lowering.rb +1264 -1265
  59. data/lib/milk_tea/core/lowering/async/normalization.rb +0 -2
  60. data/lib/milk_tea/core/lowering/async.rb +627 -630
  61. data/lib/milk_tea/core/lowering/block.rb +413 -416
  62. data/lib/milk_tea/core/lowering/calls.rb +1381 -1384
  63. data/lib/milk_tea/core/lowering/declarations.rb +180 -183
  64. data/lib/milk_tea/core/lowering/dyn.rb +48 -50
  65. data/lib/milk_tea/core/lowering/events.rb +983 -985
  66. data/lib/milk_tea/core/lowering/expressions.rb +1513 -1518
  67. data/lib/milk_tea/core/lowering/foreign_cstr.rb +181 -184
  68. data/lib/milk_tea/core/lowering/functions.rb +185 -188
  69. data/lib/milk_tea/core/lowering/loops.rb +1028 -1031
  70. data/lib/milk_tea/core/lowering/proc.rb +363 -366
  71. data/lib/milk_tea/core/lowering/resolve.rb +2133 -2135
  72. data/lib/milk_tea/core/lowering/scans.rb +179 -181
  73. data/lib/milk_tea/core/lowering/str_buffer.rb +102 -105
  74. data/lib/milk_tea/core/lowering/utils.rb +1040 -1044
  75. data/lib/milk_tea/core/lowering.rb +5 -7
  76. data/lib/milk_tea/core/module_binder.rb +0 -2
  77. data/lib/milk_tea/core/module_loader/errors.rb +4 -2
  78. data/lib/milk_tea/core/module_loader.rb +113 -20
  79. data/lib/milk_tea/core/module_path_resolver.rb +0 -2
  80. data/lib/milk_tea/core/module_roots.rb +6 -8
  81. data/lib/milk_tea/core/parser/attributes.rb +0 -2
  82. data/lib/milk_tea/core/parser/blocks.rb +0 -2
  83. data/lib/milk_tea/core/parser/declarations.rb +0 -2
  84. data/lib/milk_tea/core/parser/expressions.rb +31 -14
  85. data/lib/milk_tea/core/parser/recovery.rb +0 -2
  86. data/lib/milk_tea/core/parser/statements.rb +0 -2
  87. data/lib/milk_tea/core/parser/types.rb +8 -10
  88. data/lib/milk_tea/core/parser.rb +1 -3
  89. data/lib/milk_tea/core/pretty_printer/ast_formatter.rb +31 -33
  90. data/lib/milk_tea/core/pretty_printer/base_formatter.rb +0 -2
  91. data/lib/milk_tea/core/pretty_printer/ir_formatter.rb +0 -2
  92. data/lib/milk_tea/core/semantic_analyzer/analysis_context.rb +0 -2
  93. data/lib/milk_tea/core/semantic_analyzer/attributes.rb +14 -16
  94. data/lib/milk_tea/core/semantic_analyzer/calls.rb +0 -2
  95. data/lib/milk_tea/core/semantic_analyzer/expressions.rb +1 -14
  96. data/lib/milk_tea/core/semantic_analyzer/flow_refinement.rb +18 -21
  97. data/lib/milk_tea/core/semantic_analyzer/foreign_functions.rb +0 -3
  98. data/lib/milk_tea/core/semantic_analyzer/function_binding.rb +12 -15
  99. data/lib/milk_tea/core/semantic_analyzer/generics.rb +57 -59
  100. data/lib/milk_tea/core/semantic_analyzer/interface_conformance.rb +0 -2
  101. data/lib/milk_tea/core/semantic_analyzer/name_resolution.rb +5 -9
  102. data/lib/milk_tea/core/semantic_analyzer/nullability.rb +0 -3
  103. data/lib/milk_tea/core/semantic_analyzer/statements.rb +35 -40
  104. data/lib/milk_tea/core/semantic_analyzer/top_level.rb +10 -12
  105. data/lib/milk_tea/core/semantic_analyzer/type_compatibility.rb +0 -6
  106. data/lib/milk_tea/core/semantic_analyzer/type_declaration.rb +102 -105
  107. data/lib/milk_tea/core/semantic_analyzer.rb +17 -8
  108. data/lib/milk_tea/core/types/layout.rb +21 -22
  109. data/lib/milk_tea/core/types/predicates.rb +0 -2
  110. data/lib/milk_tea/core/types/registry.rb +16 -18
  111. data/lib/milk_tea/core/types/visitor.rb +0 -4
  112. data/lib/milk_tea/dap/backends/lldb_dap.rb +0 -2
  113. data/lib/milk_tea/dap/protocol.rb +1 -1
  114. data/lib/milk_tea/dap/server/breakpoints.rb +0 -2
  115. data/lib/milk_tea/dap/server/debug_map.rb +0 -2
  116. data/lib/milk_tea/dap/server/handlers.rb +0 -2
  117. data/lib/milk_tea/dap/server/launch.rb +0 -2
  118. data/lib/milk_tea/dap/server/lldb_backend.rb +8 -10
  119. data/lib/milk_tea/dap/server/pause_diagnostics.rb +14 -16
  120. data/lib/milk_tea/dap/server/utilities.rb +0 -2
  121. data/lib/milk_tea/dap/server/wire.rb +0 -2
  122. data/lib/milk_tea/dap/server.rb +0 -2
  123. data/lib/milk_tea/lsp/diagnostics.rb +16 -16
  124. data/lib/milk_tea/lsp/server/call_hierarchy.rb +11 -12
  125. data/lib/milk_tea/lsp/server/code_actions.rb +355 -357
  126. data/lib/milk_tea/lsp/server/code_lens.rb +23 -25
  127. data/lib/milk_tea/lsp/server/completion.rb +873 -875
  128. data/lib/milk_tea/lsp/server/configuration.rb +129 -131
  129. data/lib/milk_tea/lsp/server/debug_info.rb +0 -2
  130. data/lib/milk_tea/lsp/server/definition.rb +564 -565
  131. data/lib/milk_tea/lsp/server/diagnostics_scheduling.rb +191 -193
  132. data/lib/milk_tea/lsp/server/execute_command.rb +0 -2
  133. data/lib/milk_tea/lsp/server/folding_range.rb +0 -4
  134. data/lib/milk_tea/lsp/server/formatting.rb +478 -480
  135. data/lib/milk_tea/lsp/server/hover.rb +1282 -1284
  136. data/lib/milk_tea/lsp/server/inlay_hints.rb +179 -181
  137. data/lib/milk_tea/lsp/server/lifecycle.rb +192 -194
  138. data/lib/milk_tea/lsp/server/linked_editing_range.rb +0 -2
  139. data/lib/milk_tea/lsp/server/on_type_formatting.rb +0 -2
  140. data/lib/milk_tea/lsp/server/progress.rb +0 -2
  141. data/lib/milk_tea/lsp/server/references.rb +316 -318
  142. data/lib/milk_tea/lsp/server/rename.rb +445 -447
  143. data/lib/milk_tea/lsp/server/selection_range.rb +0 -4
  144. data/lib/milk_tea/lsp/server/semantic_tokens.rb +1318 -1320
  145. data/lib/milk_tea/lsp/server/signature_help.rb +146 -148
  146. data/lib/milk_tea/lsp/server/text_documents.rb +99 -101
  147. data/lib/milk_tea/lsp/server/type_hierarchy.rb +2 -4
  148. data/lib/milk_tea/lsp/server/utilities.rb +397 -399
  149. data/lib/milk_tea/lsp/server.rb +0 -3
  150. data/lib/milk_tea/lsp/workspace/analysis.rb +40 -42
  151. data/lib/milk_tea/lsp/workspace/dependency_graph.rb +4 -10
  152. data/lib/milk_tea/lsp/workspace/utilities.rb +19 -19
  153. data/lib/milk_tea/packages/atomic_write.rb +4 -5
  154. data/lib/milk_tea/packages/dependency_solver.rb +15 -15
  155. data/lib/milk_tea/packages/lock.rb +4 -4
  156. data/lib/milk_tea/packages/manager_cli.rb +1 -1
  157. data/lib/milk_tea/packages/manifest.rb +3 -3
  158. data/lib/milk_tea/packages/registry_store.rb +4 -6
  159. data/lib/milk_tea/packages/services.rb +16 -16
  160. data/lib/milk_tea/packages/source_cache.rb +4 -6
  161. data/lib/milk_tea/packages/source_resolver.rb +44 -44
  162. data/lib/milk_tea/packages/version.rb +8 -8
  163. data/lib/milk_tea/tooling/build.rb +3 -7
  164. data/lib/milk_tea/tooling/build_cache.rb +0 -2
  165. data/lib/milk_tea/tooling/debug_info_formatter.rb +31 -33
  166. data/lib/milk_tea/tooling/debug_map.rb +8 -10
  167. data/lib/milk_tea/tooling/docs_app.rb +0 -2
  168. data/lib/milk_tea/tooling/linter/doc_tags.rb +25 -27
  169. data/lib/milk_tea/tooling/linter/fix_engine.rb +87 -24
  170. data/lib/milk_tea/tooling/linter/flow_rules.rb +44 -46
  171. data/lib/milk_tea/tooling/linter/imports_platform.rb +14 -16
  172. data/lib/milk_tea/tooling/linter/release_rules.rb +3 -5
  173. data/lib/milk_tea/tooling/linter/reserved_names.rb +23 -25
  174. data/lib/milk_tea/tooling/linter/rules.rb +87 -89
  175. data/lib/milk_tea/tooling/linter/source_helpers.rb +40 -42
  176. data/lib/milk_tea/tooling/linter/trailing_comma.rb +17 -19
  177. data/lib/milk_tea/tooling/linter/visitors.rb +162 -50
  178. data/lib/milk_tea/tooling/linter.rb +0 -2
  179. data/lib/milk_tea/tooling/project_scaffold.rb +0 -2
  180. data/lib/milk_tea/tooling/run.rb +0 -2
  181. data/lib/milk_tea/tooling/toolchain_cli.rb +0 -2
  182. data/std/cli.mt +13 -32
  183. data/std/color.mt +28 -28
  184. data/std/encoding.mt +4 -4
  185. data/std/graph.mt +1 -2
  186. data/std/hash.mt +14 -14
  187. data/std/http/server.mt +3 -3
  188. data/std/input.mt +1 -1
  189. data/std/json.mt +1 -1
  190. data/std/linear_algebra.mt +6 -6
  191. data/std/net/mux.mt +1 -1
  192. data/std/noise.mt +23 -23
  193. data/std/parse.mt +2 -2
  194. data/std/process.mt +3 -4
  195. data/std/sparse_set.mt +1 -1
  196. data/std/steering.mt +5 -5
  197. data/std/str.mt +1 -1
  198. data/std/tween.mt +4 -4
  199. data/std/utility.mt +3 -3
  200. metadata +2 -2
@@ -4,164 +4,162 @@ module MilkTea
4
4
  module LSP
5
5
  class Server
6
6
  module ServerConfiguration
7
- private
8
-
9
- def pull_client_configuration
10
- items = [
11
- { section: 'milkTea.format.mode' },
12
- { section: 'milkTea.lsp.dependencyResolution' },
13
- { section: 'milkTea.lsp.platform' },
14
- { section: 'milkTea.lsp.strictCurrentRootDiagnostics' },
15
- ]
16
- Protocol.send_request('workspace/configuration', { items: items }) do |result, error|
17
- if error
18
- warn "Configuration pull failed: #{error['message']}"
19
- elsif result.is_a?(Array)
20
- settings = {}
21
- items.each_with_index do |item, idx|
22
- value = result[idx]
23
- next if value.nil?
24
- section_parts = item[:section].split('.')
25
- current = settings
26
- section_parts[0...-1].each { |k| current = (current[k] ||= {}) }
27
- current[section_parts.last] = value
7
+ def pull_client_configuration
8
+ items = [
9
+ { section: 'milkTea.format.mode' },
10
+ { section: 'milkTea.lsp.dependencyResolution' },
11
+ { section: 'milkTea.lsp.platform' },
12
+ { section: 'milkTea.lsp.strictCurrentRootDiagnostics' },
13
+ ]
14
+ Protocol.send_request('workspace/configuration', { items: items }) do |result, error|
15
+ if error
16
+ warn "Configuration pull failed: #{error['message']}"
17
+ elsif result.is_a?(Array)
18
+ settings = {}
19
+ items.each_with_index do |item, idx|
20
+ value = result[idx]
21
+ next if value.nil?
22
+ section_parts = item[:section].split('.')
23
+ current = settings
24
+ section_parts[0...-1].each { |k| current = (current[k] ||= {}) }
25
+ current[section_parts.last] = value
26
+ end
27
+ apply_configuration_settings(settings)
28
28
  end
29
- apply_configuration_settings(settings)
30
29
  end
31
30
  end
32
- end
33
31
 
34
- def apply_configuration_settings(settings)
35
- mode = formatter_mode_from_settings(settings)
36
- @format_mode = mode if mode
32
+ def apply_configuration_settings(settings)
33
+ mode = formatter_mode_from_settings(settings)
34
+ @format_mode = mode if mode
37
35
 
38
- dependency_resolution_mode = dependency_resolution_mode_from_settings(settings)
39
- apply_dependency_resolution_mode(dependency_resolution_mode) if dependency_resolution_mode
36
+ dependency_resolution_mode = dependency_resolution_mode_from_settings(settings)
37
+ apply_dependency_resolution_mode(dependency_resolution_mode) if dependency_resolution_mode
40
38
 
41
- platform_provided, platform_override = platform_override_from_settings(settings)
42
- apply_platform_override(platform_override) if platform_provided
39
+ platform_provided, platform_override = platform_override_from_settings(settings)
40
+ apply_platform_override(platform_override) if platform_provided
43
41
 
44
- strict_root_provided, strict_root_enabled = strict_current_root_diagnostics_from_settings(settings)
45
- apply_strict_current_root_diagnostics(strict_root_enabled) if strict_root_provided
46
- end
42
+ strict_root_provided, strict_root_enabled = strict_current_root_diagnostics_from_settings(settings)
43
+ apply_strict_current_root_diagnostics(strict_root_enabled) if strict_root_provided
44
+ end
47
45
 
48
- def formatter_mode_from_settings(settings)
49
- return nil unless settings.is_a?(Hash)
46
+ def formatter_mode_from_settings(settings)
47
+ return nil unless settings.is_a?(Hash)
50
48
 
51
- mode =
52
- settings.dig('milkTea', 'format', 'mode') ||
53
- settings.dig('milk_tea', 'format', 'mode') ||
54
- settings.dig('format', 'mode')
55
- return nil unless mode
49
+ mode =
50
+ settings.dig('milkTea', 'format', 'mode') ||
51
+ settings.dig('milk_tea', 'format', 'mode') ||
52
+ settings.dig('format', 'mode')
53
+ return nil unless mode
56
54
 
57
- normalized = mode.to_s.strip.downcase.to_sym
58
- return normalized if Formatter::MODES.include?(normalized)
55
+ normalized = mode.to_s.strip.downcase.to_sym
56
+ return normalized if Formatter::MODES.include?(normalized)
59
57
 
60
- nil
61
- end
58
+ nil
59
+ end
62
60
 
63
- def dependency_resolution_mode_from_settings(settings)
64
- return nil unless settings.is_a?(Hash)
61
+ def dependency_resolution_mode_from_settings(settings)
62
+ return nil unless settings.is_a?(Hash)
65
63
 
66
- mode =
67
- settings.dig('milkTea', 'lsp', 'dependencyResolution') ||
68
- settings.dig('milk_tea', 'lsp', 'dependencyResolution') ||
69
- settings.dig('lsp', 'dependencyResolution')
70
- return nil unless mode
64
+ mode =
65
+ settings.dig('milkTea', 'lsp', 'dependencyResolution') ||
66
+ settings.dig('milk_tea', 'lsp', 'dependencyResolution') ||
67
+ settings.dig('lsp', 'dependencyResolution')
68
+ return nil unless mode
71
69
 
72
- normalized = DependencyResolution.normalize_mode(mode)
73
- return normalized if DependencyResolution::MODES.include?(normalized)
70
+ normalized = DependencyResolution.normalize_mode(mode)
71
+ return normalized if DependencyResolution::MODES.include?(normalized)
74
72
 
75
- nil
76
- end
73
+ nil
74
+ end
77
75
 
78
- def platform_override_from_settings(settings)
79
- return [false, nil] unless settings.is_a?(Hash)
76
+ def platform_override_from_settings(settings)
77
+ return [false, nil] unless settings.is_a?(Hash)
80
78
 
81
- value =
82
- settings.dig('milkTea', 'lsp', 'platform') ||
83
- settings.dig('milk_tea', 'lsp', 'platform') ||
84
- settings.dig('lsp', 'platform')
85
- return [false, nil] if value.nil?
79
+ value =
80
+ settings.dig('milkTea', 'lsp', 'platform') ||
81
+ settings.dig('milk_tea', 'lsp', 'platform') ||
82
+ settings.dig('lsp', 'platform')
83
+ return [false, nil] if value.nil?
86
84
 
87
- normalized = value.to_s.strip.downcase
88
- return [true, nil] if normalized.empty? || normalized == 'auto'
85
+ normalized = value.to_s.strip.downcase
86
+ return [true, nil] if normalized.empty? || normalized == 'auto'
89
87
 
90
- [true, ModuleLoader.normalize_platform_name(normalized)]
91
- rescue ArgumentError
92
- [false, nil]
93
- end
88
+ [true, ModuleLoader.normalize_platform_name(normalized)]
89
+ rescue ArgumentError
90
+ [false, nil]
91
+ end
94
92
 
95
- def strict_current_root_diagnostics_from_settings(settings)
96
- return [false, nil] unless settings.is_a?(Hash)
97
-
98
- value =
99
- settings.dig('milkTea', 'lsp', 'strictCurrentRootDiagnostics') ||
100
- settings.dig('milk_tea', 'lsp', 'strictCurrentRootDiagnostics') ||
101
- settings.dig('lsp', 'strictCurrentRootDiagnostics')
102
- return [false, nil] if value.nil?
103
-
104
- normalized = case value
105
- when true, false
106
- value
107
- else
108
- case value.to_s.strip.downcase
109
- when 'true', '1', 'yes', 'on'
110
- true
111
- when 'false', '0', 'no', 'off', ''
112
- false
113
- else
114
- return [false, nil]
115
- end
116
- end
117
-
118
- [true, normalized]
119
- end
93
+ def strict_current_root_diagnostics_from_settings(settings)
94
+ return [false, nil] unless settings.is_a?(Hash)
95
+
96
+ value =
97
+ settings.dig('milkTea', 'lsp', 'strictCurrentRootDiagnostics') ||
98
+ settings.dig('milk_tea', 'lsp', 'strictCurrentRootDiagnostics') ||
99
+ settings.dig('lsp', 'strictCurrentRootDiagnostics')
100
+ return [false, nil] if value.nil?
101
+
102
+ normalized = case value
103
+ when true, false
104
+ value
105
+ else
106
+ case value.to_s.strip.downcase
107
+ when 'true', '1', 'yes', 'on'
108
+ true
109
+ when 'false', '0', 'no', 'off', ''
110
+ false
111
+ else
112
+ return [false, nil]
113
+ end
114
+ end
115
+
116
+ [true, normalized]
117
+ end
120
118
 
121
- def apply_dependency_resolution_mode(mode)
122
- normalized = DependencyResolution.normalize_mode(mode)
123
- return if @dependency_resolution_mode == normalized
124
-
125
- @dependency_resolution_mode = normalized
126
- @workspace.dependency_resolution_mode = normalized
127
- @diagnostic_report_cache.clear
128
- @workspace_diagnostic_cache.clear
129
- open_uris = @workspace.open_document_uris
130
- invalidate_document_caches_for(open_uris)
131
- open_uris.each do |uri|
132
- schedule_diagnostics(uri, force: true, lint_tier: :full) unless @workspace.background_document?(uri)
119
+ def apply_dependency_resolution_mode(mode)
120
+ normalized = DependencyResolution.normalize_mode(mode)
121
+ return if @dependency_resolution_mode == normalized
122
+
123
+ @dependency_resolution_mode = normalized
124
+ @workspace.dependency_resolution_mode = normalized
125
+ @diagnostic_report_cache.clear
126
+ @workspace_diagnostic_cache.clear
127
+ open_uris = @workspace.open_document_uris
128
+ invalidate_document_caches_for(open_uris)
129
+ open_uris.each do |uri|
130
+ schedule_diagnostics(uri, force: true, lint_tier: :full) unless @workspace.background_document?(uri)
131
+ end
133
132
  end
134
- end
135
133
 
136
- def apply_platform_override(platform)
137
- normalized = platform.nil? ? nil : ModuleLoader.normalize_platform_name(platform)
138
- return if @platform_override == normalized
139
-
140
- @platform_override = normalized
141
- @workspace.platform_override = normalized
142
- @diagnostic_report_cache.clear
143
- @workspace_diagnostic_cache.clear
144
- open_uris = @workspace.open_document_uris
145
- invalidate_document_caches_for(open_uris)
146
- open_uris.each do |uri|
147
- schedule_diagnostics(uri, force: true, lint_tier: :full) unless @workspace.background_document?(uri)
134
+ def apply_platform_override(platform)
135
+ normalized = platform.nil? ? nil : ModuleLoader.normalize_platform_name(platform)
136
+ return if @platform_override == normalized
137
+
138
+ @platform_override = normalized
139
+ @workspace.platform_override = normalized
140
+ @diagnostic_report_cache.clear
141
+ @workspace_diagnostic_cache.clear
142
+ open_uris = @workspace.open_document_uris
143
+ invalidate_document_caches_for(open_uris)
144
+ open_uris.each do |uri|
145
+ schedule_diagnostics(uri, force: true, lint_tier: :full) unless @workspace.background_document?(uri)
146
+ end
148
147
  end
149
- end
150
148
 
151
- def apply_strict_current_root_diagnostics(enabled)
152
- normalized = !!enabled
153
- return if @workspace.strict_current_root_diagnostics_enabled == normalized
154
-
155
- @workspace.strict_current_root_diagnostics_enabled = normalized
156
- @diagnostic_report_cache.clear
157
- @workspace_diagnostic_cache.clear
158
- open_uris = @workspace.open_document_uris
159
- invalidate_document_caches_for(open_uris)
160
- open_uris.each do |uri|
161
- schedule_diagnostics(uri, force: true, lint_tier: :full) unless @workspace.background_document?(uri)
149
+ def apply_strict_current_root_diagnostics(enabled)
150
+ normalized = !!enabled
151
+ return if @workspace.strict_current_root_diagnostics_enabled == normalized
152
+
153
+ @workspace.strict_current_root_diagnostics_enabled = normalized
154
+ @diagnostic_report_cache.clear
155
+ @workspace_diagnostic_cache.clear
156
+ open_uris = @workspace.open_document_uris
157
+ invalidate_document_caches_for(open_uris)
158
+ open_uris.each do |uri|
159
+ schedule_diagnostics(uri, force: true, lint_tier: :full) unless @workspace.background_document?(uri)
160
+ end
162
161
  end
163
162
  end
164
- end
165
163
  end
166
164
  end
167
165
  end
@@ -4,8 +4,6 @@ module MilkTea
4
4
  module LSP
5
5
  class Server
6
6
  module ServerDebugInfo
7
- private
8
-
9
7
  def handle_debug_info(params)
10
8
  uri = params.dig('textDocument', 'uri')
11
9
  return { text: 'error: no textDocument.uri' } unless uri