From 1a60a1f52625412c8c18dc95a679dc90c0324772 Mon Sep 17 00:00:00 2001 From: Damian Gryski Date: Fri, 24 Mar 2023 09:36:41 -0700 Subject: [PATCH] reflect: stub channel select routines/types --- src/reflect/value.go | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/reflect/value.go b/src/reflect/value.go index ed4d01cd..dbe487f8 100644 --- a/src/reflect/value.go +++ b/src/reflect/value.go @@ -1753,6 +1753,33 @@ func MakeMapWithSize(typ Type, n int) Value { } } +type SelectDir int + +const ( + _ SelectDir = iota + SelectSend // case Chan <- Send + SelectRecv // case <-Chan: + SelectDefault // default +) + +type SelectCase struct { + Dir SelectDir // direction of case + Chan Value // channel to use (for send or receive) + Send Value // value to send (for send) +} + +func Select(cases []SelectCase) (chosen int, recv Value, recvOK bool) { + panic("unimplemented: reflect.Select") +} + +func (v Value) Send(x Value) { + panic("unimplemented: reflect.Value.Send()") +} + +func (v Value) Close() { + panic("unimplemented: reflect.Value.Close()") +} + // MakeMap creates a new map with the specified type. func MakeMap(typ Type) Value { return MakeMapWithSize(typ, 8)