package cjlookup import ( "strings" "github.com/tgckpg/golifehk/query" ) func Query(q query.QueryMessage) query.IQueryResult { lang := q.Lang message := q.Text var qResults *query.QueryObject var err error var searchables *[]query.ISearchable qr := QueryResult{Lang: lang} messageU := strings.ToUpper(message) // Only look up jyut ping if !strings.HasPrefix(messageU, "JP ") { qr.ResultType = "IGNORE" goto qrReturn } qr.isConsumed = true if err != nil { qr.Error = err goto qrReturn } messageU = messageU[3:] searchables, err = getSearchables() qResults, err = query.MatchKeys(messageU, searchables) qr.Query = qResults if err != nil { qr.Error = err goto qrReturn } qrReturn: var iqr query.IQueryResult iqr = &qr return iqr }