Class: String

Inherits:
Object
  • Object
show all
Includes:
Net::BER::BERParser
Defined in:
lib/net/ber.rb,
lib/net/ber.rb

Direct Known Subclasses

Net::BER::BerIdentifiedString

Constant Summary

Constants included from Net::BER::BERParser

Net::BER::BERParser::BuiltinSyntax, Net::BER::BERParser::TagClasses

Instance Method Summary collapse

Methods included from Net::BER::BERParser

#read_ber_from_string

Instance Method Details

#read_ber(syntax = nil) ⇒ Object



355
356
357
# File 'lib/net/ber.rb', line 355

def read_ber syntax=nil
	StringIO.new(self).read_ber(syntax)
end

#read_ber!(syntax = nil) ⇒ Object



358
359
360
361
362
363
364
365
366
# File 'lib/net/ber.rb', line 358

def read_ber! syntax=nil
	obj,n_consumed = read_ber_from_string(self, syntax)
	if n_consumed
 self.slice!(0...n_consumed)
 obj
	else
 nil
	end
end

#to_ber(code = 4) ⇒ Object

to_ber A universal octet-string is tag number 4, but others are possible depending on the context, so we let the caller give us one. The preferred way to do this in user code is via to_ber_application_sring and to_ber_contextspecific.



495
496
497
# File 'lib/net/ber.rb', line 495

def to_ber code = 4
  [code].pack('C') + length.to_ber_length_encoding + self
end

#to_ber_application_string(code) ⇒ Object

to_ber_application_string



502
503
504
# File 'lib/net/ber.rb', line 502

def to_ber_application_string code
  to_ber( 0x40 + code )
end

#to_ber_contextspecific(code) ⇒ Object

to_ber_contextspecific



509
510
511
# File 'lib/net/ber.rb', line 509

def to_ber_contextspecific code
  to_ber( 0x80 + code )
end