@0xd638aea2b53c7d9c;
# this relative path is ugly
using Go = import "../../../../github.com/glycerine/go-capnproto/go.capnp";
$Go.package("capnmsg");
# capnpc-go likes to panic when it doesn't get what it wants
$Go.import("github.com/glycerine/go-capnproto/example");

struct Msg {
	enum Kind {
		# these names need to start with a lowercase letter
		admin @0;
		connect @1;
		event @2;
		tranStart @3;
		tranEnd @4;
		callStart @5;
		callEnd @6;
	}

	struct Desc {
		key @0 :Text;
		val @1 :Text;
	}

	# numbers must start at zero, no skipping allowed
	kind @0 :Kind;
	time @1 :UInt64;
	service @2 :Text;
	machine @3 :Text;
	pid @4 :Int32;
	traceid @5 :UInt64;
	subtraceid @6 :Text;
	desc @7 :List(Desc);
}
