aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support/core_ext/string
Commit message (Collapse)AuthorAgeFilesLines
* Introduce minimalistic package for ActiveSupport.Michael S. Klishin2008-12-281-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | To simplify using of ActiveSupport in 3rd party libraries, a simple way to require only minimum of commonly used extensions (multibyte, inflections, array and hash extensions, #blank?, and a few others) is needed. For exactly this reason some out-of-Rails-space libraries adopted Extlib, originally from DataMapper. To keep it 2067% backwards compatible, and still available to everyone even in 2.x releases, active_support/minimalistic.rb was added. Use it like this: gem 'active_support', '>=2.3' require 'active_support/minimalistic' instead of require 'activesupport' Right now this package with RubyGems uses about 10 megs of RAM (10.01 or so). It can be further slimmed down though, once we simplify multibyte implementation that right now uses advanced accessors from Module extensions. To compare RAM usage with previous ActiveSupport versions and Extlib, at the time of writing, see http://gist.github.com/40401.
* Changed the fallback String#each_char to use valid 1.9 syntax.Tom Lea2008-11-221-1/+3
| | | | Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
* Deprecated String#chars in favor of String#mb_chars.Manfred Stienstra2008-09-211-1/+4
|
* Improve documentation.Manfred Stienstra2008-09-211-13/+10
|
* Change all calls to String#chars to String#mb_chars.Manfred Stienstra2008-09-211-5/+5
|
* Simplify ActiveSupport::Multibyte and make it run on Ruby 1.9.Manfred Stienstra2008-09-212-66/+81
| | | | | | * Unicode methods are now defined directly on Chars instead of a handler * Updated Unicode database to Unicode 5.1.0 * Improved documentation
* Fix ActiveRecord::Base.quote_bound_value for ActiveSupper::Multibyte::Chars ↵Manfred Stienstra2008-09-111-0/+13
| | | | | | | | | | values. - Adds String#acts_like_string? - Adds Chars#acts_like_string? Signed-off-by: Michael Koziarski <michael@koziarski.com> [#1029 state:committed]
* Added Inflector#parameterize for easy slug generation ("Donald E. ↵David Heinemeier Hansson2008-09-101-0/+19
| | | | Knuth".parameterize => "donald-e-knuth") #713 [Matt Darby]
* Merge with docrails.Pratik Naik2008-07-161-2/+2
|
* Remove 1.9's String#chars alsoJeremy Kemper2008-06-061-13/+11
|
* Merge docrails.Pratik Naik2008-05-251-5/+5
| | | | Signed-off-by: Pratik Naik <pratiknaik@gmail.com>
* Ruby 1.8.7 compat: String#start_with? and #end_with?Jeremy Kemper2008-04-202-4/+16
|
* Use append_features instead of included to get the inclusion order rightJeremy Kemper2008-04-201-1/+2
|
* Override incompatible 1.8.7p1 String#charsJeremy Kemper2008-04-191-0/+6
|
* Feature check :force_encoding instead of RUBY_VERSIONJeremy Kemper2008-04-192-2/+2
|
* Improve documentation.Pratik Naik2008-04-051-4/+4
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@9226 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Improve documentation.Pratik Naik2008-03-262-65/+57
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@9093 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Applied the faster squish version (closes #11123) [jordi]David Heinemeier Hansson2008-03-131-2/+4
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@9015 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Add String#squish and String#squish! to remove consecutive chunks of ↵Michael Koziarski2008-02-161-0/+24
| | | | | | whitespace. Closes #11123 [jordi, Henrik N] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8878 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Improve documentation to classify to make it clear that it expects names to ↵Michael Koziarski2008-01-081-2/+5
| | | | | | be plural. Reference #10615 [kris_chambers] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8596 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Ruby 1.9 compat: special-case String access methods to not depend on #charsJeremy Kemper2008-01-031-48/+72
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8538 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Ruby 1.9 compat: don't use obsolete ParseDateJeremy Kemper2007-12-271-4/+4
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8490 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Multibyte: String#chars returns self for Ruby 1.9Jeremy Kemper2007-12-211-32/+51
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8460 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Ruby 1.9 compat: 'a'.ord == 'a'[0]Jeremy Kemper2007-12-151-2/+7
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8403 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Ruby 1.9 compat: prefer builtin String#starts_ and ends_with? if available ↵Jeremy Kemper2007-12-151-0/+7
| | | | | | [chuyeow] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8397 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Honor Ruby's default calendar reform setting when creating DateTime objects ↵Geoff Buesing2007-11-241-1/+1
| | | | | | via ActiveRecord's Time -> DateTime overflow, Time#time_with_datetime_fallback, Time#to_datetime, Date#to_datetime and String#to_datetime. Closes #10201 git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8199 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Reference current fast_xs URLJeremy Kemper2007-10-071-0/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7774 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* String#to_xs uses the fast_xs extension if available for Builder speedup.Jeremy Kemper2007-10-071-0/+10
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7773 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fixed spelling errors (closes #9706) [tarmo/rmm5t]David Heinemeier Hansson2007-09-281-2/+2
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7666 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* String#to_time overflows to DateTime. Add String#to_datetime. Closes #8572.Jeremy Kemper2007-06-041-1/+5
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6935 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Document Inflector.ordinalize and merge docs from String inflections. Closes ↵Jeremy Kemper2007-01-141-1/+1
| | | | | | #7023. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5924 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* make sure the String::Access methods return strings, and not multibyte Char ↵Jamis Buck2006-10-131-5/+5
| | | | | | instances git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5299 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Make core_ext/string/access.rb multibyte safe. Closes #6388 [Manfred Stienstra]Michael Koziarski2006-10-121-5/+5
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5287 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Add ActiveSupport::Multibyte. Provides String#chars which lets you deal ↵Michael Koziarski2006-10-031-0/+42
| | | | | | with strings as a sequence of chars, not of bytes. Closes #6242 [Julian Tarkhanov, Manfred Stienstra & Jan Behrens] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5223 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Thoroughly document inflections. Closes #5700.Jeremy Kemper2006-08-031-11/+38
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4654 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added Hash.create_from_xml(string) which will create a hash from a XML ↵David Heinemeier Hansson2006-06-161-1/+1
| | | | | | string and even typecast if possible [DHH] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4453 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added documentation for inflections (closes #5013) [m.stienstra@fngtps.com]David Heinemeier Hansson2006-06-031-3/+65
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4428 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added option to String#camelize to generate lower-cased camel case by ↵David Heinemeier Hansson2006-03-201-2/+5
| | | | | | passing in :lower, like "super_man".camelize(:lower) # => "superMan" [DHH] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3986 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added Hash#to_xml and Array#to_xml that makes it much easier to produce XML ↵David Heinemeier Hansson2006-03-081-0/+4
| | | | | | from basic structures [DHH] Moved Jim Weirich's wonderful Builder from Action Pack to Active Support (it's simply too useful to be stuck in AP) [DHH] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3812 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* A more aesthetically pleasing implementation and changelog entryScott Barron2006-02-081-3/+2
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3549 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Make String#last behave more like Array#last, i.e.Scott Barron2006-02-081-0/+1
| | | | | | | | "f".last(3) => "f" not "f".last(3) => nil git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3548 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Add ActiveSupport::JSON and Object#to_json for converting Ruby objects to ↵Sam Stephenson2005-12-271-0/+17
| | | | | | JSON strings git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3356 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* r3215@asus: jeremy | 2005-11-20 02:05:56 -0800Jeremy Kemper2005-11-211-1/+1
| | | | | | | Eliminate double-requires due to Ruby seeing different paths to the same file. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3127 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Add title case method to String to do, e.g., 'action_web_service'.titlecase ↵Marcel Molina2005-10-191-0/+6
| | | | | | # => 'Action Web Service'. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2690 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Forgot to add core_ext/string/starts_ends_with.rbDavid Heinemeier Hansson2005-09-091-0/+20
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2176 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added String#at, String#from, String#to, String#first, String#last in ↵David Heinemeier Hansson2005-09-031-0/+58
| | | | | | ActiveSupport::CoreExtensions::String::Access to ease access to individual characters and substrings in a string serving basically as human names for range access. Added easy extendability to the inflector through Inflector.inflections (using the Inflector::Inflections singleton class) git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@2110 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added stripping of _id to String#humanize, so "employee_id" becomes ↵David Heinemeier Hansson2005-07-171-0/+2
| | | | | | "Employee" #1574 [Justin French] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1854 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added String#to_time and String#to_date for wrapping ParseDateDavid Heinemeier Hansson2005-03-021-0/+19
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@824 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Moved Active Support into its own gemDavid Heinemeier Hansson2005-02-151-0/+49
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@624 5ecf4fe2-1ee6-0310-87b1-e25e094e27de