repeatable 1.2.0 → 1.2.1

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 (60) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +19 -23
  3. data/.ruby-version +1 -0
  4. data/.yardopts +1 -0
  5. data/CHANGELOG.md +16 -2
  6. data/Gemfile +1 -0
  7. data/Gemfile.lock +86 -73
  8. data/README.md +8 -5
  9. data/lib/repeatable/expression/date.rb +1 -0
  10. data/lib/repeatable/expression/range_in_year.rb +2 -0
  11. data/lib/repeatable/version.rb +1 -1
  12. data/rbi/repeatable.rbi +1 -1
  13. data/sorbet/rbi/gems/{ast@2.4.2.rbi → ast@2.4.3.rbi} +3 -3
  14. data/sorbet/rbi/gems/benchmark@0.4.1.rbi +619 -0
  15. data/sorbet/rbi/gems/{commander@4.6.0.rbi → commander@5.0.0.rbi} +1 -0
  16. data/sorbet/rbi/gems/{diff-lcs@1.4.4.rbi → diff-lcs@1.6.2.rbi} +135 -83
  17. data/sorbet/rbi/gems/{erubi@1.12.0.rbi → erubi@1.13.1.rbi} +25 -15
  18. data/sorbet/rbi/gems/{highline@2.0.3.rbi → highline@3.0.1.rbi} +1 -0
  19. data/sorbet/rbi/gems/{json@2.7.2.rbi → json@2.13.2.rbi} +759 -233
  20. data/sorbet/rbi/gems/{language_server-protocol@3.17.0.3.rbi → language_server-protocol@3.17.0.5.rbi} +11 -5
  21. data/sorbet/rbi/gems/logger@1.7.0.rbi +963 -0
  22. data/sorbet/rbi/gems/{method_source@1.0.0.rbi → method_source@1.1.0.rbi} +41 -9
  23. data/sorbet/rbi/gems/{parallel@1.24.0.rbi → parallel@1.27.0.rbi} +32 -21
  24. data/sorbet/rbi/gems/{parlour@8.1.0.rbi → parlour@9.1.2.rbi} +86 -68
  25. data/sorbet/rbi/gems/{parser@3.3.1.0.rbi → parser@3.3.9.0.rbi} +908 -891
  26. data/sorbet/rbi/gems/{prism@0.28.0.rbi → prism@1.4.0.rbi} +14078 -10249
  27. data/sorbet/rbi/gems/{pry@0.14.0.rbi → pry@0.15.2.rbi} +437 -244
  28. data/sorbet/rbi/gems/{racc@1.7.3.rbi → racc@1.8.1.rbi} +36 -33
  29. data/sorbet/rbi/gems/{rake@13.0.3.rbi → rake@13.3.0.rbi} +83 -76
  30. data/sorbet/rbi/gems/rbi@0.3.6.rbi +6893 -0
  31. data/sorbet/rbi/gems/rbs@3.9.5.rbi +6976 -0
  32. data/sorbet/rbi/gems/{regexp_parser@2.9.0.rbi → regexp_parser@2.11.2.rbi} +1089 -1015
  33. data/sorbet/rbi/gems/{rexml@3.2.6.rbi → rexml@3.4.3.rbi} +833 -329
  34. data/sorbet/rbi/gems/{rspec-core@3.10.1.rbi → rspec-core@3.13.5.rbi} +1014 -613
  35. data/sorbet/rbi/gems/{rspec-expectations@3.10.1.rbi → rspec-expectations@3.13.5.rbi} +897 -638
  36. data/sorbet/rbi/gems/{rspec-mocks@3.10.2.rbi → rspec-mocks@3.13.5.rbi} +547 -444
  37. data/sorbet/rbi/gems/{rspec-support@3.10.2.rbi → rspec-support@3.13.5.rbi} +337 -304
  38. data/sorbet/rbi/gems/rspec@3.13.1.rbi +83 -0
  39. data/sorbet/rbi/gems/{rubocop-ast@1.31.3.rbi → rubocop-ast@1.46.0.rbi} +1678 -958
  40. data/sorbet/rbi/gems/{rubocop-performance@1.20.2.rbi → rubocop-performance@1.25.0.rbi} +1 -0
  41. data/sorbet/rbi/gems/{rubocop@1.62.1.rbi → rubocop@1.80.2.rbi} +11243 -5431
  42. data/sorbet/rbi/gems/simplecov-html@0.13.2.rbi +225 -0
  43. data/sorbet/rbi/gems/{simplecov@0.21.2.rbi → simplecov@0.22.0.rbi} +39 -25
  44. data/sorbet/rbi/gems/simplecov_json_formatter@0.1.4.rbi +233 -2
  45. data/sorbet/rbi/gems/spoom@1.6.3.rbi +6985 -0
  46. data/sorbet/rbi/gems/{standard-performance@1.3.1.rbi → standard-performance@1.8.0.rbi} +1 -0
  47. data/sorbet/rbi/gems/{standard@1.35.1.rbi → standard@1.51.0.rbi} +181 -96
  48. data/sorbet/rbi/gems/{tapioca@0.13.3.rbi → tapioca@0.16.11.rbi} +489 -388
  49. data/sorbet/rbi/gems/{thor@1.3.1.rbi → thor@1.4.0.rbi} +94 -46
  50. data/sorbet/rbi/gems/unicode-display_width@3.2.0.rbi +132 -0
  51. data/sorbet/rbi/gems/unicode-emoji@4.1.0.rbi +251 -0
  52. data/sorbet/rbi/gems/{yard-sorbet@0.8.1.rbi → yard-sorbet@0.9.0.rbi} +36 -29
  53. data/sorbet/rbi/gems/{yard@0.9.36.rbi → yard@0.9.37.rbi} +394 -236
  54. metadata +46 -40
  55. data/sorbet/rbi/gems/rbi@0.1.13.rbi +0 -3071
  56. data/sorbet/rbi/gems/rspec@3.10.0.rbi +0 -76
  57. data/sorbet/rbi/gems/simplecov-html@0.12.3.rbi +0 -216
  58. data/sorbet/rbi/gems/spoom@1.3.2.rbi +0 -4420
  59. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +0 -65
  60. /data/sorbet/rbi/gems/{docile@1.4.0.rbi → docile@1.4.1.rbi} +0 -0
@@ -4,6 +4,7 @@
4
4
  # This is an autogenerated file for types exported from the `thor` gem.
5
5
  # Please instead update this file by running `bin/tapioca gem thor`.
6
6
 
7
+
7
8
  # source://thor//lib/thor/shell/lcs_diff.rb#1
8
9
  module LCSDiff
9
10
  protected
@@ -36,7 +37,7 @@ class Thor
36
37
  extend ::Thor::Base::ClassMethods
37
38
  extend ::Thor::Invocation::ClassMethods
38
39
 
39
- # source://thor//lib/thor.rb#652
40
+ # source://thor//lib/thor.rb#663
40
41
  def help(command = T.unsafe(nil), subcommand = T.unsafe(nil)); end
41
42
 
42
43
  class << self
@@ -95,6 +96,19 @@ class Thor
95
96
  # source://thor//lib/thor.rb#363
96
97
  def check_unknown_options?(config); end
97
98
 
99
+ # Checks if a specified command exists.
100
+ #
101
+ # ==== Parameters
102
+ # command_name<String>:: The name of the command to check for existence.
103
+ #
104
+ # ==== Returns
105
+ # Boolean:: +true+ if the command exists, +false+ otherwise.
106
+ #
107
+ # @return [Boolean]
108
+ #
109
+ # source://thor//lib/thor.rb#449
110
+ def command_exists?(command_name); end
111
+
98
112
  # Prints help information for the given command.
99
113
  #
100
114
  # ==== Parameters
@@ -470,48 +484,48 @@ class Thor
470
484
  # the command that is going to be invoked and a boolean which indicates if
471
485
  # the namespace should be displayed as arguments.
472
486
  #
473
- # source://thor//lib/thor.rb#535
487
+ # source://thor//lib/thor.rb#546
474
488
  def banner(command, namespace = T.unsafe(nil), subcommand = T.unsafe(nil)); end
475
489
 
476
- # source://thor//lib/thor.rb#541
490
+ # source://thor//lib/thor.rb#552
477
491
  def baseclass; end
478
492
 
479
- # source://thor//lib/thor.rb#549
493
+ # source://thor//lib/thor.rb#560
480
494
  def create_command(meth); end
481
495
 
482
- # source://thor//lib/thor.rb#549
496
+ # source://thor//lib/thor.rb#560
483
497
  def create_task(meth); end
484
498
 
485
499
  # help command has the required check disabled by default.
486
500
  #
487
- # source://thor//lib/thor.rb#467
501
+ # source://thor//lib/thor.rb#478
488
502
  def disable_required_check; end
489
503
 
490
504
  # The method responsible for dispatching given the args.
491
505
  #
492
506
  # @yield [instance]
493
507
  #
494
- # source://thor//lib/thor.rb#494
508
+ # source://thor//lib/thor.rb#505
495
509
  def dispatch(meth, given_args, given_opts, config); end
496
510
 
497
- # source://thor//lib/thor.rb#545
511
+ # source://thor//lib/thor.rb#556
498
512
  def dynamic_command_class; end
499
513
 
500
514
  # this is the logic that takes the command name passed in by the user
501
515
  # and determines whether it is an unambiguous substrings of a command or
502
516
  # alias name.
503
517
  #
504
- # source://thor//lib/thor.rb#615
518
+ # source://thor//lib/thor.rb#626
505
519
  def find_command_possibilities(meth); end
506
520
 
507
521
  # this is the logic that takes the command name passed in by the user
508
522
  # and determines whether it is an unambiguous substrings of a command or
509
523
  # alias name.
510
524
  #
511
- # source://thor//lib/thor.rb#615
525
+ # source://thor//lib/thor.rb#626
512
526
  def find_task_possibilities(meth); end
513
527
 
514
- # source://thor//lib/thor.rb#575
528
+ # source://thor//lib/thor.rb#586
515
529
  def initialize_added; end
516
530
 
517
531
  # Returns this class at least one of required options array set.
@@ -519,7 +533,7 @@ class Thor
519
533
  # ==== Returns
520
534
  # Array[Array[Thor::Option.name]]
521
535
  #
522
- # source://thor//lib/thor.rb#458
536
+ # source://thor//lib/thor.rb#469
523
537
  def method_at_least_one_option_names; end
524
538
 
525
539
  # Returns this class exclusive options array set.
@@ -527,7 +541,7 @@ class Thor
527
541
  # ==== Returns
528
542
  # Array[Array[Thor::Option.name]]
529
543
  #
530
- # source://thor//lib/thor.rb#449
544
+ # source://thor//lib/thor.rb#460
531
545
  def method_exclusive_option_names; end
532
546
 
533
547
  # receives a (possibly nil) command name and returns a name that is in
@@ -540,7 +554,7 @@ class Thor
540
554
  #
541
555
  # @raise [AmbiguousTaskError]
542
556
  #
543
- # source://thor//lib/thor.rb#594
557
+ # source://thor//lib/thor.rb#605
544
558
  def normalize_command_name(meth); end
545
559
 
546
560
  # receives a (possibly nil) command name and returns a name that is in
@@ -553,23 +567,23 @@ class Thor
553
567
  #
554
568
  # @raise [AmbiguousTaskError]
555
569
  #
556
- # source://thor//lib/thor.rb#594
570
+ # source://thor//lib/thor.rb#605
557
571
  def normalize_task_name(meth); end
558
572
 
559
- # source://thor//lib/thor.rb#482
573
+ # source://thor//lib/thor.rb#493
560
574
  def print_at_least_one_required_options(shell, command = T.unsafe(nil)); end
561
575
 
562
- # source://thor//lib/thor.rb#471
576
+ # source://thor//lib/thor.rb#482
563
577
  def print_exclusive_options(shell, command = T.unsafe(nil)); end
564
578
 
565
579
  # Retrieve the command name from given args.
566
580
  #
567
- # source://thor//lib/thor.rb#581
581
+ # source://thor//lib/thor.rb#592
568
582
  def retrieve_command_name(args); end
569
583
 
570
584
  # Retrieve the command name from given args.
571
585
  #
572
- # source://thor//lib/thor.rb#581
586
+ # source://thor//lib/thor.rb#592
573
587
  def retrieve_task_name(args); end
574
588
 
575
589
  # Sort the commands, lexicographically by default.
@@ -577,16 +591,16 @@ class Thor
577
591
  # Can be overridden in the subclass to change the display order of the
578
592
  # commands.
579
593
  #
580
- # source://thor//lib/thor.rb#642
594
+ # source://thor//lib/thor.rb#653
581
595
  def sort_commands!(list); end
582
596
 
583
- # source://thor//lib/thor.rb#462
597
+ # source://thor//lib/thor.rb#473
584
598
  def stop_on_unknown_option; end
585
599
 
586
- # source://thor//lib/thor.rb#630
600
+ # source://thor//lib/thor.rb#641
587
601
  def subcommand_help(cmd); end
588
602
 
589
- # source://thor//lib/thor.rb#630
603
+ # source://thor//lib/thor.rb#641
590
604
  def subtask_help(cmd); end
591
605
  end
592
606
  end
@@ -737,7 +751,7 @@ module Thor::Actions
737
751
  #
738
752
  # comment_lines 'config/initializers/session_store.rb', /cookie_store/
739
753
  #
740
- # source://thor//lib/thor/actions/file_manipulation.rb#308
754
+ # source://thor//lib/thor/actions/file_manipulation.rb#333
741
755
  def comment_lines(path, flag, *args); end
742
756
 
743
757
  # Copies the file from the relative source to the relative destination. If
@@ -914,9 +928,30 @@ module Thor::Actions
914
928
  # match << " no more. Use thor!"
915
929
  # end
916
930
  #
917
- # source://thor//lib/thor/actions/file_manipulation.rb#262
931
+ # source://thor//lib/thor/actions/file_manipulation.rb#291
918
932
  def gsub_file(path, flag, *args, &block); end
919
933
 
934
+ # Run a regular expression replacement on a file, raising an error if the
935
+ # contents of the file are not changed.
936
+ #
937
+ # ==== Parameters
938
+ # path<String>:: path of the file to be changed
939
+ # flag<Regexp|String>:: the regexp or string to be replaced
940
+ # replacement<String>:: the replacement, can be also given as a block
941
+ # config<Hash>:: give :verbose => false to not log the status, and
942
+ # :force => true, to force the replacement regardless of runner behavior.
943
+ #
944
+ # ==== Example
945
+ #
946
+ # gsub_file! 'app/controllers/application_controller.rb', /#\s*(filter_parameter_logging :password)/, '\1'
947
+ #
948
+ # gsub_file! 'README', /rake/, :green do |match|
949
+ # match << " no more. Use thor!"
950
+ # end
951
+ #
952
+ # source://thor//lib/thor/actions/file_manipulation.rb#263
953
+ def gsub_file!(path, flag, *args, &block); end
954
+
920
955
  # Goes to the root and execute the given block.
921
956
  #
922
957
  # source://thor//lib/thor/actions.rb#200
@@ -1052,7 +1087,7 @@ module Thor::Actions
1052
1087
  # remove_file 'README'
1053
1088
  # remove_file 'app/controllers/application_controller.rb'
1054
1089
  #
1055
- # source://thor//lib/thor/actions/file_manipulation.rb#325
1090
+ # source://thor//lib/thor/actions/file_manipulation.rb#350
1056
1091
  def remove_dir(path, config = T.unsafe(nil)); end
1057
1092
 
1058
1093
  # Removes a file at the given location.
@@ -1066,7 +1101,7 @@ module Thor::Actions
1066
1101
  # remove_file 'README'
1067
1102
  # remove_file 'app/controllers/application_controller.rb'
1068
1103
  #
1069
- # source://thor//lib/thor/actions/file_manipulation.rb#325
1104
+ # source://thor//lib/thor/actions/file_manipulation.rb#350
1070
1105
  def remove_file(path, config = T.unsafe(nil)); end
1071
1106
 
1072
1107
  # Executes a command returning the contents of the command.
@@ -1150,7 +1185,7 @@ module Thor::Actions
1150
1185
  #
1151
1186
  # uncomment_lines 'config/initializers/session_store.rb', /active_record/
1152
1187
  #
1153
- # source://thor//lib/thor/actions/file_manipulation.rb#289
1188
+ # source://thor//lib/thor/actions/file_manipulation.rb#314
1154
1189
  def uncomment_lines(path, flag, *args); end
1155
1190
 
1156
1191
  protected
@@ -1165,25 +1200,28 @@ module Thor::Actions
1165
1200
 
1166
1201
  private
1167
1202
 
1168
- # source://thor//lib/thor/actions/file_manipulation.rb#346
1203
+ # source://thor//lib/thor/actions/file_manipulation.rb#385
1204
+ def actually_gsub_file(path, flag, args, error_on_no_change, &block); end
1205
+
1206
+ # source://thor//lib/thor/actions/file_manipulation.rb#371
1169
1207
  def capture(*args); end
1170
1208
 
1171
- # source://thor//lib/thor/actions/file_manipulation.rb#342
1209
+ # source://thor//lib/thor/actions/file_manipulation.rb#367
1172
1210
  def concat(string); end
1173
1211
 
1174
1212
  # Returns the value of attribute output_buffer.
1175
1213
  #
1176
- # source://thor//lib/thor/actions/file_manipulation.rb#337
1214
+ # source://thor//lib/thor/actions/file_manipulation.rb#362
1177
1215
  def output_buffer; end
1178
1216
 
1179
1217
  # Sets the attribute output_buffer
1180
1218
  #
1181
1219
  # @param value the value to set the attribute output_buffer to.
1182
1220
  #
1183
- # source://thor//lib/thor/actions/file_manipulation.rb#337
1221
+ # source://thor//lib/thor/actions/file_manipulation.rb#362
1184
1222
  def output_buffer=(_arg0); end
1185
1223
 
1186
- # source://thor//lib/thor/actions/file_manipulation.rb#350
1224
+ # source://thor//lib/thor/actions/file_manipulation.rb#375
1187
1225
  def with_output_buffer(buf = T.unsafe(nil)); end
1188
1226
 
1189
1227
  class << self
@@ -1195,9 +1233,9 @@ end
1195
1233
  # Thor::Actions#capture depends on what kind of buffer is used in ERB.
1196
1234
  # Thus CapturableERB fixes ERB to use String buffer.
1197
1235
  #
1198
- # source://thor//lib/thor/actions/file_manipulation.rb#362
1236
+ # source://thor//lib/thor/actions/file_manipulation.rb#398
1199
1237
  class Thor::Actions::CapturableERB < ::ERB
1200
- # source://thor//lib/thor/actions/file_manipulation.rb#363
1238
+ # source://thor//lib/thor/actions/file_manipulation.rb#399
1201
1239
  def set_eoutvar(compiler, eoutvar = T.unsafe(nil)); end
1202
1240
  end
1203
1241
 
@@ -2629,7 +2667,7 @@ class Thor::Group
2629
2667
  # Shortcut to invoke with padding and block handling. Use internally by
2630
2668
  # invoke and invoke_from_option class methods.
2631
2669
  #
2632
- # source://thor//lib/thor/group.rb#265
2670
+ # source://thor//lib/thor/group.rb#276
2633
2671
  def _invoke_for_class_method(klass, command = T.unsafe(nil), *args, &block); end
2634
2672
 
2635
2673
  class << self
@@ -2639,6 +2677,19 @@ class Thor::Group
2639
2677
  # source://thor//lib/thor/group.rb#161
2640
2678
  def class_options_help(shell, groups = T.unsafe(nil)); end
2641
2679
 
2680
+ # Checks if a specified command exists.
2681
+ #
2682
+ # ==== Parameters
2683
+ # command_name<String>:: The name of the command to check for existence.
2684
+ #
2685
+ # ==== Returns
2686
+ # Boolean:: +true+ if the command exists, +false+ otherwise.
2687
+ #
2688
+ # @return [Boolean]
2689
+ #
2690
+ # source://thor//lib/thor/group.rb#221
2691
+ def command_exists?(command_name); end
2692
+
2642
2693
  # The description for this Thor::Group. If none is provided, but a source root
2643
2694
  # exists, tries to find the USAGE one folder above it, otherwise searches
2644
2695
  # in the superclass.
@@ -2746,33 +2797,33 @@ class Thor::Group
2746
2797
  # The banner for this class. You can customize it if you are invoking the
2747
2798
  # thor class by another ways which is not the Thor::Runner.
2748
2799
  #
2749
- # source://thor//lib/thor/group.rb#238
2800
+ # source://thor//lib/thor/group.rb#249
2750
2801
  def banner; end
2751
2802
 
2752
- # source://thor//lib/thor/group.rb#248
2803
+ # source://thor//lib/thor/group.rb#259
2753
2804
  def baseclass; end
2754
2805
 
2755
- # source://thor//lib/thor/group.rb#252
2806
+ # source://thor//lib/thor/group.rb#263
2756
2807
  def create_command(meth); end
2757
2808
 
2758
- # source://thor//lib/thor/group.rb#252
2809
+ # source://thor//lib/thor/group.rb#263
2759
2810
  def create_task(meth); end
2760
2811
 
2761
2812
  # The method responsible for dispatching given the args.
2762
2813
  #
2763
2814
  # @yield [instance]
2764
2815
  #
2765
- # source://thor//lib/thor/group.rb#217
2816
+ # source://thor//lib/thor/group.rb#228
2766
2817
  def dispatch(command, given_args, given_opts, config); end
2767
2818
 
2768
2819
  # Represents the whole class as a command.
2769
2820
  #
2770
- # source://thor//lib/thor/group.rb#243
2821
+ # source://thor//lib/thor/group.rb#254
2771
2822
  def self_command; end
2772
2823
 
2773
2824
  # Represents the whole class as a command.
2774
2825
  #
2775
- # source://thor//lib/thor/group.rb#243
2826
+ # source://thor//lib/thor/group.rb#254
2776
2827
  def self_task; end
2777
2828
  end
2778
2829
  end
@@ -3661,9 +3712,6 @@ class Thor::Shell::Basic
3661
3712
  # source://thor//lib/thor/shell/basic.rb#296
3662
3713
  def file_collision_help(block_given); end
3663
3714
 
3664
- # source://thor//lib/thor/shell/basic.rb#383
3665
- def git_merge_tool; end
3666
-
3667
3715
  # @return [Boolean]
3668
3716
  #
3669
3717
  # source://thor//lib/thor/shell/basic.rb#286
@@ -0,0 +1,132 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This is an autogenerated file for types exported from the `unicode-display_width` gem.
5
+ # Please instead update this file by running `bin/tapioca gem unicode-display_width`.
6
+
7
+
8
+ # source://unicode-display_width//lib/unicode/display_width/constants.rb#3
9
+ module Unicode; end
10
+
11
+ # source://unicode-display_width//lib/unicode/display_width/constants.rb#4
12
+ class Unicode::DisplayWidth
13
+ # @return [DisplayWidth] a new instance of DisplayWidth
14
+ #
15
+ # source://unicode-display_width//lib/unicode/display_width.rb#229
16
+ def initialize(ambiguous: T.unsafe(nil), overwrite: T.unsafe(nil), emoji: T.unsafe(nil)); end
17
+
18
+ # source://unicode-display_width//lib/unicode/display_width.rb#235
19
+ def get_config(**kwargs); end
20
+
21
+ # source://unicode-display_width//lib/unicode/display_width.rb#243
22
+ def of(string, **kwargs); end
23
+
24
+ class << self
25
+ # source://unicode-display_width//lib/unicode/display_width/index.rb#14
26
+ def decompress_index(index, level); end
27
+
28
+ # Returns width of all considered Emoji and remaining string
29
+ #
30
+ # source://unicode-display_width//lib/unicode/display_width.rb#143
31
+ def emoji_width(string, mode = T.unsafe(nil), ambiguous = T.unsafe(nil)); end
32
+
33
+ # Match possible Emoji first, then refine
34
+ #
35
+ # source://unicode-display_width//lib/unicode/display_width.rb#173
36
+ def emoji_width_via_possible(string, emoji_set_regex, strict_eaw = T.unsafe(nil), ambiguous = T.unsafe(nil)); end
37
+
38
+ # source://unicode-display_width//lib/unicode/display_width.rb#201
39
+ def normalize_options(string, ambiguous = T.unsafe(nil), overwrite = T.unsafe(nil), old_options = T.unsafe(nil), **options); end
40
+
41
+ # Returns monospace display width of string
42
+ #
43
+ # source://unicode-display_width//lib/unicode/display_width.rb#51
44
+ def of(string, ambiguous = T.unsafe(nil), overwrite = T.unsafe(nil), old_options = T.unsafe(nil), **options); end
45
+
46
+ # Returns width for ASCII-only strings. Will consider zero-width control symbols.
47
+ #
48
+ # source://unicode-display_width//lib/unicode/display_width.rb#133
49
+ def width_ascii(string); end
50
+
51
+ # Returns width of custom overwrites and remaining string
52
+ #
53
+ # source://unicode-display_width//lib/unicode/display_width.rb#117
54
+ def width_custom(string, overwrite); end
55
+ end
56
+ end
57
+
58
+ # source://unicode-display_width//lib/unicode/display_width.rb#16
59
+ Unicode::DisplayWidth::AMBIGUOUS_MAP = T.let(T.unsafe(nil), Hash)
60
+
61
+ # source://unicode-display_width//lib/unicode/display_width.rb#15
62
+ Unicode::DisplayWidth::ASCII_BACKSPACE = T.let(T.unsafe(nil), String)
63
+
64
+ # source://unicode-display_width//lib/unicode/display_width.rb#13
65
+ Unicode::DisplayWidth::ASCII_NON_ZERO_REGEX = T.let(T.unsafe(nil), Regexp)
66
+
67
+ # source://unicode-display_width//lib/unicode/display_width.rb#14
68
+ Unicode::DisplayWidth::ASCII_NON_ZERO_STRING = T.let(T.unsafe(nil), String)
69
+
70
+ # source://unicode-display_width//lib/unicode/display_width/constants.rb#7
71
+ Unicode::DisplayWidth::DATA_DIRECTORY = T.let(T.unsafe(nil), String)
72
+
73
+ # source://unicode-display_width//lib/unicode/display_width.rb#11
74
+ Unicode::DisplayWidth::DEFAULT_AMBIGUOUS = T.let(T.unsafe(nil), Integer)
75
+
76
+ # source://unicode-display_width//lib/unicode/display_width.rb#32
77
+ Unicode::DisplayWidth::EMOJI_SEQUENCES_REGEX_MAPPING = T.let(T.unsafe(nil), Hash)
78
+
79
+ # source://unicode-display_width//lib/unicode/display_width/emoji_support.rb#5
80
+ module Unicode::DisplayWidth::EmojiSupport
81
+ class << self
82
+ # source://unicode-display_width//lib/unicode/display_width/emoji_support.rb#18
83
+ def _recommended; end
84
+
85
+ # Tries to find out which terminal emulator is used to
86
+ # set emoji: config to best suiting value
87
+ #
88
+ # Please also see section in README.md and
89
+ # misc/terminal-emoji-width.rb
90
+ #
91
+ # Please note: Many terminals do not set any ENV vars,
92
+ # maybe CSI queries can help?
93
+ #
94
+ # source://unicode-display_width//lib/unicode/display_width/emoji_support.rb#14
95
+ def recommended; end
96
+ end
97
+ end
98
+
99
+ # source://unicode-display_width//lib/unicode/display_width.rb#28
100
+ Unicode::DisplayWidth::FIRST_4096 = T.let(T.unsafe(nil), Hash)
101
+
102
+ # source://unicode-display_width//lib/unicode/display_width.rb#20
103
+ Unicode::DisplayWidth::FIRST_AMBIGUOUS = T.let(T.unsafe(nil), Hash)
104
+
105
+ # source://unicode-display_width//lib/unicode/display_width/index.rb#11
106
+ Unicode::DisplayWidth::INDEX = T.let(T.unsafe(nil), Hash)
107
+
108
+ # source://unicode-display_width//lib/unicode/display_width/constants.rb#8
109
+ Unicode::DisplayWidth::INDEX_FILENAME = T.let(T.unsafe(nil), String)
110
+
111
+ # source://unicode-display_width//lib/unicode/display_width.rb#12
112
+ Unicode::DisplayWidth::INITIAL_DEPTH = T.let(T.unsafe(nil), Integer)
113
+
114
+ # source://unicode-display_width//lib/unicode/display_width.rb#24
115
+ Unicode::DisplayWidth::NOT_COMMON_NARROW_REGEX = T.let(T.unsafe(nil), Hash)
116
+
117
+ # ebase = Unicode::Emoji::REGEX_PROP_MODIFIER_BASE.source
118
+ #
119
+ # source://unicode-display_width//lib/unicode/display_width.rb#47
120
+ Unicode::DisplayWidth::REGEX_EMOJI_ALL_SEQUENCES = T.let(T.unsafe(nil), Regexp)
121
+
122
+ # source://unicode-display_width//lib/unicode/display_width.rb#48
123
+ Unicode::DisplayWidth::REGEX_EMOJI_ALL_SEQUENCES_AND_VS16 = T.let(T.unsafe(nil), Regexp)
124
+
125
+ # source://unicode-display_width//lib/unicode/display_width.rb#37
126
+ Unicode::DisplayWidth::REGEX_EMOJI_VS16 = T.let(T.unsafe(nil), Regexp)
127
+
128
+ # source://unicode-display_width//lib/unicode/display_width/constants.rb#6
129
+ Unicode::DisplayWidth::UNICODE_VERSION = T.let(T.unsafe(nil), String)
130
+
131
+ # source://unicode-display_width//lib/unicode/display_width/constants.rb#5
132
+ Unicode::DisplayWidth::VERSION = T.let(T.unsafe(nil), String)