X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=src%2Flibpspp%2Fmodel-checker.h;h=8c86fae61d3eb99f1a3956fbaebad6f0a15be0f5;hb=db1aff56dc8e6d4fb962162486556907b729067a;hp=dd42e2fd0f3bf771203bc80faf14e7dbd4025a7e;hpb=5060fdedfe17e843301ac0c738e12488af467378;p=pspp diff --git a/src/libpspp/model-checker.h b/src/libpspp/model-checker.h index dd42e2fd0f..8c86fae61d 100644 --- a/src/libpspp/model-checker.h +++ b/src/libpspp/model-checker.h @@ -1,20 +1,18 @@ -/* PSPP - computes sample statistics. +/* PSPP - a program for statistical analysis. Copyright (C) 2007 Free Software Foundation, Inc. - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License as - published by the Free Software Foundation; either version 2 of the - License, or (at your option) any later version. + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. - This program is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - General Public License for more details. + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301, USA. */ + along with this program. If not, see . */ /* Implementation-level model checker. @@ -117,7 +115,7 @@ Here's an outline for writing the init function: - void + void init_foo (struct mc *mc) { struct foo *foo; @@ -144,7 +142,7 @@ { struct foo *state = state_; - for (...each operation...) + for (...each operation...) if (mc_include_state (mc)) { struct foo *clone; @@ -224,7 +222,7 @@ make it possible to reliably reproduce errors. 3. void destroy (struct mc *mc, void *data); - + This function is called to discard the client-specified DATA associated with a state. @@ -342,7 +340,7 @@ void *mc_get_aux (const struct mc *); /* A path of operations through a model to arrive at some particular state. */ -struct mc_path +struct mc_path { int *ops; /* Sequence of operations. */ size_t length; /* Number of operations. */ @@ -367,7 +365,7 @@ struct mc_options *mc_options_clone (const struct mc_options *); void mc_options_destroy (struct mc_options *); /* Search strategy. */ -enum mc_strategy +enum mc_strategy { MC_BROAD, /* Breadth-first search. */ MC_DEEP, /* Depth-first search. */ @@ -389,7 +387,7 @@ void mc_options_set_follow_path (struct mc_options *, const struct mc_path *); /* Strategy for dropped states from the queue when it overflows. */ -enum mc_queue_limit_strategy +enum mc_queue_limit_strategy { MC_DROP_NEWEST, /* Don't enqueue the new state at all. */ MC_DROP_OLDEST, /* Drop the oldest state in the queue. */ @@ -429,7 +427,7 @@ void *mc_options_get_aux (const struct mc_options *); void mc_options_set_aux (struct mc_options *, void *aux); /* Reason that a model checking run terminated. */ -enum mc_stop_reason +enum mc_stop_reason { MC_CONTINUING, /* Run has not yet terminated. */ MC_SUCCESS, /* Queue emptied (ran out of states). */