class Samovar::Flag

def initialize(text)

def initialize(text)
	@text = text
	
	if text =~ /(.*?)\s(\<.*?\>)/
		@prefix = $1
		@value = $2
	else
		@prefix = @text
	end
	
	*@alternatives, @prefix = @prefix.split('/')
end

def key

def key
	@key ||= @prefix.sub(/^-*/, '').gsub('-', '_').to_sym
end

def parse(input)

def parse(input)
	if prefix?(input.first)
		if @value
			input.shift(2).last
		else
			input.shift; key
		end
	end
end

def prefix?(token)

def prefix?(token)
	@prefix == token or @alternatives.include?(token)
end

def to_s

def to_s
	@text
end