From dc627de951cb666b123b5b23c1e040dc9f77e696 Mon Sep 17 00:00:00 2001 From: Gianni Ceccarelli Date: Fri, 14 Jul 2023 11:56:20 +0100 Subject: method dispatch seems to work --- test.sh | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 test.sh (limited to 'test.sh') diff --git a/test.sh b/test.sh new file mode 100644 index 0000000..6e7e49c --- /dev/null +++ b/test.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +. bos-namespaces.sh +. bos-object-id.sh +. bos-mop.sh +. bos-dispatch.sh + +bos_namespaces__A__meta="bos-dispatch/invoke bos/mop/base 0" +bos_namespaces__A__mro=( "A" ) + +function A/thing() { + echo "<$self> A/thing ($*)" +} + +bos_namespaces__B__meta="bos-dispatch/invoke bos/mop/base 0" +bos_namespaces__B__mro=( "B" "A" ) + +function B/other() { + echo "<$self> B/other ($*)" +} + +bos-object-id/pack-self-into A 0 objA +bos-object-id/pack-self-into B 0 objB + +$objA thing 1 2 3 +$objB thing 4 5 6 +$objB other 7 8 9 + -- cgit v1.2.3