[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[sup-devel] [PATCH 03/10] add String#check
---
lib/sup/util.rb | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/lib/sup/util.rb b/lib/sup/util.rb
index 5f68d0d..fc90350 100644
--- a/lib/sup/util.rb
+++ b/lib/sup/util.rb
@@ -296,6 +296,16 @@ class String
##
## split_on will be passed to String#split, so you can leave this nil for space.
def to_set_of_symbols split_on=nil; Set.new split(split_on).map { |x| x.strip.intern } end
+
+ class CheckError < ArgumentError; end
+ def check
+ begin
+ fail "unexpected encoding #{encoding}" if respond_to?(:encoding) && !(encoding == Encoding::UTF_8 || encoding == Encoding::ASCII)
+ fail "invalid encoding" if respond_to?(:valid_encoding?) && !valid_encoding?
+ rescue
+ raise CheckError.new($!.message)
+ end
+ end
end
class Numeric
--
1.6.3.3
_______________________________________________
Sup-devel mailing list
Sup-devel@rubyforge.org
http://rubyforge.org/mailman/listinfo/sup-devel