Class: ChildProcess::Unix::Lib::Attrs

Inherits:
Object
  • Object
show all
Defined in:
lib/childprocess/unix/lib.rb

Overview

FileActions

Instance Method Summary collapse

Constructor Details

#initializeAttrs

Returns a new instance of Attrs.



131
132
133
134
# File 'lib/childprocess/unix/lib.rb', line 131

def initialize
  @ptr = FFI::MemoryPointer.new(1, Platform::SIZEOF.fetch(:posix_spawnattr_t), false)
  Lib.check Lib.posix_spawnattr_init(@ptr)
end

Instance Method Details

#flagsObject



145
146
147
148
149
150
# File 'lib/childprocess/unix/lib.rb', line 145

def flags
  ptr = FFI::MemoryPointer.new(:short)
  Lib.check Lib.posix_spawnattr_getflags(@ptr, ptr)

  ptr.read_short
end

#flags=(flags) ⇒ Object



141
142
143
# File 'lib/childprocess/unix/lib.rb', line 141

def flags=(flags)
  Lib.check Lib.posix_spawnattr_setflags(@ptr, flags)
end

#freeObject



136
137
138
139
# File 'lib/childprocess/unix/lib.rb', line 136

def free
  Lib.check Lib.posix_spawnattr_destroy(@ptr)
  @ptr = nil
end

#to_ptrObject



152
153
154
# File 'lib/childprocess/unix/lib.rb', line 152

def to_ptr
  @ptr
end