zap.pl
来自「InsightToolkit-1.4.0(有大量的优化算法程序)」· PL 代码 · 共 46 行
PL
46 行
#! /bin/sh
# -*- perl -*-
exec perl -w -x $0 ${1+"$@"}
#!perl -w
#line 6
#
# fsm
#
# Usage: zap.pl blah
#
# Result: Generates (on stdout) vcl_blah.h from vcl_blah.hhh
#
$blah = $ARGV[0];
die unless defined($blah);
$blah =~ s/^vcl_//;
$blah =~ s/\.h+$//;
die unless -f "vcl_$blah.hhh";
die unless open(FD, "<vcl_$blah.hhh");
$guard = "vcl_generic_${blah}_h_";
$prefix = "vcl_generic_${blah}_STD";
print "#ifndef ${guard}\n";
print "#define ${guard}\n";
print "\n";
print "// THIS IS A GENERATED FILE. DO NOT EDIT! -- Instead, edit vcl_$blah.hhh and run make\n";
print "\n";
#print "#ifndef ${prefix}\n";
#print " ** \"error -- you must #define ${prefix} before #including this file\" **\n";
#print "#endif\n";
#print "\n";
while (<FD>) {
if (m/^\@([a-zA-Z_0-9\:]+)\s*$/) {
$orig = $1; $name = $orig; $name =~ s/\:\:/_/g;
print "// $orig\n";
print "#ifndef vcl_$name\n";
print "#define vcl_$name ${prefix} :: $orig\n";
print "#endif\n";
} else {
print;
}
}
print "\n";
print "#endif // ${guard}\n";
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?