This is a Ruby tree! It shows every object from the Ruby Programming Language in a tree format.
# OpenSSL::ASN1::Primitive < OpenSSL::ASN1::ASN1Data (from ruby core) --- 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::EndOfContent <=> *value* is always `nil` * OpenSSL::ASN1::Boolean <=> *value* is `true` or `false` * OpenSSL::ASN1::Integer <=> *value* is an OpenSSL::BN * OpenSSL::ASN1::BitString <=> *value* is a String * OpenSSL::ASN1::OctetString <=> *value* is a String * OpenSSL::ASN1::Null <=> *value* is always `nil` * OpenSSL::ASN1::Object <=> *value* is a String * OpenSSL::ASN1::Enumerated <=> *value* is an OpenSSL::BN * OpenSSL::ASN1::UTF8String <=> *value* is a String * OpenSSL::ASN1::NumericString <=> *value* is a String * OpenSSL::ASN1::PrintableString <=> *value* is a String * OpenSSL::ASN1::T61String <=> *value* is a String * OpenSSL::ASN1::VideotexString <=> *value* is a String * OpenSSL::ASN1::IA5String <=> *value* is a String * OpenSSL::ASN1::UTCTime <=> *value* is a Time * OpenSSL::ASN1::GeneralizedTime <=> *value* is a Time * OpenSSL::ASN1::GraphicString <=> *value* is a String * OpenSSL::ASN1::ISO64String <=> *value* is a String * OpenSSL::ASN1::GeneralString <=> *value* is a String * OpenSSL::ASN1::UniversalString <=> *value* is a String * OpenSSL::ASN1::BMPString <=> *value* is a String ## 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 * *sn*: the short name as defined in <openssl/objects.h>. * *ln*: the long name as defined in <openssl/objects.h>. * *oid*: the object identifier as a String, e.g. "1.2.3.4.5" * *short_name*: alias for *sn*. * *long_name*: alias for *ln*. ## 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) --- # Class methods: new # Instance methods: tagging to_der # Attributes: attr_accessor tagging
This is MURDOC! A Ruby documentation browser inspired by Smalltalk-80. It allows you to learn about Ruby by browsing through its class hierarchies, and see any of its methods.