Class: Preprocessor::Parameters

Inherits:
Array
  • Object
show all
Defined in:
lib/dbc/parameters.rb

Instance Method Summary collapse

Constructor Details

#initializeParameters

Returns a new instance of Parameters.



17
18
19
20
# File 'lib/dbc/parameters.rb', line 17

def initialize
	super
	@ellipses = false
end

Instance Method Details

#ellipses?Boolean

Returns:

  • (Boolean)


29
30
31
# File 'lib/dbc/parameters.rb', line 29

def ellipses?
	@ellipses
end

#get_args(tokens) ⇒ Object



33
34
35
36
37
# File 'lib/dbc/parameters.rb', line 33

def get_args(tokens)
	args = Preprocessor::ArgumentParser.parse(tokens)
	args.each { |a| a.strip! } # remove leading, trailing white space
	self.arrange_args(args)
end

#inspectObject



47
48
49
# File 'lib/dbc/parameters.rb', line 47

def inspect
	"\#<#{self.class}:#{self.to_s}>"
end

#to_sObject



39
40
41
42
43
44
45
# File 'lib/dbc/parameters.rb', line 39

def to_s
	if ellipses?
		self[0, self.length - 1] << '...'
	else
		self
	end.join(',')
end

#with_ellipsesObject



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

def with_ellipses()
	raise "already has ellipses #{self}" if ellipses?
	@ellipses = true
	self << '__VA_ARGS__'
	self.freeze
end