34 lines
		
	
	
		
			564 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			564 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #
 | |
| # genoptcode.hawk
 | |
| #
 | |
| # hawk -f genoptcode.hawk hawk.h
 | |
| #
 | |
| 
 | |
| BEGIN { 
 | |
| 	collect=0; 
 | |
| 	tab3="\t\t";
 | |
| 	tab4="\t\t\t";
 | |
| }
 | |
| 
 | |
| /^[[:space:]]*enum[[:space:]]+hawk_trait_t[[:space:]]*$/ { 
 | |
| 	collect=1; 
 | |
| 	print tab3 "// generated by genoptcode.awk";
 | |
| 	print tab3 "enum Option";
 | |
| 	print tab3 "{";
 | |
| }
 | |
| 
 | |
| collect && /^[[:space:]]*};[[:space:]]*$/ { 
 | |
| 	print tab3 "};";
 | |
| 	print tab3 "// end of enum Option";
 | |
| 	print "";
 | |
| 	collect=0; 
 | |
| }
 | |
| 
 | |
| collect && /^[[:space:]]*HAWK_[[:alnum:]]+/ { 
 | |
| 	split ($1, flds, ",");
 | |
| 	name=flds[1];
 | |
| 
 | |
| 	print tab4 "TRAIT_" substr (name,6,length(name)-5) " = " name ",";
 | |
| }
 | |
| 
 |