Class: Spoom::LSP::SymbolPrinter
- Defined in:
- lib/spoom/sorbet/lsp/structures.rb
Instance Attribute Summary collapse
-
#prefix ⇒ Object
: String?.
-
#seen ⇒ Object
readonly
: Set.
Attributes inherited from Printer
Instance Method Summary collapse
-
#clean_uri(uri) ⇒ Object
: (String uri) -> String.
-
#initialize(out: $stdout, colors: true, indent_level: 0, prefix: nil) ⇒ SymbolPrinter
constructor
: (?out: (IO | StringIO), ?colors: bool, ?indent_level: Integer, ?prefix: String?) -> void.
-
#print_list(objects) ⇒ Object
: (Array objects) -> void.
-
#print_object(object) ⇒ Object
: (PrintableSymbol? object) -> void.
-
#print_objects(objects) ⇒ Object
: (Array objects) -> void.
Methods inherited from Printer
#colorize, #dedent, #indent, #print, #print_colored, #printl, #printn, #printt
Methods included from Colorize
Constructor Details
#initialize(out: $stdout, colors: true, indent_level: 0, prefix: nil) ⇒ SymbolPrinter
: (?out: (IO | StringIO), ?colors: bool, ?indent_level: Integer, ?prefix: String?) -> void
303 304 305 306 307 308 309 310 |
# File 'lib/spoom/sorbet/lsp/structures.rb', line 303 def initialize(out: $stdout, colors: true, indent_level: 0, prefix: nil) super(out: out, colors: colors, indent_level: indent_level) @seen = T.let(Set.new, T::Set[Integer]) @out = out @colors = colors @indent_level = indent_level @prefix = prefix end |
Instance Attribute Details
#prefix ⇒ Object
: String?
300 301 302 |
# File 'lib/spoom/sorbet/lsp/structures.rb', line 300 def prefix @prefix end |
#seen ⇒ Object (readonly)
: Set
297 298 299 |
# File 'lib/spoom/sorbet/lsp/structures.rb', line 297 def seen @seen end |
Instance Method Details
#clean_uri(uri) ⇒ Object
: (String uri) -> String
325 326 327 328 329 330 |
# File 'lib/spoom/sorbet/lsp/structures.rb', line 325 def clean_uri(uri) prefix = self.prefix return uri unless prefix uri.delete_prefix(prefix) end |
#print_list(objects) ⇒ Object
: (Array objects) -> void
333 334 335 336 337 338 339 340 |
# File 'lib/spoom/sorbet/lsp/structures.rb', line 333 def print_list(objects) objects.each do |object| printt print("* ") print_object(object) printn end end |
#print_object(object) ⇒ Object
: (PrintableSymbol? object) -> void
313 314 315 316 317 |
# File 'lib/spoom/sorbet/lsp/structures.rb', line 313 def print_object(object) return unless object object.accept_printer(self) end |
#print_objects(objects) ⇒ Object
: (Array objects) -> void
320 321 322 |
# File 'lib/spoom/sorbet/lsp/structures.rb', line 320 def print_objects(objects) objects.each { |object| print_object(object) } end |