Class: Digest::Class
- Inherits:
-
Object
- Object
- Digest::Class
- Includes:
- Instance
- Defined in:
- digest.c,
lib/digest.rb,
digest.c,
bubblebabble/bubblebabble.c
Overview
This module stands as a base class for digest implementation classes.
Class Method Summary collapse
-
.base64digest(str, *args) ⇒ Object
Returns the base64 encoded hash value of a given string.
-
.bubblebabble(*args) ⇒ Object
call-seq: Digest::Class.bubblebabble(string, …) -> hash_string.
-
.Digest::Class.digest(string, *parameters) ⇒ Object
Returns the hash value of a given string.
-
.file(name, *args) ⇒ Object
Creates a digest object and reads a given file, name.
-
.Digest::Class.hexdigest(string[, ...]) ⇒ Object
Returns the hex-encoded hash value of a given string.
Instance Method Summary collapse
-
#initialize ⇒ Object
constructor
:nodoc:.
Methods included from Instance
#<<, #==, #base64digest, #base64digest!, #block_length, #bubblebabble, #digest, #digest!, #digest_length, #file, #hexdigest, #hexdigest!, #inspect, #length, #new, #reset, #size, #to_s, #update
Constructor Details
#initialize ⇒ Object
:nodoc:
493 494 495 496 497 |
# File 'digest.c', line 493
static VALUE
rb_digest_class_init(VALUE self)
{
return self;
}
|
Class Method Details
.base64digest(str, *args) ⇒ Object
Returns the base64 encoded hash value of a given string. The return value is properly padded with ‘=’ and contains no line feeds.
41 42 43 |
# File 'lib/digest.rb', line 41 def self.base64digest(str, *args) [digest(str, *args)].pack('m0') end |
.bubblebabble(*args) ⇒ Object
call-seq:
Digest::Class.bubblebabble(string, ...) -> hash_string
Returns the BubbleBabble encoded hash value of a given string.
101 102 103 104 105 |
# File 'bubblebabble/bubblebabble.c', line 101
static VALUE
rb_digest_class_s_bubblebabble(int argc, VALUE *argv, VALUE klass)
{
return bubblebabble_str_new(rb_funcallv(klass, id_digest, argc, argv));
}
|
.Digest::Class.digest(string, *parameters) ⇒ Object
Returns the hash value of a given string. This is equivalent to Digest::Class.new(*parameters).digest(string), where extra parameters, if any, are passed through to the constructor and the string is passed to #digest().
457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 |
# File 'digest.c', line 457
static VALUE
rb_digest_class_s_digest(int argc, VALUE *argv, VALUE klass)
{
VALUE str;
volatile VALUE obj;
if (argc < 1) {
rb_raise(rb_eArgError, "no data given");
}
str = *argv++;
argc--;
StringValue(str);
obj = rb_obj_alloc(klass);
rb_obj_call_init(obj, argc, argv);
return rb_funcall(obj, id_digest, 1, str);
}
|
.file(name, *args) ⇒ Object
Creates a digest object and reads a given file, name. Optional arguments are passed to the constructor of the digest class.
p Digest::SHA256.file("X11R6.8.2-src.tar.bz2").hexdigest
# => "f02e3c85572dc9ad7cb77c2a638e3be24cc1b5bea9fdbb0b0299c9668475c534"
34 35 36 |
# File 'lib/digest.rb', line 34 def self.file(name, *args) new(*args).file(name) end |
.Digest::Class.hexdigest(string[, ...]) ⇒ Object
Returns the hex-encoded hash value of a given string. This is almost equivalent to Digest.hexencode(Digest::Class.new(*parameters).digest(string)).
486 487 488 489 490 |
# File 'digest.c', line 486
static VALUE
rb_digest_class_s_hexdigest(int argc, VALUE *argv, VALUE klass)
{
return hexencode_str_new(rb_funcallv(klass, id_digest, argc, argv));
}
|