Commit 6dd64e1b authored by Etienne Renault's avatar Etienne Renault

ltsmin: abi has changed

This patch provide a support for LTSmin
except for partial order reductions.

* boilerplate/go2pins.c,
boilerplate/go2pins.h,
boilerplate/main.go: here.
parent 5c924512
Pipeline #15253 passed with stage
in 1 minute and 19 seconds
......@@ -3,5 +3,7 @@
void callTransitionCb(TransitionCB cb, void* context,
transition_info_t* transition_info, int* dst)
{
cb(context, transition_info, dst);
// FIXME: the following line avoid any support for POR
transition_info_t t = { 0 , -1, 1 };
cb(context, &t, dst);
}
......@@ -5,6 +5,7 @@ typedef struct transition_info
{
int* labels; // edge labels, NULL, or pointer to the edge label(s)
int group; // holds transition group or -1 if unknown
int por_proviso; // POR reductions not supported for now
} transition_info_t;
typedef void (*TransitionCB)(void* ctx, transition_info_t* transition_info,
......
......@@ -139,6 +139,132 @@ func get_state_variable_type_value(tC C.int, vC C.int) *C.char {
return unknownTypeValueName
}
// ------------------------------------------------------------
// The following is required by LTSmin, but not used since POR
// reductions are not yet available for Go2Pins.
//export get_transition_count
func get_transition_count() C.int {
fmt.Printf("[Go2Pins] get_transition_count: unimplemented ... SKIP\n")
return C.int(0)
}
//export have_property
func have_property() C.int {
fmt.Printf("[Go2Pins] have_property: unimplemented ... SKIP\n")
return C.int(0)
}
//export get_transition_read_dependencies
func get_transition_read_dependencies(t C.int) *C.int {
fmt.Printf("[Go2Pins] get_transition_read_dependencies: unimplemented ... SKIP\n")
return nil
}
//export get_transition_actions_read_dependencies
func get_transition_actions_read_dependencies(t C.int) *C.int {
fmt.Printf("[Go2Pins] get_transition_actions_read_dependencies: unimplemented ... SKIP\n")
return nil
}
//export get_transition_may_write_dependencies
func get_transition_may_write_dependencies(t C.int) *C.int {
fmt.Printf("[Go2Pins] get_transition_may_write_dependencies: unimplemented ... SKIP\n")
return nil
}
//export get_transition_must_write_dependencies
func get_transition_must_write_dependencies(t C.int) *C.int {
fmt.Printf("[Go2Pins] get_transition_must_write_dependencies: unimplemented ... SKIP\n")
return nil
}
//export get_guard_matrix
func get_guard_matrix(t C.int) *C.int {
fmt.Printf("[Go2Pins] get_guard_matrix: unimplemented ... SKIP\n")
return nil
}
//export get_guards
func get_guards(t C.int) *C.int {
fmt.Printf("[Go2Pins] get_guards: unimplemented ... SKIP\n")
return nil
}
//export get_all_guards
func get_all_guards(t C.int) **C.int {
fmt.Printf("[Go2Pins] get_all_guards: unimplemented ... SKIP\n")
return nil
}
//export get_guard_count
func get_guard_count() C.int {
fmt.Printf("[Go2Pins] get_guard_count: unimplemented ... SKIP\n")
return C.int(0)
}
//export get_successor
func get_successor(
model unsafe.Pointer,
srcC *C.int,
cb C.TransitionCB,
arg unsafe.Pointer,
) C.int {
fmt.Printf("[Go2Pins] get_successor: unimplemented ... SKIP\n")
return C.int(0)
}
//export get_action
func get_action(
model unsafe.Pointer,
srcC *C.int,
cb C.TransitionCB,
arg unsafe.Pointer,
) C.int {
fmt.Printf("[Go2Pins] get_action: unimplemented ... SKIP\n")
return C.int(0)
}
//export get_guard
func get_guard(
model unsafe.Pointer,
t int,
src unsafe.Pointer,
) **C.int {
fmt.Printf("[Go2Pins] get_guard: unimplemented ... SKIP\n")
return nil
}
//export get_guard_all
func get_guard_all(
model unsafe.Pointer,
src unsafe.Pointer,
guard *C.int,
) **C.int {
fmt.Printf("[Go2Pins] get_guard_all: unimplemented ... SKIP\n")
return nil
}
//export get_guard_may_be_coenabled_matrix
func get_guard_may_be_coenabled_matrix(g C.int) *C.int{
fmt.Printf("[Go2Pins] get_guard_may_be_coenabled_matrix: unimplemented ... SKIP\n")
return nil
}
//export get_guard_nes_matrix
func get_guard_nes_matrix(g C.int) *C.int {
fmt.Printf("[Go2Pins] get_guard_nes_matrix: unimplemented ... SKIP\n")
return nil
}
//export get_guard_nds_matrix
func get_guard_nds_matrix(g C.int) *C.int {
fmt.Printf("[Go2Pins] get_guard_nds_matrix: unimplemented ... SKIP\n")
return nil
}
// ------------------------------------------------------------
var (
display = flag.Bool("displaylist", false, "Display the list of variable names.")
help = flag.Bool("help", false, "Show usages.")
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment