219 splitarray ":" "$WRAPPER_FIFOS"; FIFOS=("${SPLITARRAY[@]}") |
220 splitarray ":" "$WRAPPER_FIFOS"; FIFOS=("${SPLITARRAY[@]}") |
220 [ "${#FIFOS[@]}" -eq 2 ] || fail "Expected IN:OUT fifo specification" |
221 [ "${#FIFOS[@]}" -eq 2 ] || fail "Expected IN:OUT fifo specification" |
221 [ -p "${FIFOS[0]}" ] || fail "Bad input fifo: ${FIFOS[0]}" |
222 [ -p "${FIFOS[0]}" ] || fail "Bad input fifo: ${FIFOS[0]}" |
222 [ -p "${FIFOS[1]}" ] || fail "Bad output fifo: ${FIFOS[1]}" |
223 [ -p "${FIFOS[1]}" ] || fail "Bad output fifo: ${FIFOS[1]}" |
223 MLTEXT="$MLTEXT; Isabelle_Process.init_fifos \"${FIFOS[0]}\" \"${FIFOS[1]}\";" |
224 MLTEXT="$MLTEXT; Isabelle_Process.init_fifos \"${FIFOS[0]}\" \"${FIFOS[1]}\";" |
224 elif [ -n "$PROOFGENERAL" ]; then |
|
225 MLTEXT="$MLTEXT; ProofGeneral.init $ISAR;" |
|
226 elif [ "$ISAR" = true ]; then |
225 elif [ "$ISAR" = true ]; then |
227 if [ -z "$ISABELLE_PROCESS_OPTIONS" ]; then |
226 if [ -z "$ISABELLE_PROCESS_OPTIONS" ]; then |
228 ISABELLE_PROCESS_OPTIONS="$ISABELLE_TMP/options" |
227 ISABELLE_PROCESS_OPTIONS="$ISABELLE_TMP/options" |
229 "$ISABELLE_TOOL" options -x "$ISABELLE_PROCESS_OPTIONS" || fail "Failed to retrieve options" |
228 "$ISABELLE_TOOL" options -x "$ISABELLE_PROCESS_OPTIONS" || fail "Failed to retrieve options" |
230 fi |
229 fi |
231 MLTEXT="$MLTEXT; Isar.main ();" |
230 if [ -n "$PROOFGENERAL" ]; then |
|
231 MLTEXT="$MLTEXT; ProofGeneral.init ();" |
|
232 else |
|
233 MLTEXT="$MLTEXT; Isar.main ();" |
|
234 fi |
232 else |
235 else |
233 NICE="" |
236 NICE="" |
234 fi |
237 fi |
235 |
238 |
236 export INFILE OUTFILE MLTEXT TERMINATE NOWRITE ISABELLE_PID ISABELLE_TMP ISABELLE_PROCESS_OPTIONS |
239 export INFILE OUTFILE MLTEXT TERMINATE NOWRITE ISABELLE_PID ISABELLE_TMP ISABELLE_PROCESS_OPTIONS |