MarpaX-ESLIF
view release on metacpan or search on metacpan
/* MarpaX::ESLIF::Recognizer::lastCompletedLocation */
/* ----------------------------------------------------------------------- */
=cut
void
lastCompletedLocation(p, name)
SV *p;
char *name;
PREINIT:
static const char *funcs = "MarpaX::ESLIF::Recognizer::lastCompletedLocation";
PPCODE:
MarpaX_ESLIF_Recognizer_t *MarpaX_ESLIF_Recognizerp = marpaESLIFPerl_Perl2enginep(aTHX_ p);
size_t lengthl;
char *offsetp;
if (UNLIKELY(! marpaESLIFRecognizer_last_completedb(MarpaX_ESLIF_Recognizerp->marpaESLIFRecognizerp, name, &offsetp, &lengthl))) {
MARPAESLIFPERL_CROAKF("marpaESLIFRecognizer_last_completedb failure, %s", strerror(errno));
}
EXTEND(SP, 2);
PUSHs(sv_2mortal(newSViv(PTR2IV(offsetp))));
PUSHs(sv_2mortal(newSViv((IV) lengthl)));
/* ----------------------------------------------------------------------- */
/* MarpaX::ESLIF::Recognizer::location */
/* ----------------------------------------------------------------------- */
=cut
void
location(p)
SV *p;
PREINIT:
static const char *funcs = "MarpaX::ESLIF::Recognizer::location";
PPCODE:
MarpaX_ESLIF_Recognizer_t *MarpaX_ESLIF_Recognizerp = marpaESLIFPerl_Perl2enginep(aTHX_ p);
size_t linel;
size_t columnl;
if (UNLIKELY(! marpaESLIFRecognizer_locationb(MarpaX_ESLIF_Recognizerp->marpaESLIFRecognizerp, &linel, &columnl))) {
MARPAESLIFPERL_CROAKF("marpaESLIFRecognizer_locationb failure, %s", strerror(errno));
}
EXTEND(SP, 2);
PUSHs(sv_2mortal(newSViv((IV) linel)));
PUSHs(sv_2mortal(newSViv((IV) columnl)));
( run in 0.513 second using v1.01-cache-2.11-cpan-5511b514fd6 )