Esempio n. 1
0
static PyObject *
salpy_get_line (PyObject *self, void *closure)
{
  struct symtab_and_line *sal = NULL;

  SALPY_REQUIRE_VALID (self, sal);

  return PyInt_FromLong (sal->line);
}
Esempio n. 2
0
static PyObject *
salpy_get_pc (PyObject *self, void *closure)
{
  struct symtab_and_line *sal = NULL;

  SALPY_REQUIRE_VALID (self, sal);

  return gdb_py_long_from_ulongest (sal->pc);
}
Esempio n. 3
0
static PyObject *
salpy_get_symtab (PyObject *self, void *closure)
{
  struct symtab_and_line *sal;
  sal_object *self_sal = (sal_object *) self;

  SALPY_REQUIRE_VALID (self, sal);

  Py_INCREF (self_sal->symtab);

  return (PyObject *) self_sal->symtab;
}
Esempio n. 4
0
static PyObject *
salpy_get_last (PyObject *self, void *closure)
{
  struct symtab_and_line *sal = NULL;

  SALPY_REQUIRE_VALID (self, sal);

  if (sal->end > 0)
    return gdb_py_long_from_ulongest (sal->end - 1);
  else
    Py_RETURN_NONE;
}
Esempio n. 5
0
static PyObject *
salpy_str (PyObject *self)
{
    char *s, *filename;
    sal_object *sal_obj;
    PyObject *result;
    struct symtab_and_line *sal = NULL;

    SALPY_REQUIRE_VALID (self, sal);

    sal_obj = (sal_object *) self;
    filename = (sal_obj->symtab == (symtab_object *) Py_None)
               ? "<unknown>" : sal_obj->symtab->symtab->filename;

    s = xstrprintf ("symbol and line for %s, line %d", filename,
                    sal->line);

    result = PyString_FromString (s);
    xfree (s);

    return result;
}