class Corosync::CPG::Member
Attributes
nodeid[R]
@return [Integer] Node ID of the member
pid[R]
@return [Integer] Process ID of the member
Public Class Methods
new(*args)
click to toggle source
@overload initialize(member)
@param member [FFI::Pointer<Corosync::CpgAddress>, Corosync::CpgAddress]
@overload initialize(nodeid, pid)
@param nodeid [Integer] @param pid [Integer]
# File lib/corosync/cpg/member.rb, line 18 def initialize(*args) if args.size == 1 then member = args.first member = Corosync::CpgAddress.new(member) if member.is_a?(FFI::Pointer) if member.is_a?(Corosync::CpgAddress) or member.is_a?(Corosync::CpgIterationDescriptionT) then @nodeid = member[:nodeid] @pid = member[:pid] else raise ArgumentError, "Invalid argument type" end elsif args.size == 2 then @nodeid = args.shift.to_i @pid = args.shift.to_i else raise ArgumentError, "wrong number of arguments (#{args.size} for 1..2)" end end
Public Instance Methods
==(target)
click to toggle source
@return [Boolean]
# File lib/corosync/cpg/member.rb, line 38 def ==(target) self.class == target.class and @nodeid == target.nodeid and @pid == target.pid end
Also aliased as: eql?
hash()
click to toggle source
# File lib/corosync/cpg/member.rb, line 43 def hash [@nodid,@pid].hash end
to_s()
click to toggle source
# File lib/corosync/cpg/member.rb, line 47 def to_s "#{@nodeid}:#{@pid}" end