def ll_matches(MATCHTYPE, MATCH_INIT, MATCH_CONTEXTTYPE, MATCH_CONTEXT_INIT, MATCH_CONTEXT, ll_rule, s, pos): s = hlstr(s) assert pos >= 0 ctx = instantiate(MATCH_CONTEXTTYPE) hlinvoke(MATCH_CONTEXT_INIT, rsre_core.StrMatchContext.__init__, ctx, ll_rule.code, hlstr(s), pos, len(s), 0) matched = hlinvoke(MATCH_CONTEXT, rsre_core.match_context, ctx) if matched: match = instantiate(MATCHTYPE) hlinvoke(MATCH_INIT, Match.__init__, match, ctx.match_start, ctx.match_end) return match else: return None
def ll_matches(MATCHTYPE, MATCH_INIT, MATCH_CONTEXTTYPE, MATCH_CONTEXT_INIT, MATCH_CONTEXT, ll_rule, s, pos): s = hlstr(s) assert pos >= 0 ctx = instantiate(MATCH_CONTEXTTYPE) hlinvoke(MATCH_CONTEXT_INIT, rsre_core.StrMatchContext.__init__, ctx, ll_rule.code, hlstr(s), pos, len(s), 0 ) matched = hlinvoke(MATCH_CONTEXT, rsre_core.match_context, ctx) if matched: match = instantiate(MATCHTYPE) hlinvoke(MATCH_INIT, Match.__init__, match, ctx.match_start, ctx.match_end ) return match else: return None
def ll_keyeq_custom(d, key1, key2): DICT = lltype.typeOf(d).TO return hlinvoke(DICT.r_keyeq, d.keyeq_func, key1, key2)
def ll_hashkey_custom(d, key): DICT = lltype.typeOf(d).TO return hlinvoke(DICT.r_hashkey, d.hashkey_func, key)
def ll_keyeq_custom(d, key1, key2): DICT = lltype.typeOf(d).TO return objectmodel.hlinvoke(DICT.r_rdict_eqfn, d.fnkeyeq, key1, key2)
def ll_keyhash_custom(d, key): DICT = lltype.typeOf(d).TO return objectmodel.hlinvoke(DICT.r_rdict_hashfn, d.fnkeyhash, key)