Class: Nl::Linux::Wireguard::Structs::KernelTimespec

Inherits:
Struct
  • Object
show all
Defined in:
nl-linux/generated/nl/linux/wireguard.rb,
nl-linux/generated/nl/linux/wireguard.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#nsec ⇒ Integer

Number of nanoseconds, after the second began.

Returns:

  • (Integer)


67
# File 'nl-linux/generated/nl/linux/wireguard.rb', line 67

MEMBERS = Ractor.make_shareable({sec: ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), nsec: ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)})

#sec ⇒ Integer

Number of seconds, since UNIX epoch.

Returns:

  • (Integer)


67
# File 'nl-linux/generated/nl/linux/wireguard.rb', line 67

MEMBERS = Ractor.make_shareable({sec: ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), nsec: ::Nl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)})

Class Method Details

.decode(decoder) ⇒ self

Decodes the struct.

Parameters:

Returns:

  • (self)


73
74
75
# File 'nl-linux/generated/nl/linux/wireguard.rb', line 73

def self.decode(decoder)
  self.new(*MEMBERS.map {|name, datatype| datatype.decode(decoder) })
end

Instance Method Details

#encode(encoder) ⇒ void

This method returns an undefined value.

Encodes the struct.

Parameters:



81
82
83
# File 'nl-linux/generated/nl/linux/wireguard.rb', line 81

def encode(encoder)
  MEMBERS.each {|name, datatype| datatype.encode(encoder, self.public_send(name)) }
end