Module: DTAS

Extended by:
Encoding
Defined in:
lib/dtas.rb

Overview

DTAS currently exposes no public API for Ruby programmers. See 80x24.org/dtas.git/about/ for more info.

Defined Under Namespace

Modules: Command, EditClient, Encoding, ParseFreq, ParseTime, Pipeline, Process, Serialize, Source, Util, WritableIter, XS Classes: Buffer, CueIndex, FadeFX, Format, Mcache, Mlib, PartStats, Pipe, PipeNB, Player, RGState, ReplayGain, Sigevent, Sink, SplitFX, StateFile, TFX, Track, Tracklist, UNIXAccepted, UNIXClient, UNIXServer

Constant Summary collapse

VERSION =

:nodoc:

'0.21.0'.freeze

Class Method Summary collapse

Methods included from Encoding

extended, try_enc

Class Method Details

.libcObject



22
23
24
25
26
27
# File 'lib/dtas.rb', line 22

def self.libc
  @libc ||= begin
    require 'fiddle'
    Fiddle.dlopen(nil)
  end
end

.nowObject

try to use the monotonic clock in Ruby >= 2.1, it is immune to clock offset adjustments and generates less garbage (Float vs Time object) :stopdoc:



12
13
14
# File 'lib/dtas.rb', line 12

def self.now # :nodoc:
  ::Process.clock_gettime(::Process::CLOCK_MONOTONIC)
end

.nullObject

:nodoc:



17
18
19
# File 'lib/dtas.rb', line 17

def self.null # :nodoc:
  @null ||= File.open('/dev/null', 'r+')
end

.yaml_load(buf) ⇒ Object

prevent breakage in Psych 4.x; we’re a shell and designed to execute code



30
31
32
33
# File 'lib/dtas.rb', line 30

def self.yaml_load(buf)
  require 'yaml'
  YAML.respond_to?(:unsafe_load) ? YAML.unsafe_load(buf) : YAML.load(buf)
end