Class: CompressionObject

Inherits:
Object
  • Object
show all
Defined in:
ext/lib/CompLearnLib/CompressionObject.rb

Overview

CompressionObject

This is a compressible object. Abstracts string/files

$Id: CompressionObject.rb,v 1.1 2003/10/23 17:03:59 cilibrar Exp $

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(str, id, isFile) ⇒ CompressionObject

private constructor



16
17
18
19
20
# File 'ext/lib/CompLearnLib/CompressionObject.rb', line 16

def initialize(str,id,isFile)
    @cId = id
    @str = str
    @isFile = isFile
end

Class Method Details

.fromFile(fname) ⇒ Object

Initialize from file



25
26
27
28
# File 'ext/lib/CompLearnLib/CompressionObject.rb', line 25

def self.fromFile(fname)
    c = new('',fname,true)
    return(c)
end

.fromString(str, id) ⇒ Object

Initialize from string



33
34
35
36
# File 'ext/lib/CompLearnLib/CompressionObject.rb', line 33

def self.fromString(str,id)
    c = new(str,id,false)
    return(c)
end

Instance Method Details

#to_sObject

id is to_s



41
42
43
# File 'ext/lib/CompLearnLib/CompressionObject.rb', line 41

def to_s()
    @cId
end

#valueObject

return the value depending on whether its a file or string



49
50
51
52
53
54
55
56
57
# File 'ext/lib/CompLearnLib/CompressionObject.rb', line 49

def value()
    if @isFile
        raise "Cannot find #{@cId}" unless File.exist?(@cId)
        raise "Cannot read #{@cId}" unless File.stat(@cId).readable?
        return(File.open(@cId,"r").read)
    else
        return(@str)
    end
end