public boolean Procs_exec(int key, Scrib_proc_args args, Scrib_proc_rslt rslt) { switch (key) { case Proc_expr: return Expr(args, rslt); default: throw Err_.new_unhandled(key); } }
public byte[] Cartouche_img( Xoh_wtr_ctx hctx, boolean bgn, byte[] glyph) { // render open / close cartouche; note that MW has two branches, but they are // both the same int height = (int) ((Hiero_html_mgr.Max_height * Hiero_html_mgr.scale) / 100); Hiero_phoneme_itm phoneme_itm = phoneme_mgr.Get_by_key(glyph); if (phoneme_itm == null) throw Err_.new_fmt_("missing phoneme: {0}", String_.new_u8(glyph)); byte[] code = phoneme_itm.Gardiner_code(); byte[] title = bgn ? Html_entity_.Lt_bry : Html_entity_.Gt_bry; return cartouche_img_fmtr.Bld_bry_many(temp_bfr, hiero_img_dir, code, height, title); }
public static byte[] Write_wdata_links(List_adp slink_list, Xowe_wiki wiki, Xoa_ttl ttl, Wdata_external_lang_links_data external_links_mgr) { try { switch (wiki.Domain_tid()) { case Xow_domain_type_.Tid_home: // home will never be in wikidata case Xow_domain_type_.Tid_wikidata: // wikidata will never be in wikidata return Qid_null; } Wdata_wiki_mgr wdata_mgr = wiki.Appe().Wiki_mgr().Wdata_mgr(); Wdata_doc doc = wdata_mgr.Pages_get(wiki, ttl); if (doc == null) return Qid_null; // no links boolean external_links_mgr_enabled = external_links_mgr.Enabled(); Ordered_hash links = doc.Slink_list(); Bry_bfr tmp_bfr = wiki.Appe().Utl__bfr_mkr().Get_k004(); Xow_wiki_abrv wiki_abrv = new Xow_wiki_abrv(); int len = links.Count(); for (int i = 0; i < len; i++) { Wdata_sitelink_itm slink = (Wdata_sitelink_itm)links.Get_at(i); byte[] xwiki_key = slink.Site(); Xow_wiki_abrv_.parse_(wiki_abrv, xwiki_key, 0, xwiki_key.length); if (wiki_abrv.Domain_tid() == Xow_wiki_abrv_.Tid_null) { wiki.Appe().Usr_dlg().Warn_many("", "", "unknown wiki in wikidata: ttl=~{0} wiki=~{1}", ttl.Page_db_as_str(), String_.new_u8(xwiki_key)); continue; } if (wiki_abrv.Domain_tid() != wiki.Domain_tid()) continue; // ignore wikis in a different domain; EX: looking at enwiki:Earth, and wikidata has dewikiquote; ignore dewikiquote; DATE:2014-06-21 byte[] lang_key = wiki_abrv.Lang_itm().Key(); if (external_links_mgr_enabled && external_links_mgr.Langs_hide(lang_key, 0, lang_key.length)) continue; tmp_bfr.Add(lang_key); tmp_bfr.Add_byte(Byte_ascii.Colon); tmp_bfr.Add(slink.Name()); Xoa_ttl slink_ttl = Xoa_ttl.parse_(wiki, tmp_bfr.Xto_bry_and_clear()); if (slink_ttl == null) continue; // invalid ttl Xow_xwiki_itm xwiki_itm = slink_ttl.Wik_itm(); if ( xwiki_itm == null // not a known xwiki; EX: [[zzz:abc]] || Bry_.Eq(xwiki_itm.Domain_bry(), wiki.Domain_bry()) // skip if same as self; i.e.: do not include links to enwiki if already in enwiki ) continue; slink.Page_ttl_(slink_ttl); slink_list.Add(slink); } tmp_bfr.Mkr_rls(); if (external_links_mgr_enabled && external_links_mgr.Sort()) slink_list.Sort_by(Xoa_ttl_sorter._); return doc.Qid(); } catch (Exception e) {Err_.Noop(e); return Qid_null;} }
public static Xot_defn Get_prototype(int id) { switch (id) { case Xol_kwd_grp_.Id_utc_year: case Xol_kwd_grp_.Id_utc_month_int_len2: case Xol_kwd_grp_.Id_utc_month_int: case Xol_kwd_grp_.Id_utc_day_int_len2: case Xol_kwd_grp_.Id_utc_day_int: case Xol_kwd_grp_.Id_utc_hour: case Xol_kwd_grp_.Id_utc_time: case Xol_kwd_grp_.Id_utc_timestamp: case Xol_kwd_grp_.Id_utc_week: case Xol_kwd_grp_.Id_utc_dow: return Pft_func_date_int.Utc; case Xol_kwd_grp_.Id_utc_month_abrv: return new Pft_func_date_name( -1, Pft_func_date_int.Date_tid_utc, DateAdp_.SegIdx_month, Xol_msg_itm_.Id_dte_month_abrv_jan - Int_.Base1); case Xol_kwd_grp_.Id_utc_month_name: return new Pft_func_date_name( -1, Pft_func_date_int.Date_tid_utc, DateAdp_.SegIdx_month, Xol_msg_itm_.Id_dte_month_name_january - Int_.Base1); case Xol_kwd_grp_.Id_utc_month_gen: return new Pft_func_date_name( -1, Pft_func_date_int.Date_tid_utc, DateAdp_.SegIdx_month, Xol_msg_itm_.Id_dte_month_gen_january - Int_.Base1); case Xol_kwd_grp_.Id_utc_day_name: return new Pft_func_date_name( -1, Pft_func_date_int.Date_tid_utc, DateAdp_.SegIdx_dayOfWeek, Xol_msg_itm_.Id_dte_dow_name_sunday); case Xol_kwd_grp_.Id_lcl_year: case Xol_kwd_grp_.Id_lcl_month_int_len2: case Xol_kwd_grp_.Id_lcl_month_int: case Xol_kwd_grp_.Id_lcl_day_int_len2: case Xol_kwd_grp_.Id_lcl_day_int: case Xol_kwd_grp_.Id_lcl_hour: case Xol_kwd_grp_.Id_lcl_time: case Xol_kwd_grp_.Id_lcl_timestamp: case Xol_kwd_grp_.Id_lcl_week: case Xol_kwd_grp_.Id_lcl_dow: return Pft_func_date_int.Lcl; case Xol_kwd_grp_.Id_lcl_month_abrv: return new Pft_func_date_name( -1, Pft_func_date_int.Date_tid_lcl, DateAdp_.SegIdx_month, Xol_msg_itm_.Id_dte_month_abrv_jan - Int_.Base1); case Xol_kwd_grp_.Id_lcl_month_name: return new Pft_func_date_name( -1, Pft_func_date_int.Date_tid_lcl, DateAdp_.SegIdx_month, Xol_msg_itm_.Id_dte_month_name_january - Int_.Base1); case Xol_kwd_grp_.Id_lcl_month_gen: return new Pft_func_date_name( -1, Pft_func_date_int.Date_tid_lcl, DateAdp_.SegIdx_month, Xol_msg_itm_.Id_dte_month_gen_january - Int_.Base1); case Xol_kwd_grp_.Id_lcl_day_name: return new Pft_func_date_name( -1, Pft_func_date_int.Date_tid_lcl, DateAdp_.SegIdx_dayOfWeek, Xol_msg_itm_.Id_dte_dow_name_sunday); case Xol_kwd_grp_.Id_rev_year: case Xol_kwd_grp_.Id_rev_month_int_len2: case Xol_kwd_grp_.Id_rev_month_int: case Xol_kwd_grp_.Id_rev_day_int_len2: case Xol_kwd_grp_.Id_rev_day_int: case Xol_kwd_grp_.Id_rev_timestamp: return Pft_func_date_int.Rev; case Xol_kwd_grp_.Id_ns_num: case Xol_kwd_grp_.Id_ns_txt: case Xol_kwd_grp_.Id_ns_url: case Xol_kwd_grp_.Id_ns_subj_txt: case Xol_kwd_grp_.Id_ns_subj_url: case Xol_kwd_grp_.Id_ns_talk_txt: case Xol_kwd_grp_.Id_ns_talk_url: case Xol_kwd_grp_.Id_ttl_full_txt: case Xol_kwd_grp_.Id_ttl_full_url: case Xol_kwd_grp_.Id_ttl_page_txt: case Xol_kwd_grp_.Id_ttl_base_txt: case Xol_kwd_grp_.Id_ttl_page_url: case Xol_kwd_grp_.Id_ttl_base_url: case Xol_kwd_grp_.Id_ttl_leaf_txt: case Xol_kwd_grp_.Id_ttl_leaf_url: case Xol_kwd_grp_.Id_ttl_subj_txt: case Xol_kwd_grp_.Id_ttl_subj_url: case Xol_kwd_grp_.Id_ttl_talk_txt: case Xol_kwd_grp_.Id_ttl_talk_url: return Pfunc_ttl.Instance; case Xol_kwd_grp_.Id_site_sitename: case Xol_kwd_grp_.Id_site_servername: case Xol_kwd_grp_.Id_site_server: case Xol_kwd_grp_.Id_site_articlepath: case Xol_kwd_grp_.Id_site_scriptpath: case Xol_kwd_grp_.Id_site_stylepath: case Xol_kwd_grp_.Id_site_contentlanguage: case Xol_kwd_grp_.Id_site_directionmark: case Xol_kwd_grp_.Id_site_currentversion: return Pfunc_wiki_props.Instance; case Xol_kwd_grp_.Id_num_pages: case Xol_kwd_grp_.Id_num_articles: case Xol_kwd_grp_.Id_num_files: case Xol_kwd_grp_.Id_num_edits: case Xol_kwd_grp_.Id_num_views: case Xol_kwd_grp_.Id_num_users: case Xol_kwd_grp_.Id_num_users_active: case Xol_kwd_grp_.Id_num_admins: return Pfunc_wiki_stats.Instance; case Xol_kwd_grp_.Id_page_id: case Xol_kwd_grp_.Id_rev_id: case Xol_kwd_grp_.Id_rev_pagesize: case Xol_kwd_grp_.Id_rev_revisionsize: case Xol_kwd_grp_.Id_rev_user: case Xol_kwd_grp_.Id_rev_protectionexpiry: case Xol_kwd_grp_.Id_rev_protectionlevel: return Pfunc_rev_props.Instance; case Xol_kwd_grp_.Id_page_displaytitle: return Pfunc_displaytitle.Instance; case Xol_kwd_grp_.Id_page_defaultsort: return Pfunc_defaultsort.Instance; case Xol_kwd_grp_.Id_noeditsection: return Pfunc_noeditsection.Instance; case Xol_kwd_grp_.Id_site_pagesincategory: return Pfunc_pagesincategory.Instance; case Xol_kwd_grp_.Id_url_ns: return new Pfunc_ns(false); case Xol_kwd_grp_.Id_url_nse: return new Pfunc_ns(true); case Xol_kwd_grp_.Id_url_urlencode: return new Pfunc_urlencode(); case Xol_kwd_grp_.Id_str_lc: return new Pfunc_case(Xol_lang_itm.Tid_lower, false); case Xol_kwd_grp_.Id_str_lcfirst: return new Pfunc_case(Xol_lang_itm.Tid_lower, true); case Xol_kwd_grp_.Id_str_uc: return new Pfunc_case(Xol_lang_itm.Tid_upper, false); case Xol_kwd_grp_.Id_str_ucfirst: return new Pfunc_case(Xol_lang_itm.Tid_upper, true); case Xol_kwd_grp_.Id_str_padleft: return new Pfunc_pad(Xol_kwd_grp_.Id_str_padleft, false); case Xol_kwd_grp_.Id_str_padright: return new Pfunc_pad(Xol_kwd_grp_.Id_str_padright, true); case Xol_kwd_grp_.Id_str_formatnum: return new Pf_formatnum(); case Xol_kwd_grp_.Id_str_formatdate: return new Pft_func_formatdate(); case Xol_kwd_grp_.Id_url_localurl: return new Pfunc_urlfunc(Xol_kwd_grp_.Id_url_localurl, Pfunc_urlfunc.Tid_local, false); case Xol_kwd_grp_.Id_url_localurle: return new Pfunc_urlfunc(Xol_kwd_grp_.Id_url_localurle, Pfunc_urlfunc.Tid_local, true); case Xol_kwd_grp_.Id_url_fullurl: return new Pfunc_urlfunc(Xol_kwd_grp_.Id_url_fullurl, Pfunc_urlfunc.Tid_full, false); case Xol_kwd_grp_.Id_url_fullurle: return new Pfunc_urlfunc(Xol_kwd_grp_.Id_url_fullurle, Pfunc_urlfunc.Tid_full, true); case Xol_kwd_grp_.Id_url_canonicalurl: return new Pfunc_urlfunc( Xol_kwd_grp_.Id_url_canonicalurl, Pfunc_urlfunc.Tid_canonical, false); case Xol_kwd_grp_.Id_url_canonicalurle: return new Pfunc_urlfunc( Xol_kwd_grp_.Id_url_canonicalurle, Pfunc_urlfunc.Tid_canonical, false); case Xol_kwd_grp_.Id_url_filepath: return new Pfunc_filepath(); case Xol_kwd_grp_.Id_url_anchorencode: return new Pfunc_anchorencode(); case Xol_kwd_grp_.Id_strx_len: return new Pfunc_len(); case Xol_kwd_grp_.Id_strx_pos: return new Pfunc_pos(); case Xol_kwd_grp_.Id_strx_rpos: return new Pfunc_rpos(); case Xol_kwd_grp_.Id_strx_sub: return new Pfunc_sub(); case Xol_kwd_grp_.Id_strx_count: return new Pfunc_count(); case Xol_kwd_grp_.Id_strx_replace: return new Pfunc_replace(); case Xol_kwd_grp_.Id_strx_explode: return new Pfunc_explode(); case Xol_kwd_grp_.Id_strx_urldecode: return new Pfunc_urldecode(); case Xol_kwd_grp_.Id_i18n_plural: return new Pfunc_plural(); case Xol_kwd_grp_.Id_i18n_language: return new Pfunc_language(); case Xol_kwd_grp_.Id_i18n_int: return new Pfunc_int(); case Xol_kwd_grp_.Id_i18n_grammar: return new Pfunc_grammar(); case Xol_kwd_grp_.Id_i18n_gender: return new Pfunc_gender(); case Xol_kwd_grp_.Id_misc_tag: return new Pfunc_tag(); case Xol_kwd_grp_.Id_xtn_expr: return new gplx.xowa.xtns.pfuncs.exprs.Pfunc_expr(); case Xol_kwd_grp_.Id_xtn_if: return new Pfunc_if(); case Xol_kwd_grp_.Id_xtn_ifeq: return new Pfunc_ifeq(); case Xol_kwd_grp_.Id_xtn_iferror: return new Pfunc_iferror(); case Xol_kwd_grp_.Id_xtn_ifexpr: return new Pfunc_ifexpr(); case Xol_kwd_grp_.Id_xtn_ifexist: return new Pfunc_ifexist(); case Xol_kwd_grp_.Id_xtn_rel2abs: return new Pfunc_rel2abs(); case Xol_kwd_grp_.Id_xtn_switch: return new Pfunc_switch(); case Xol_kwd_grp_.Id_xtn_time: return Pft_func_time._Utc; case Xol_kwd_grp_.Id_xtn_timel: return Pft_func_time._Lcl; case Xol_kwd_grp_.Id_xtn_titleparts: return new Pfunc_titleparts(); case Xol_kwd_grp_.Id_subst: case Xol_kwd_grp_.Id_safesubst: case Xol_kwd_grp_.Id_msg: case Xol_kwd_grp_.Id_msgnw: case Xol_kwd_grp_.Id_raw: return new Xot_defn_subst((byte) id, Bry_.Empty); case Xol_kwd_grp_.Id_xowa_dbg: return new Xop_xowa_dbg(); case Xol_kwd_grp_.Id_xowa: return new gplx.xowa.xtns.xowa_cmds.Xop_xowa_func(); case Xol_kwd_grp_.Id_xtn_geodata_coordinates: return gplx.xowa.xtns.geodata.Geo_coordinates_func.Instance; case Xol_kwd_grp_.Id_lst: return gplx.xowa.xtns.lst.Lst_pfunc_lst.Prime; case Xol_kwd_grp_.Id_lstx: return gplx.xowa.xtns.lst.Lst_pfunc_lstx.Prime; case Xol_kwd_grp_.Id_lsth: return gplx.xowa.xtns.lst.Lst_pfunc_lsth.Prime; case Xol_kwd_grp_.Id_invoke: return new gplx.xowa.xtns.scribunto.Scrib_invoke_func(); case Xol_kwd_grp_.Id_pagebanner: return new gplx.xowa.xtns.pagebanners.Pgbnr_func(); case Xol_kwd_grp_.Id_new_window_link: return new gplx.xowa.xtns.new_window_links.New_window_link_func(); case Xol_kwd_grp_.Id_property: return new gplx.xowa.xtns.wbases.pfuncs.Wdata_pf_property(); case Xol_kwd_grp_.Id_noexternallanglinks: return new gplx.xowa.xtns.wbases.pfuncs.Wdata_pf_noExternalLangLinks(); case Xol_kwd_grp_.Id_wbreponame: return new gplx.xowa.xtns.wbases.pfuncs.Wdata_pf_wbreponame(); case Xol_kwd_grp_.Id_mapSources_deg2dd: return gplx.xowa.xtns.mapSources.Map_deg2dd_func.Instance; case Xol_kwd_grp_.Id_mapSources_dd2dms: return gplx.xowa.xtns.mapSources.Map_dd2dms_func.Instance; case Xol_kwd_grp_.Id_mapSources_geoLink: return gplx.xowa.xtns.mapSources.Map_geolink_func.Instance; case Xol_kwd_grp_.Id_geoCrumbs_isin: return gplx.xowa.xtns.geoCrumbs.Geoc_isin_func.Instance; case Xol_kwd_grp_.Id_relatedArticles: return gplx.xowa.xtns.relatedArticles.Articles_func.Instance; case Xol_kwd_grp_.Id_insider: return gplx.xowa.xtns.insiders.Insider_func.Instance; case Xol_kwd_grp_.Id_massMessage_target: return gplx.xowa.xtns.massMessage.Message_target_func.Instance; case Xol_kwd_grp_.Id_categorytree: return gplx.xowa.xtns.categorytrees.Categorytree_func.Instance; case Xol_kwd_grp_.Id_pendingChangeLevel: return gplx.xowa.xtns.flaggedRevs.Pending_change_level_func.Instance; case Xol_kwd_grp_.Id_pagesUsingPendingChanges: return gplx.xowa.xtns.flaggedRevs.Pages_using_pending_changes_func.Instance; case Xol_kwd_grp_.Id_cascadingSources: return new Pf_func_noop(id); case Xol_kwd_grp_.Id_bang: return Pf_func_bang.Instance; default: throw Err_.new_unhandled(id); } }