added isatool codegen
authorhaftmann
Mon, 18 Dec 2006 08:57:41 +0100
changeset 218847df02627898e
parent 21883 341cefa2e4da
child 21885 5a11263bd8cf
added isatool codegen
lib/Tools/codegen
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/lib/Tools/codegen	Mon Dec 18 08:57:41 2006 +0100
     1.3 @@ -0,0 +1,41 @@
     1.4 +#!/usr/bin/env bash
     1.5 +#
     1.6 +# $Id$
     1.7 +# Author: Florian Haftmann, TUM
     1.8 +#
     1.9 +# DESCRIPTION: issue code generation from shell
    1.10 +
    1.11 +
    1.12 +## diagnostics
    1.13 +
    1.14 +PRG="$(basename "$0")"
    1.15 +
    1.16 +function usage()
    1.17 +{
    1.18 +  echo
    1.19 +  echo "Usage: $PRG IMAGE THY SERI"
    1.20 +  echo
    1.21 +  echo "  Issues code generation using image IMAGE,"
    1.22 +  echo "  theory THY,"
    1.23 +  echo "  with Isar command 'code_gen SERI'"
    1.24 +  echo
    1.25 +  exit 1
    1.26 +}
    1.27 +
    1.28 +
    1.29 +## process command line
    1.30 +
    1.31 +[ "$#" -lt 2 -o "$1" = "-?" ] && usage
    1.32 +
    1.33 +IMAGE="$1"; shift
    1.34 +THY="$1"; shift
    1.35 +SERI="$1"
    1.36 +
    1.37 +
    1.38 +## main
    1.39 +
    1.40 +SERI=$(echo $SERI | sed -e 's/\\/\\\\"/g; s/"/\\\"/g')
    1.41 +CMD="Isar.toplevel (fn _ => (use_thy \"$THY\"; CodegenPackage.codegen_command (theory \"$THY\") \"$SERI\"))"
    1.42 +
    1.43 +set -x
    1.44 +"$ISABELLE" -q -e "$CMD" "$IMAGE"