BindableEvents should support cyclical tables

If I try to send a cyclical table over a BindableEvent via Fire(), I get an error telling me I can’t send cyclical tables.This means I can’t send a 2-way LinkedList, double-ended queue, and other types of data structures. If possible, this limitation should be removed.

4 Likes

I could be wrong, but I believe the data is encoded to JSON for networking which does not support cyclic tables itself.

2 Likes

OP is concerning Bindable events which does not involve sending requests over the network

Whoops. Missed that.

I still think they are encoded using JSON. I know I saw that somewhere. If I can find the source, ill link you.

And yes, I’m talking about BindableEvents and not RemoteEvents

They’re actually reflected into one of two internal C types (Array or Dictionary), either of which support JSON encoding/decoding. Roblox could probably add a type that’s more compatible with Lua tables (I recall this being talked about before), but the change might be more involved than you’d expect.

If it’s cyclic, shouldn’t they just replicate it as a pointer reference to itself?