package whois func parse(domain string, result string) (Result, error) { var out Result var err error switch getExtension(domain) { case "cn": out, err = dotCNParser(domain, result) case "jp": out, err = dotJPParser(domain, result) case "tw": out, err = dotTWParser(domain, result) case "edu": out, err = dotEduParser(domain, result) case "int": out, err = dotIntParser(domain, result) case "am": out, err = dotAmParser(domain, result) case "mk": out, err = dotMkParser(domain, result) case "ar": out, err = dotArParser(domain, result) default: out, err = commonParser(domain, result) } if err != nil { return Result{}, err } if out.meta.Source == "" { out.meta = buildResultMeta(out, "whois", out.whoisSer) } return out, nil }