Results for: "to_proc"

The Singleton module implements the Singleton pattern.

Usage

To use Singleton, include the module in your class.

class Klass
   include Singleton
   # ...
end

This ensures that only one instance of Klass can be created.

a,b  = Klass.instance, Klass.instance

a == b
# => true

Klass.new
# => NoMethodError - new is private ...

The instance is created at upon the first call of Klass.instance().

class OtherKlass
  include Singleton
  # ...
end

ObjectSpace.each_object(OtherKlass){}
# => 0

OtherKlass.instance
ObjectSpace.each_object(OtherKlass){}
# => 1

This behavior is preserved under inheritance and cloning.

Implementation

This above is achieved by:

Singleton and Marshal

By default Singleton’s _dump(depth) returns the empty string. Marshalling by default will strip state information, e.g. instance variables and taint state, from the instance. Classes using Singleton can provide custom _load(str) and _dump(depth) methods to retain some of the previous state of the instance.

require 'singleton'

class Example
  include Singleton
  attr_accessor :keep, :strip
  def _dump(depth)
    # this strips the @strip information from the instance
    Marshal.dump(@keep, depth)
  end

  def self._load(str)
    instance.keep = Marshal.load(str)
    instance
  end
end

a = Example.instance
a.keep = "keep this"
a.strip = "get rid of this"
a.taint

stored_state = Marshal.dump(a)

a.keep = nil
a.strip = nil
b = Marshal.load(stored_state)
p a == b  #  => true
p a.keep  #  => "keep this"
p a.strip #  => nil

Redirects to a path ending in /

No documentation available
No documentation available

Adds this spec’s require paths to LOAD_PATH, in the proper location.

Reset nil attributes to their default values to make the spec valid

Provides information about specifcations and dependencies to the resolver, allowing the {Resolver} class to remain generic while still providing power and flexibility.

This module contains the methods that users of Gem::Resolver::Molinillo must to implement, using knowledge of their own model classes.

Extends Fiddle::Closure to allow for building the closure in a block

No documentation available

Generic error class for all errors raised in ASN1 and any of the classes defined in it.

The parent class for all primitive encodings. Attributes are the same as for ASN1Data, with the addition of tagging. Primitive values can never be encoded with indefinite length form, thus it is not possible to set the indefinite_length attribute for Primitive and its sub-classes.

Primitive sub-classes and their mapping to Ruby classes

OpenSSL::ASN1::BitString

Additional attributes

unused_bits: if the underlying BIT STRING’s length is a multiple of 8 then unused_bits is 0. Otherwise unused_bits indicates the number of bits that are to be ignored in the final octet of the BitString’s value.

OpenSSL::ASN1::ObjectId

NOTE: While OpenSSL::ASN1::ObjectId.new will allocate a new ObjectId, it is not typically allocated this way, but rather that are received from parsed ASN1 encodings.

Additional attributes

Examples

With the Exception of OpenSSL::ASN1::EndOfContent, each Primitive class constructor takes at least one parameter, the value.

Creating EndOfContent

eoc = OpenSSL::ASN1::EndOfContent.new

Creating any other Primitive

prim = <class>.new(value) # <class> being one of the sub-classes except EndOfContent
prim_zero_tagged_implicit = <class>.new(value, 0, :IMPLICIT)
prim_zero_tagged_explicit = <class>.new(value, 0, :EXPLICIT)
No documentation available

Generic Exception class that is raised if an error occurs during a Digest operation.

This is the generic exception for OpenSSL::Engine related errors

Generic exception class raised if an error occurs in OpenSSL::KDF module.

Generic Exception class that is raised if an error occurs during an operation on an instance of OpenSSL::Netscape::SPKI.

No documentation available
No documentation available

Raised when errors occur during PKey#sign or PKey#verify.

Generic exception that is raised if an operation on a DH PKey fails unexpectedly or in case an instantiation of an instance of DH fails due to non-conformant input data.

Generic exception that is raised if an operation on a DSA PKey fails unexpectedly or in case an instantiation of an instance of DSA fails due to non-conformant input data.

No documentation available

Generic exception that is raised if an operation on an RSA PKey fails unexpectedly or in case an instantiation of an instance of RSA fails due to non-conformant input data.

No documentation available

Generic error class raised by SSLSocket and SSLContext.

Search took: 5ms  ·  Total Results: 1909