<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>CHANGELOG</filename>
    </added>
    <added>
      <filename>LICENSE</filename>
    </added>
    <added>
      <filename>README</filename>
    </added>
    <added>
      <filename>README.textile</filename>
    </added>
    <added>
      <filename>randexp.gemspec</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -7,32 +7,6 @@ require 'rake/rdoctask'
 require &quot;spec&quot;
 require &quot;spec/rake/spectask&quot;
 
-DIR = File.dirname(__FILE__)
-NAME = 'randexp'
-SUMMARY =&lt;&lt;-EOS
-Library for generating random strings.
-EOS
-GEM_VERSION = &quot;0.1.0&quot;
-
-spec = Gem::Specification.new do |s|
-  s.name         = NAME
-  s.summary      = SUMMARY
-
-  s.version      = GEM_VERSION
-  s.platform     = Gem::Platform::RUBY
-  
-  s.has_rdoc         = true
-
-  s.require_path = &quot;lib&quot;
-  s.files        = %w(Rakefile) + Dir[&quot;lib/**/*&quot;]
-end
-
-Rake::GemPackageTask.new(spec) do |package|
-  package.gem_spec = spec
-  package.need_zip = true
-  package.need_tar = true
-end
-
 ##############################################################################
 # rSpec &amp; rcov
 ##############################################################################</diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1,4 @@
 class Randexp
-  VERSION = &quot;0.1.0&quot;
-
   attr_accessor :sexp
 
   def initialize(source)</diff>
      <filename>lib/randexp.rb</filename>
    </modified>
    <modified>
      <diff>@@ -17,6 +17,12 @@ class Randexp
       when /(.*)\\([wsdc])\{(\d+)\,(\d+)\}$/        then union(parse($1), quantify(random($2), ($3.to_i)..($4.to_i)))
       when /(.*)\\([wsdc])\{(\d+)\}$/               then union(parse($1), quantify(random($2), $3.to_i))
       when /(.*)\\([wsdc])$/                        then union(parse($1), random($2))
+      when /\((.*)\)(\*|\*\?|\+|\+\?|\?)$/          then quantify(parse($1), $2.to_sym)
+      when /\((.*)\)\{(\d+)\,(\d+)\}$/              then quantify(parse($1), ($2.to_i)..($3.to_i))
+      when /\((.*)\)\{(\d+)\}$/                     then quantify(parse($1), $3.to_i)
+      when /(.*)(.|\s)(\*|\*\?|\+|\+\?|\?)$/        then union(parse($1), quantify(literal($2), $3.to_sym))
+      when /(.*)(.|\s)\{(\d+)\,(\d+)\}$/            then union(parse($1), quantify(literal($2), ($3.to_i)..($4.to_i)))
+      when /(.*)(.|\s)\{(\d+)\}$/                   then union(parse($1), quantify(literal($2), $3.to_i))
       when /(.*)(.|\s)$/                            then union(parse($1), literal($2))
       else nil
       end</diff>
      <filename>lib/randexp/parser.rb</filename>
    </modified>
    <modified>
      <diff>@@ -26,8 +26,8 @@ class Randexp
       when :'?'         then ([''] + cell).pick * ''
       when :+, :'+?'    then raise &quot;Sorry, \&quot;#{cell * ''}+\&quot; is too vague, try setting a range: \&quot;#{cell * ''}{1,3}\&quot;&quot;
       when :*, :'*?'    then raise &quot;Sorry, \&quot;#{cell * ''}*\&quot; is too vague, try setting a range: \&quot;#{cell * ''}{0,3}\&quot;&quot;
-      when Range        then quant.pick.of { cell * '' } * ''
-      when Integer      then quant.of { cell * '' } * ''
+      when Range        then quantity.pick.of { cell * '' } * ''
+      when Integer      then quantity.of { cell * '' } * ''
       when nil          then cell * ''
       end
     end</diff>
      <filename>lib/randexp/reducer.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2,31 +2,31 @@ class Randgen
   WORDS_PER_SENTENCE = 3..20
   SENTENCES_PER_PARAGRAPH = 3..8
   
-  def self.bool
+  def self.bool(options = {})
     ['true', 'false'].pick
   end
 
-  def self.lchar
+  def self.lchar(options = {})
     ('a'..'z').to_a.pick
   end
 
-  def self.uchar
+  def self.uchar(options = {})
     ('A'..'Z').to_a.pick
   end
 
-  def self.char
+  def self.char(options = {})
     [lchar, uchar].pick
   end
 
-  def self.whitespace
+  def self.whitespace(options = {})
     [&quot;\t&quot;, &quot;\n&quot;, &quot;\r&quot;, &quot;\f&quot;].pick
   end
 
-  def self.digit
+  def self.digit(options = {})
     ('0'..'9').to_a.pick
   end
 
-  def self.alpha_numeric
+  def self.alpha_numeric(options = {})
     [char, digit].pick
   end
 </diff>
      <filename>lib/randgen.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>cbbf872aa40b472341635435552c78648c97158e</id>
    </parent>
  </parents>
  <author>
    <name>Ben Burkert</name>
    <email>ben@benburkert.com</email>
  </author>
  <url>http://github.com/benburkert/randexp/commit/069079f1e2fa3496f99d8d4172f8d866fb913296</url>
  <id>069079f1e2fa3496f99d8d4172f8d866fb913296</id>
  <committed-date>2008-07-08T13:09:24-07:00</committed-date>
  <authored-date>2008-07-08T13:09:24-07:00</authored-date>
  <message>tweaked some stuff</message>
  <tree>ddc9e1a6434fc7ad5fb56d0982377c6b79485df7</tree>
  <committer>
    <name>Ben Burkert</name>
    <email>ben@benburkert.com</email>
  </committer>
</commit>
