char *p;
qd_parse qd;
PyObject *rc = 0;
+ int paren;
ec pp = EC_INIT;
if (!PyArg_ParseTuple(arg, "s:parse", &p)) goto end;
qd.p = p; qd.e = 0;
+ qd_skipspc(&qd); paren = qd_delim(&qd, '(');
if (!ec_ptparse(&qd, &pp)) VALERR(qd.e);
+ qd_skipspc(&qd); if (paren && !qd_delim(&qd, ')'))
+ { EC_DESTROY(&pp); VALERR("missing `)'"); }
rc = Py_BuildValue("(Ns)", ecpt_pywrapout(me, &pp), qd.p);
end:
return (rc);
mp *xx = 0;
Py_ssize_t n;
qd_parse qd;
+ int paren;
Py_XINCREF(x);
if (!x || x == Py_None)
goto fix;
} else if (TEXT_CHECK(x)) {
qd.p = TEXT_PTR(x); qd.e = 0;
+ qd_skipspc(&qd); paren = qd_delim(&qd, '(');
if (!ec_ptparse(&qd, p)) VALERR(qd.e);
+ qd_skipspc(&qd); if (paren && !qd_delim(&qd, ')'))
+ { EC_DESTROY(p); VALERR("missing `)'"); }
qd_skipspc(&qd); if (!qd_eofp(&qd)) VALERR("junk at eof");
goto fix;
} else if (c && (xx = tomp(x)) != 0) {
me.assertRaises(ValueError, C.ECPt.frombuf, C.bytes("0001fe000201"))
## String conversion and parsing.
+ me.assertEqual(str(P), "(254, 291)")
me.assertEqual(C.ECPt.parse("254, 291)"), (P, ")"))
+ me.assertEqual(C.ECPt.parse("(254, 291)"), (P, ""))
me.assertRaises(ValueError, C.ECPt.parse, "(254, 291")
###--------------------------------------------------------------------------