Class: String
- Inherits:
-
Object
show all
- Defined in:
- lib/aws/s3/extensions.rb
Instance Method Summary
(collapse)
Instance Method Details
- (Object) previous
41
42
43
|
# File 'lib/aws/s3/extensions.rb', line 41
def previous
dup.previous!
end
|
- (Object) previous!
30
31
32
33
|
# File 'lib/aws/s3/extensions.rb', line 30
def previous!
self[-1] = (self[-1].ord - 1).chr
self
end
|
- (Object) remove_extended
88
89
90
|
# File 'lib/aws/s3/extensions.rb', line 88
def remove_extended
dup.remove_extended!
end
|
- (Object) remove_extended!
All paths in in S3 have to be valid unicode so this takes care of cleaning
up any strings that aren't valid utf-8 according to String#valid_utf8?
74
75
76
|
# File 'lib/aws/s3/extensions.rb', line 74
def remove_extended!
gsub!(/[\x80-\xFF]/) { "%02X" % $&[0] }
end
|
45
46
47
|
# File 'lib/aws/s3/extensions.rb', line 45
def
downcase.tr('_', '-')
end
|
- (Object) underscore
51
52
53
54
55
56
|
# File 'lib/aws/s3/extensions.rb', line 51
def underscore
gsub(/::/, '/').
gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
gsub(/([a-z\d])([A-Z])/,'\1_\2').
tr("-", "_").downcase
end
|
- (Boolean) valid_utf8?
59
60
61
62
63
64
|
# File 'lib/aws/s3/extensions.rb', line 59
def valid_utf8?
scan(Regexp.new('[^\x00-\xa0]', nil, 'u')) { |s| s.unpack('U') }
true
rescue ArgumentError
false
end
|