public int getNameToBackrefNumber(String name) { try { byte[] bytes = name.getBytes(); return getPattern().nameToBackrefNumber(bytes, 0, bytes.length, regs); } catch (JOniException je) { throw getRuntime().newIndexError(je.getMessage()); } }
public int getNameToBackrefNumber(String name) { try { byte[] bytes = name.getBytes(); return getPattern().nameToBackrefNumber(bytes, 0, bytes.length, regs); } catch (JOniException je) { throw getRuntime().newIndexError(je.getMessage()); } }
private int nameToBackrefNumber(RubyString str) { ByteList value = str.getByteList(); try { return pattern.nameToBackrefNumber(value.bytes, value.begin, value.begin + value.realSize, regs); } catch (JOniException je) { throw getRuntime().newIndexError(je.getMessage()); } }
private static int nameToBackrefNumber(Ruby runtime, Regex pattern, Region regs, ByteListHolder str) { if (pattern == null) { throw runtime.newIndexError("undefined group name reference: " + str); } ByteList value = str.getByteList(); try { return pattern.nameToBackrefNumber(value.getUnsafeBytes(), value.getBegin(), value.getBegin() + value.getRealSize(), regs); } catch (JOniException je) { throw runtime.newIndexError(je.getMessage()); } }
private int nameToBackrefNumber(RubyString str) { ByteList value = str.getByteList(); try { return pattern.nameToBackrefNumber(value.getUnsafeBytes(), value.getBegin(), value.getBegin() + value.getRealSize(), regs); } catch (JOniException je) { throw getRuntime().newIndexError(je.getMessage()); } }
private static int nameToBackrefNumber(Ruby runtime, Regex pattern, Region regs, ByteListHolder str) { if (pattern == null) { throw runtime.newIndexError("undefined group name reference: " + str); } ByteList value = str.getByteList(); try { return pattern.nameToBackrefNumber(value.getUnsafeBytes(), value.getBegin(), value.getBegin() + value.getRealSize(), regs); } catch (JOniException je) { throw runtime.newIndexError(je.getMessage()); } }
private int nameToBackrefNumber(RubyString str) { ByteList value = str.getByteList(); try { return pattern.nameToBackrefNumber(value.getUnsafeBytes(), value.getBegin(), value.getBegin() + value.getRealSize(), regs); } catch (JOniException je) { throw getRuntime().newIndexError(je.getMessage()); } }
throw new ThrowException(context, context.createSyntaxError(e.getMessage())); } catch (CharacterCodingException e) { throw new ThrowException(context, context.createSyntaxError(e.getMessage()));
private RubyBoolean matchP(ThreadContext context, IRubyObject arg, int pos) { if (arg == context.nil) return context.fals; RubyString str = arg instanceof RubySymbol ? ((RubySymbol) arg).to_s(context.runtime) : arg.convertToString(); if (pos != 0) { if (pos < 0) { pos += str.strLength(); if (pos < 0) return context.fals; } pos = str.rbStrOffset(pos); } final Regex reg = preparePattern(str); final ByteList strBL = str.getByteList(); final int beg = strBL.begin(); Matcher matcher = reg.matcherNoRegion(strBL.unsafeBytes(), beg, beg + strBL.realSize()); try { final int result = matcherSearch(context, matcher, beg + pos, beg + strBL.realSize(), RE_OPTION_NONE); return result == -1 ? context.fals : context.tru; } catch (JOniException je) { throw context.runtime.newRegexpError(je.getMessage()); } }
private RubyBoolean matchP(ThreadContext context, IRubyObject arg, int pos) { if (arg == context.nil) return context.fals; RubyString str = arg instanceof RubySymbol ? ((RubySymbol) arg).to_s(context.runtime) : arg.convertToString(); if (pos != 0) { if (pos < 0) { pos += str.strLength(); if (pos < 0) return context.fals; } pos = str.rbStrOffset(pos); } final Regex reg = preparePattern(str); final ByteList strBL = str.getByteList(); final int beg = strBL.begin(); Matcher matcher = reg.matcherNoRegion(strBL.unsafeBytes(), beg, beg + strBL.realSize()); try { final int result = matcherSearch(context, matcher, beg + pos, beg + strBL.realSize(), RE_OPTION_NONE); return result == -1 ? context.fals : context.tru; } catch (JOniException je) { throw context.runtime.newRegexpError(je.getMessage()); } }
public final RubyBoolean startWithP(ThreadContext context, RubyString str) { final ByteList strBL = str.getByteList(); final int beg = strBL.begin(); final Regex reg = preparePattern(str); IRubyObject match = getBackRefInternal(context, null); if (match instanceof RubyMatchData) { // ! match.isNil() if (((RubyMatchData) match).used()) match = context.nil; } final Matcher matcher = reg.matcher(strBL.unsafeBytes(), beg, beg + strBL.realSize()); try { int result = matcherMatch(context, matcher, beg, beg + strBL.realSize(), RE_OPTION_NONE); if (result == -1) { setBackRefInternal(context, null, context.nil); return context.fals; } final RubyMatchData matchData; if (match == context.nil) { matchData = createMatchData(context, str, matcher, reg); } else { matchData = createMatchData(context, str, matcher, reg); } matchData.regexp = this; matchData.infectBy(this); setBackRefInternal(context, null, matchData); return context.tru; } catch (JOniException je) { throw context.runtime.newRegexpError(je.getMessage()); } }
public final RubyBoolean startWithP(ThreadContext context, RubyString str) { final ByteList strBL = str.getByteList(); final int beg = strBL.begin(); final Regex reg = preparePattern(str); IRubyObject match = getBackRefInternal(context, null); if (match instanceof RubyMatchData) { // ! match.isNil() if (((RubyMatchData) match).used()) match = context.nil; } final Matcher matcher = reg.matcher(strBL.unsafeBytes(), beg, beg + strBL.realSize()); try { int result = matcherMatch(context, matcher, beg, beg + strBL.realSize(), RE_OPTION_NONE); if (result == -1) { setBackRefInternal(context, null, context.nil); return context.fals; } final RubyMatchData matchData; if (match == context.nil) { matchData = createMatchData(context, str, matcher, reg); } else { matchData = createMatchData(context, str, matcher, reg); } matchData.regexp = this; matchData.infectBy(this); setBackRefInternal(context, null, matchData); return context.tru; } catch (JOniException je) { throw context.runtime.newRegexpError(je.getMessage()); } }
return result; } catch (JOniException je) { throw context.runtime.newRegexpError(je.getMessage());
return result; } catch (JOniException je) { throw context.runtime.newRegexpError(je.getMessage());
no = pattern.nameToBackrefNumber(sBytes, name, nameEnd, regs); } catch (JOniException je) { throw runtime.newIndexError(je.getMessage());
no = pattern.nameToBackrefNumber(sBytes, name, nameEnd, regs); } catch (JOniException je) { throw runtime.newIndexError(je.getMessage());
no = pattern.nameToBackrefNumber(bytes, name, nameEnd, regs); } catch (JOniException je) { throw str.getRuntime().newIndexError(je.getMessage());
no = pattern.nameToBackrefNumber(bytes, name, nameEnd, regs); } catch (JOniException je) { throw str.getRuntime().newIndexError(je.getMessage());