The Go Programming Language

Text file src/cmd/5l/mkenam

     1	# Inferno utils/5c/mkenam
     2	# http://code.google.com/p/inferno-os/source/browse/utils/5c/mkenam
     3	#
     4	#	Copyright © 1994-1999 Lucent Technologies Inc.  All rights reserved.
     5	#	Portions Copyright © 1995-1997 C H Forsyth (forsyth@terzarima.net)
     6	#	Portions Copyright © 1997-1999 Vita Nuova Limited
     7	#	Portions Copyright © 2000-2007 Vita Nuova Holdings Limited (www.vitanuova.com)
     8	#	Portions Copyright © 2004,2006 Bruce Ellis
     9	#	Portions Copyright © 2005-2007 C H Forsyth (forsyth@terzarima.net)
    10	#	Revisions Copyright © 2000-2007 Lucent Technologies Inc. and others
    11	#	Portions Copyright © 2009 The Go Authors.  All rights reserved.
    12	#
    13	# Permission is hereby granted, free of charge, to any person obtaining a copy
    14	# of this software and associated documentation files (the "Software"), to deal
    15	# in the Software without restriction, including without limitation the rights
    16	# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
    17	# copies of the Software, and to permit persons to whom the Software is
    18	# furnished to do so, subject to the following conditions:
    19	#
    20	# The above copyright notice and this permission notice shall be included in
    21	# all copies or substantial portions of the Software.
    22	#
    23	# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    24	# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    25	# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
    26	# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
    27	# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    28	# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
    29	# THE SOFTWARE.
    30	
    31	awk '
    32	BEGIN {
    33		print "char*	anames[] ="
    34		print "{"
    35	}
    36	
    37	/^	A/ {
    38		name=$1
    39		sub(/,/, "", name)
    40		sub(/^A/, "", name)
    41		print "\t\"" name "\","
    42	}
    43	
    44	END { print "};" }
    45	' ../5l/5.out.h >enam.c

release.r60.3. Except as noted, this content is licensed under a Creative Commons Attribution 3.0 License.