< :前の番号
^ :番号順リスト
> :次の番号
P :前の記事(スレッド移動)
N :次の記事
|<:前のスレッド
>|:次のスレッド
^ :返事先
_:自分への返事
>:同じ返事先を持つ記事(前)
<:同じ返事先を持つ記事(後)
---:分割してスレッド表示、再表示
| :分割して(縦)スレッド表示、再表示
~ :スレッドのフレーム消去
.:インデックス
..:インデックスのインデックス
Issue #8848 has been updated by Martin Drst.
Related to Feature #10391: Provide %eISO-8859-1'string \xAA literal' stringliterals with explicit encoding added
----------------------------------------
Feature #8848: Syntax for binary strings
https://bugs.ruby-lang.org/issues/8848#change-49661
* Author: Martin Drst
* Status: Open
* Priority: Normal
* Assignee:
* Category:
* Target version:
----------------------------------------
In commit 37486, Yui (Naruse) added a String#b method as proposed in http://bugs.ruby-lang.org/issues/6767.
String#b was added to allow easy generation of binary strings; this became necessary in particular after the source file encoding was changed to UTF-8.
However, as also recognized in http://bugs.ruby-lang.org/issues/6767, in the long term (ideally starting with Ruby 2.1) it would be better to make binary strings available as part of Ruby syntax.
One reason for this efficiency. String#b creates a duplicate object, which is not at all necessary for the frequent use case of String literals.
Another reason is encoding validity. To be able to e.g. create a "\xFF" binary string, with String#b in an UTF-8 source context, it is necessary to allow "\xFF" (temporarily at least) as an (actually invalid) UTF-8 string. This may be difficult for some implementations, and isn't desirable in general.
Regarding syntax, there are mainly two solutions:
1) a '%b' prefix
2) a 'b' suffix
The preferable syntax depends on the overall future approach of Ruby to String literal suffixes (see https://bugs.ruby-lang.org/issues/8579).
--
https://bugs.ruby-lang.org/