Is there a way to obtain field and method names (as strings) or assign to fields (of structs or classes) if the string is a name which is only known at runtime? For instance, could I write a generic function to reconstruct any object of any type from a JSON object?