in record.go [53:85]
func (r *Record) fromJSONMap(jsonMap map[string]interface{}) {
r.fields = make(map[string]interface{})
r.lookUps = make(map[string]*Record)
for k, v := range jsonMap {
if k == RecordAttributes {
if attr, ok := v.(map[string]interface{}); ok {
if obj, ok := attr[recordAttrType]; ok {
if sobj, ok := obj.(string); ok {
r.sobject = sobj
}
}
if obj, ok := attr[recordAttrURL]; ok {
if url, ok := obj.(string); ok {
r.url = url
}
}
}
} else {
if v != nil {
if obj, is := v.(map[string]interface{}); is == false {
r.fields[k] = v
} else {
if r.isLookUp(obj) {
if rec, err := RecordFromJSONMap(obj); err == nil {
r.lookUps[k] = rec
}
}
}
}
}
}
}