# GTK3 for nimrod, fix this:
# type 
#   VisibilityState* {.size: sizeof(cint).} = enum 
# 
arg0 = ARGV[0]
text = File.read(arg0)
list = Array.new
text.lines{|line|
	if m = /^\s*(\w+)\* {.*} = enum \n/.match(line)
		list << m[1]
		#puts m[1]
	end
}
#exit
list.sort_by!{|el| -el.length}
list.each{|pat|
	text.gsub!(/\b#{pat}\b/, 'T' + pat)
}
File.open(arg0, "w") {|file|
	text.lines{|line|
		file.write(line)
	}
}

