Nobuyoshi Nakada
1b0f05168d
[DOC] Fix references to unary operator
2022-03-27 11:24:06 +09:00
Burdette Lamar
e699e2d9bf
Enhanced RDoc for String ( #5723 )
...
Treats:
#lstrip
#lstrip!
#rstrip
#rstrip!
#strip
#strip!
Adds section Whitespace in Strings.
2022-03-26 12:42:44 -05:00
Nobuyoshi Nakada
300f4677c9
[DOC] Use simple references to operator methods
...
Method references is not only able to be marked up as code, also
reflects `--show-hash` option.
The bug that prevented the old rdoc from correctly parsing these
methods was fixed last month.
2022-03-26 21:13:16 +09:00
Burdette Lamar
465edb96f0
[DOC] Enhanced RDoc for String ( #5707 )
...
Treated:
#chomp
#chomp!
#chop
#chop!
2022-03-24 19:40:58 -05:00
Burdette Lamar
0140e6c41e
[DOC] Enhanced RDoc for String ( #5685 )
...
Treats:
#chars
#codepoints
#each_char
#each_codepoint
#each_grapheme_cluster
#grapheme_clusters
Also, corrects a passage in #unicode_normalize that mentioned module UnicodeNormalize, whose doc (:nodoc:, actually) says not to mention it.
2022-03-22 14:51:05 -05:00
Burdette Lamar
c129b6119d
[DOC] Use RDoc inclusions in string.c ( #5683 )
...
As @peterzhu2118 and @duerst have pointed out, putting string method's RDoc into doc/ (which allows non-ASCII in examples) makes the "click to toggle source" feature not work for that method.
This PR moves the primary method doc back into string.c, then includes RDoc from doc/string/*.rdoc, and also removes doc/string.rdoc.
The affected methods are:
::new
#bytes
#each_byte
#each_line
#split
The call-seq is in string.c because it works there; it did not work when the call-seq is in doc/string/*.rdoc.
This PR also updates the relevant guidance in doc/documentation_guide.rdoc.
2022-03-21 14:58:00 -05:00
Burdette Lamar
d52f41b765
[DOC] Enhanced RDoc for String ( #5675 )
...
Treats:
#split
#each_line
#lines
#each_byte
#bytes
2022-03-18 17:17:00 -05:00
Shugo Maeda
1107839a7f
Add String#bytesplice
2022-03-18 11:51:03 +09:00
Burdette Lamar
59a1a8185f
[DOC] Enhanced RDoc for String#split ( #5644 )
...
* Enhanced RDoc for String#split
* Enhanced RDoc for String#split
* Enhanced RDoc for String#split
* Enhanced RDoc for String#split
* Enhanced RDoc for String#split
2022-03-16 14:45:48 -05:00
Nobuyoshi Nakada
4d93b6299c
Initialize mutex for crypt(3) statically
...
Assuming that all platforms, where only `crypt` is available but
not `crypt_r`, are POSIX-base.
2022-03-16 18:51:34 +09:00
Burdette Lamar
561dda9934
[DOC] Enhanced RDoc for String ( #5635 )
...
Treats:
#count
#delete
#delete!
#squeeze
#squeeze!
Adds section "Multiple Character Selectors" to doc/character_selectors.rdoc.
Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2022-03-09 19:53:51 -06:00
Burdette Lamar
72c038a8f5
[DOC] Enhanced RDoc for String ( #5633 )
...
Treats:
#tr (revised to link to "Character Selectors" document)
#tr!
#tr_s
#tr_s!
Also renames doc/character_selector.rdoc to match its title.
2022-03-09 08:42:12 -06:00
Kazuhiro NISHIYAMA
b068a53dc9
[DOC] Fix default offset of String#byterindex
2022-03-09 15:15:11 +09:00
Burdette Lamar
faff37da57
[DOC] Enhanced RDoc for String #tr and #tr! ( #5626 )
2022-03-07 12:58:29 -06:00
Nobuyoshi Nakada
7f7f07a600
[DOC] mark rb_str_init
as :nodoc:
...
Otherwise, an empty entry will be generated as `String::new` along
with the one from doc/string.rb.
2022-03-03 13:39:07 +09:00
Mau Magnaguagno
347c3faf8e
[DOC] Fix String#getbyte doc
...
* String#getbyte returns `nil` if `index` is out of range.
* Add String#getbyte example with nil output.
* Modify String#getbyte example to use negative index.
2022-03-01 10:05:49 +09:00
Nobuyoshi Nakada
3e5d7e3176
[DOC] Move String.new to allow non US-ASCII characters
2022-02-26 21:50:46 +09:00
Burdette Lamar
26ffda2fd2
[DOC] Enhanced RDoc for some encoding methods ( #5598 )
...
In String, treats:
#b
#scrub
#scrub!
#unicode_normalize
#unicode_normalize!
#encode
#encode!
Also adds a note to IO.new (suggested by @jeremyevans).
2022-02-25 13:12:59 -06:00
Shugo Maeda
63401b1384
Rename the wrong variable name beg
to len
2022-02-23 11:23:33 +09:00
Nobuyoshi Nakada
8f0e3a97f9
rb_debug_rstring_null_ptr: add newlines in the message [ci skip]
...
The message should end with a newline, and break the long
paragraph.
2022-02-21 16:22:23 +09:00
Shugo Maeda
c8817d6a3e
Add String#byteindex, String#byterindex, and MatchData#byteoffset ( #5518 )
...
* Add String#byteindex, String#byterindex, and MatchData#byteoffset [Feature #13110 ]
Co-authored-by: NARUSE, Yui <naruse@airemix.jp>
2022-02-19 19:10:00 +09:00
Nobuyoshi Nakada
6e65e04186
[DOC] Remove unnecessary rdoc-ref:
schemes
2022-02-12 12:38:37 +09:00
Nobuyoshi Nakada
50c972a1ae
[DOC] Simplify operator method references
2022-02-12 12:38:36 +09:00
Paarth Madan
2a30ddd9f3
Remove extraneous "." in String#+@ documentation
2022-02-08 10:33:49 +09:00
Nobuyoshi Nakada
8ca7b0b68a
[DOC] Fix broken links to operator methods
...
Once https://github.com/ruby/rdoc/pull/865 is merged, these hacks
are no longer needed.
2022-02-08 01:39:37 +09:00
Nobuyoshi Nakada
07bf65858d
[DOC] Fix broken links to case_mapping.rdoc
2022-02-08 01:28:08 +09:00
Nobuyoshi Nakada
16fdc1ff46
[DOC] Fix broken links to literals.rdoc
2022-02-08 01:27:52 +09:00
Nobuyoshi Nakada
bc5662d9d8
[DOC] Simplify links to global methods
2022-02-08 01:18:56 +09:00
Peter Zhu
a32e5e1b97
[DOC] Use RDoc link style for links in the same class/module
...
I used this regex:
(?<=\[)#(?:class|module)-([A-Za-z]+)-label-([A-Za-z0-9\-\+]+)
And performed a global find & replace for this:
rdoc-ref:$1@$2
2022-02-07 09:52:06 -05:00
Peter Zhu
f9a2802bc5
[DOC] Use RDoc link style for links to other classes/modules
...
I used this regex:
([A-Za-z]+)\.html#(?:class|module)-[A-Za-z]+-label-([A-Za-z0-9\-\+]+)
And performed a global find & replace for this:
rdoc-ref:$1@$2
2022-02-07 09:52:06 -05:00
Burdette Lamar
a07fa198a6
Improve links to labels in string.c and struct.c ( #5531 )
2022-02-06 09:44:40 -06:00
Peter Zhu
be68b3a490
Change termlen when changing encoding during concatenation
...
After changing the encoding, we should update the terminator length.
2022-01-07 10:50:03 -05:00
Nobuyoshi Nakada
3f9af8a9dc
[DOC] Fix typos in a doxygen comment [ci skip]
2022-01-07 23:55:59 +09:00
Peter Zhu
ae0d67d762
Revert "Set encoding before concatenating to string"
...
This reverts commit 44368b5f8bc21e19fa06a0fc0625923fc41293e6.
2022-01-06 17:23:05 -05:00
Peter Zhu
5f55b03716
Set correct termlen for frozen strings
...
Frozen strings should have the same termlen as the original string when
copy_encoding is true.
2022-01-06 14:33:35 -05:00
Peter Zhu
44368b5f8b
Set encoding before concatenating to string
...
If we set encoding after the call to rb_str_buf_cat, then rb_str_buf_cat
will not set the correct terminator length.
2022-01-06 14:33:35 -05:00
Nobuyoshi Nakada
39bc5de833
Remove tainted and trusted features
...
Already these had been announced to be removed in 3.2.
2021-12-26 23:28:54 +09:00
Nobuyoshi Nakada
e2ec97c4b8
[DOC] How to get the longest last match [Bug #18415 ]
2021-12-19 20:27:31 +09:00
Burdette Lamar
5588aa79d4
What's Here for Symbol ( #5289 )
...
* What's Here for Symbol
2021-12-17 17:02:12 -06:00
Burdette Lamar
f7e266e6d2
Enhanced RDoc for case mapping ( #5245 )
...
Adds file doc/case_mapping.rdoc, which describes case mapping and provides a link target that methods doc can link to.
Revises:
String#capitalize
String#capitalize!
String#casecmp
String#casecmp?
String#downcase
String#downcase!
String#swapcase
String#swapcase!
String#upcase
String#upcase!
Symbol#capitalize
Symbol#casecmp
Symbol#casecmp?
Symbol#downcase
Symbol#swapcase
Symbol#upcase
2021-12-17 06:05:31 -06:00
Burdette Lamar
e5ff030f60
Enhanced RDoc for String ( #5234 )
...
Treated:
#to_i
#to_f
#to_s
#inspect
#dump
#undump
2021-12-10 10:50:13 -06:00
Burdette Lamar
9a2ecddf32
Enhanced RDoc for String ( #5227 )
...
Treats:
#replace
#clear
#chr
#getbyte
#setbyte
#byteslice
#reverse
#reverse!
#include?
2021-12-08 12:29:56 -06:00
Burdette Lamar
7fc9d83bd1
Fix link ( #5208 )
2021-12-03 10:46:35 -06:00
Burdette Lamar
28fb6d6b9e
Adding links to literals and Kernel ( #5192 )
...
* Adding links to literals and Kernel
2021-12-03 07:12:28 -06:00
Peter Zhu
7cfacbcad2
Improve performance of embedded string allocation
...
Non-VWA embedded string allocation had a performance regression. This
commit improves performance of non-VWA embedded string allocation.
2021-11-26 13:27:32 -05:00
Peter Zhu
9aded89f40
Speed up Ractors for Variable Width Allocation
...
This commit adds a Ractor cache for every size pool. Previously, all VWA
allocated objects used the slowpath and locked the VM.
On a micro-benchmark that benchmarks String allocation:
VWA turned off:
29.196591 0.889709 30.086300 ( 9.434059)
VWA before this commit:
29.279486 41.477869 70.757355 ( 12.527379)
VWA after this commit:
16.782903 0.557117 17.340020 ( 4.255603)
2021-11-23 10:51:27 -05:00
Peter Zhu
aeae6e2842
[Feature #18290 ] Remove all usages of rb_gc_force_recycle
...
This commit removes usages of rb_gc_force_recycle since it is a burden
to maintain and makes changes to the GC difficult.
2021-11-08 14:05:54 -05:00
Yusuke Endoh
4b248e7994
string.c: Follow up to ae2359f602bb467ca755eef02d73d361d35eaed7
...
* Mention `\0`
* Make the example of hash replacement meaningful
2021-11-03 03:52:28 +09:00
Burdette Lamar
ae2359f602
Enhanced RDoc for String ( #5060 )
...
Treated:
#slice!
#sub
#sub!
#gsub
#gsub!
2021-11-02 13:04:58 -05:00
Burdette Lamar
3e743d3147
Cleanup some RDoc ( #5050 )
...
Mostly adding blank line before and after code segment, to improve compliance with doc\documentation_guide.rdoc.
2021-10-28 17:01:49 -05:00