;;; -*- mode: Lisp; Syntax: Common-Lisp; -*- ;;; ;;; Copyright (c) 2009 by the authors. ;;; ;;; See LICENCE for details. (in-package :hu.dwim.model) ;; TODO clean up this whole file in the lights of the new cl-l10n ;;;;;; ;;; Model ;; TODO this is available in l10n (eval-always (def special-variable *country-data* '((ac) (ad) (ae) (af) (ag) (ai) (al) (am) (an) (ao) (aq) (ar) (as) (at) (au) (aw) (az) (ba) (bb) (bd) (be) (bf) (bg) (bh) (bi) (bj) (bm) (bn) (bo) (br) (bs) (bt) (bv) (bw) (by) (bz) (ca) (cc) (cd) (cf) (cg) (ch) (ci) (ck) (cl) (cm) (cn) (co) (cr) (cu) (cv) (cx) (cy) (cz) (de) (dj) (dk) (dm) (do) (dz) (ec) (ee) (eg) (eh) (er) (es) (et) (fi) (fj) (fk) (fm) (fo) (fr) (ga) (gb) (gd) (ge) (gf) (gg) (gh) (gi) (gl) (gm) (gn) (gp) (gq) (gr) (gs) (gt) (gu) (gw) (gy) (hk) (hm) (hn) (hr) (ht) (hu) (id) (ie) (il) (im) (in) (io) (iq) (ir) (is) (it) (je) (jm) (jo) (jp) (ke) (kg) (kh) (ki) (km) (kn) (kp) (kr) (kw) (ky) (kz) (la) (lb) (lc) (li) (lk) (lr) (ls) (lt) (lu) (lv) (ly) (ma) (mc) (md) (mg) (mh) (mk) (ml) (mm) (mn) (mo) (mp) (mq) (mr) (ms) (mt) (mu) (mv) (mw) (mx) (my) (mz) (na) (nc) (ne) (nf) (ng) (ni) (nl) (no) (np) (nr) (nu) (nz) (om) (pa) (pe) (pf) (pg) (ph) (pk) (pl) (pm) (pn) (pr) (ps) (pt) (pw) (py) (qa) (re) (ro) (ru) (rw) (sa) (sb) (sc) (sd) (se) (sg) (sh) (si) (sj) (sk) (sl) (sm) (sn) (so) (sr) (st) (sv) (sy) (sz) (tc) (td) (tf) (tg) (th) (tj) (tk) (tl) (tm) (tn) (to) (tr) (tt) (tv) (tw) (tz) (ua) (ug) (um) (us) (uy) (uz) (va) (vc) (ve) (vg) (vi) (vn) (vu) (wf) (ws) (ye) (yt) (yu) (za) (zm) (zw)))) (def persistent-type country-code () `(member ,@(mapcar 'first *country-data*))) (def (entity e) country () ((code :type country-code) (name :type standard-text :primary #t :reference #t :compute-as (cl-l10n.lang:localize-territory-name (cl-l10n.lang::ensure-ldml-symbol-or-form (code-of -self-))))) (:statistics :min 10)) ;;;;;; ;;; Data (def (function e) create-countries () (dolist (data (symbol-value '*country-data*)) (make-country :code (pop data))))