Htgroup
accesses apache-compatible group files. Htgroup
can be used to provide group-based authentication for users. Currently Htgroup
is not directly integrated with any authenticators in WEBrick
. For security, the path for a digest password database should be stored outside of the paths available to the HTTP server.
Example:
htgroup = WEBrick::HTTPAuth::Htgroup.new 'my_group_file' htgroup.add 'superheroes', %w[spiderman batman] htgroup.members('superheroes').include? 'magneto' # => false
Root of the HTTP error statuses
Root of the HTTP client error statuses
Root of the HTTP server error statuses
An object representation of a stack frame, initialized by Kernel#caller_locations
.
For example:
# caller_locations.rb def a(skip) caller_locations(skip) end def b(skip) a(skip) end def c(skip) b(skip) end c(0..2).map do |call| puts call.to_s end
Running ruby caller_locations.rb
will produce:
caller_locations.rb:2:in `a' caller_locations.rb:5:in `b' caller_locations.rb:8:in `c'
Here’s another example with a slightly different result:
# foo.rb class Foo attr_accessor :locations def initialize(skip) @locations = caller_locations(skip) end end Foo.new(0..2).locations.map do |call| puts call.to_s end
Now run ruby foo.rb
and you should see:
init.rb:4:in `initialize' init.rb:8:in `new' init.rb:8:in `<main>'
An implementation of PseudoPrimeGenerator
which uses a prime table generated by trial division.
Generates all integers which are greater than 2 and are not divisible by either 2 or 3.
This is a pseudo-prime generator, suitable on checking primality of an integer by brute force method.
Internal use. An implementation of Eratosthenes’ sieve
Generates Source-s. USE THIS CLASS.
Validator
performs various gem file and gem database validation
RFC6068, the mailto URL scheme.
YAML::Store
provides the same functionality as PStore
, except it uses YAML to dump objects instead of Marshal
.
require 'yaml/store' Person = Struct.new :first_name, :last_name people = [Person.new("Bob", "Smith"), Person.new("Mary", "Johnson")] store = YAML::Store.new "test.store" store.transaction do store["people"] = people store["greeting"] = { "hello" => "world" } end
After running the above code, the contents of “test.store” will be:
--- people: - !ruby/struct:Person first_name: Bob last_name: Smith - !ruby/struct:Person first_name: Mary last_name: Johnson greeting: hello: world
Defines a number of tokens used for parsing XML
. Not for general consumption.
Atom
is an XML-based document format that is used to describe ‘feeds’ of related information. A typical use is in a news feed where the information is periodically updated and which users can subscribe to. The Atom
format is described in tools.ietf.org/html/rfc4287
The Atom
module provides support in reading and creating feeds.
See the RSS
module for examples consuming and creating feeds.