summaryrefslogtreecommitdiffstats
path: root/re.c
diff options
context:
space:
mode:
authorakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-09 11:57:06 +0000
committerakr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-09 11:57:06 +0000
commitb27d2f8648be15e4a4c40c320fb1a44465be4f53 (patch)
tree5c3c67d662410da499a8898ecb3c2695eee78589 /re.c
parent171015876297d4db028cf4a8b54906da83a20fb0 (diff)
downloadruby-b27d2f8648be15e4a4c40c320fb1a44465be4f53.tar.gz
ruby-b27d2f8648be15e4a4c40c320fb1a44465be4f53.tar.xz
ruby-b27d2f8648be15e4a4c40c320fb1a44465be4f53.zip
Regexp#fixed_encoding? documented.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 're.c')
-rw-r--r--re.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/re.c b/re.c
index 1264733f6..647d9c00a 100644
--- a/re.c
+++ b/re.c
@@ -758,6 +758,31 @@ rb_match_busy(VALUE match)
FL_SET(match, MATCH_BUSY);
}
+/*
+ * call-seq:
+ * rxp.fixed_encoding? => true or false
+ *
+ * Returns true if rxp is only applicable to
+ * a string encoded as rxp.encoding.
+ *
+ * r = /a/
+ * r.fixed_encoding? #=> false
+ * r =~ "\u{6666} a" #=> 2
+ * r =~ "\xa1\xa2 a".force_encoding("euc-jp") #=> 2
+ *
+ * r = /a/u
+ * r.fixed_encoding? #=> true
+ * r.encoding #=> <Encoding:UTF-8>
+ * r =~ "\u{6666} a" #=> 2
+ * r =~ "\xa1\xa2".force_encoding("euc-jp") # ArgumentError
+ *
+ * r = /\u{6666}/
+ * r.fixed_encoding? #=> true
+ * r.encoding #=> <Encoding:UTF-8>
+ * r =~ "\u{6666} a" #=> 0
+ * r =~ "\xa1\xa2".force_encoding("euc-jp") # ArgumentError
+ */
+
static VALUE
rb_reg_fixed_encoding_p(VALUE re)
{