Module: AnixeCsv::Formatter::ClassMethods

Defined in:
lib/anixe_csv/formatter.rb

Overview

visible in the singleton

Instance Method Summary collapse

Instance Method Details

#delimiter(value = nil) ⇒ Object



20
21
22
# File 'lib/anixe_csv/formatter.rb', line 20

def delimiter(value=nil)
	@delimiter = value
end

#escape(from_str, to_str) ⇒ Object



28
29
30
# File 'lib/anixe_csv/formatter.rb', line 28

def escape(from_str, to_str)
	@escape = [from_str, to_str]
end

#field(*args, &block) ⇒ Object



40
41
42
43
44
45
46
47
# File 'lib/anixe_csv/formatter.rb', line 40

def field(*args, &block)
	Field.new(*args).tap do |field|
		self.fields[field.name] = field

		field.block = block
		create_accessor(field.name)
	end
end

#fieldsObject



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

def fields
	@fields ||= {}
end

#get_delimiterObject



24
25
26
# File 'lib/anixe_csv/formatter.rb', line 24

def get_delimiter
	@delimiter ||= ','
end

#get_escapeObject



32
33
34
# File 'lib/anixe_csv/formatter.rb', line 32

def get_escape
	@escape ||= [get_delimiter,"_"]
end

#headersObject



54
55
56
# File 'lib/anixe_csv/formatter.rb', line 54

def headers
	fields.keys.join(get_delimiter)
end

#rule(&block) ⇒ Object

A rule shall raise an exception if it is not conforming



50
51
52
# File 'lib/anixe_csv/formatter.rb', line 50

def rule(&block)
	rules << block
end

#rulesObject



16
17
18
# File 'lib/anixe_csv/formatter.rb', line 16

def rules
	@rules ||= []
end

#validate(field, regexp) ⇒ Object



36
37
38
# File 'lib/anixe_csv/formatter.rb', line 36

def validate(field, regexp)
	@fields[field].regexp = regexp
end