GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — livecode/util/encode_errors.pl at develop · livecode/livecode
This repository was archived by the owner on Aug 31, 2021. It is now read-only.
Expand file tree/ Copy pathencode_errors.plMore file actions executable file ·73 lines (58 loc) · 1.48 KB / Copy pathencode_errors.plFile metadata and controlsexecutable file ·73 lines (58 loc) · 1.48 KB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 #!/usr/bin/env perl use warnings; sub generateErrorsList { my $sourceFile = $_[0]; my $name = $_[1]; my $array = "const char * ${name} = \n"; open SOURCE, "<$sourceFile" or die "Could not open \"$sourceFile\": $!"; my @lines = <SOURCE>; close SOURCE; my $found = 0; foreach $line (@lines) { # If the first word of the line is "enum" we have found the error list if ($line =~ /^\s*enum\s/) { $found = 1; } # Continue reading lines until we get to the enum if (!$found) { next; } # End of the enum if ($line =~ /};/) { last; } # The comment contains the error message for this error if ($line =~ m|^\s*//\s*\{|) { # Remove the newline character substr($line, -1) = ""; # Remove the prefix from the error message $line =~ s|^\s*//\s*\{[^\}]*\}\s*|| ; # Protect any quotation marks $line =~ s/\"/\\\"/g ; # Output the message # tab & quote & line & "\n" & quote & return $array .= "\t\"${line}\\n\"\n"; } } $array .= ";\n"; return $array; } # Need to generate the error lists for both the parse and execution errors my $path = $ARGV[0]; my $outputFile = $ARGV[1]; my $output = ""; $output .= generateErrorsList("${path}/executionerrors.h", "MCexecutionerrors"); $output .= "\n"; $output .= generateErrorsList("${path}/parseerrors.h", "MCparsingerrors"); # Write out the error lists open OUTPUT, ">$outputFile" or die "Could not open output file \"$outputFile\": $!"; print OUTPUT $output; close OUTPUT; |
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |