#!/usr/bin/perl


print<<EOM;
/*
 * This file is automatically generated by $0
 * DO NOT EDIT MANUALLY, fix the $0 instead if necessary.
 */
#ifndef	ASN1_PARSER_EXPR_STR_H
#define	ASN1_PARSER_EXPR_STR_H

static char *asn1p_expr_type2str[] __attribute__ ((unused)) = {
EOM

while(<>) {
	chomp;
	next if(/TYPE_MAX/);
	next unless(/^[ \t]+(ASN_[A-Z]+_([A-Za-z0-9_]+))/);

	print "\t[ $1 ]\t = ";

	$_ = $2;
	if($_ eq "RELATIVE_OID") {
		print '"RELATIVE-OID"';
	} else {
		s/_/ /;
		print '"'.$_.'"';
	}

	print ",\n";
}

print<<EOM;
};

/*
 * Convert the ASN.1 expression type back into the string representation.
 */
#define	ASN_EXPR_TYPE2STR(type)					\\
	(							\\
	(((ssize_t)(type)) < 0					\\
	|| ((size_t)(type)) >= sizeof(asn1p_expr_type2str)	\\
		/ sizeof(asn1p_expr_type2str[0]))		\\
		? (char *)0					\\
		: asn1p_expr_type2str[(type)]			\\
	)

#endif	/* ASN1_PARSER_EXPR_STR_H */
EOM
