Dumb question about editing a node

Thanks for the vote oC.

So I found this post which is pretty much about the same thing and I tried to see how it's done. Basically, they're looking up ports using the "server". Following the code, it looks like the ports come from here:

...and ports are returned by serialp. I'm guessing that serialp is the analog of my server. However, that serialp "server" via a require. There's no constructor in the file. I read that require is a node red function to basically import modules.

What I don't understand is what is list() here returning?:

My take-away is that I need to provide access to the server in the same way serialp is providing access in the example and that I need to have a function(?) akin to list that returns circles? Is that on the right track? Because trying to instantiate the location class isn't setting the server data member inside the location object.