Generated by Cython 0.22

Raw output: score_seq.c

+01: cdef code_base(char base):
static PyObject *__pyx_f_9score_seq_code_base(char __pyx_v_base) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("code_base", 0);
/* … */
  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
+02:     if base == 'A':
  __pyx_t_1 = ((__pyx_v_base == 'A') != 0);
  if (__pyx_t_1) {
+03:         return 0
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_int_0);
    __pyx_r = __pyx_int_0;
    goto __pyx_L0;
  }
+04:     if base == 'a':
  __pyx_t_1 = ((__pyx_v_base == 'a') != 0);
  if (__pyx_t_1) {
+05:         return 0
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_int_0);
    __pyx_r = __pyx_int_0;
    goto __pyx_L0;
  }
+06:     if base == 'C':
  __pyx_t_1 = ((__pyx_v_base == 'C') != 0);
  if (__pyx_t_1) {
+07:         return 1
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_int_1);
    __pyx_r = __pyx_int_1;
    goto __pyx_L0;
  }
+08:     if base == 'c':
  __pyx_t_1 = ((__pyx_v_base == 'c') != 0);
  if (__pyx_t_1) {
+09:         return 1
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_int_1);
    __pyx_r = __pyx_int_1;
    goto __pyx_L0;
  }
+10:     if base == 'G':
  __pyx_t_1 = ((__pyx_v_base == 'G') != 0);
  if (__pyx_t_1) {
+11:         return 2
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_int_2);
    __pyx_r = __pyx_int_2;
    goto __pyx_L0;
  }
+12:     if base == 'g':
  __pyx_t_1 = ((__pyx_v_base == 'g') != 0);
  if (__pyx_t_1) {
+13:         return 2
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_int_2);
    __pyx_r = __pyx_int_2;
    goto __pyx_L0;
  }
+14:     if base == 'T':
  __pyx_t_1 = ((__pyx_v_base == 'T') != 0);
  if (__pyx_t_1) {
+15:         return 3
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_int_3);
    __pyx_r = __pyx_int_3;
    goto __pyx_L0;
  }
+16:     if base == 't':
  __pyx_t_1 = ((__pyx_v_base == 't') != 0);
  if (__pyx_t_1) {
+17:         return 3
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_int_3);
    __pyx_r = __pyx_int_3;
    goto __pyx_L0;
  }
+18:     return -1
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_int_neg_1);
  __pyx_r = __pyx_int_neg_1;
  goto __pyx_L0;
 19: 
+20: def score_seq_from_pwm(char* seq, pwm):
/* Python wrapper */
static PyObject *__pyx_pw_9score_seq_1score_seq_from_pwm(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_9score_seq_1score_seq_from_pwm = {"score_seq_from_pwm", (PyCFunction)__pyx_pw_9score_seq_1score_seq_from_pwm, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_9score_seq_1score_seq_from_pwm(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  char *__pyx_v_seq;
  PyObject *__pyx_v_pwm = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("score_seq_from_pwm (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_seq,&__pyx_n_s_pwm,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_seq)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        case  1:
        if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_pwm)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("score_seq_from_pwm", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "score_seq_from_pwm") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_seq = __Pyx_PyObject_AsString(values[0]); if (unlikely((!__pyx_v_seq) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
    __pyx_v_pwm = values[1];
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("score_seq_from_pwm", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
  __pyx_L3_error:;
  __Pyx_AddTraceback("score_seq.score_seq_from_pwm", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  __pyx_r = __pyx_pf_9score_seq_score_seq_from_pwm(__pyx_self, __pyx_v_seq, __pyx_v_pwm);
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_9score_seq_score_seq_from_pwm(CYTHON_UNUSED PyObject *__pyx_self, char *__pyx_v_seq, PyObject *__pyx_v_pwm) {
  char __pyx_v_base;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("score_seq_from_pwm", 0);
/* … */
  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("score_seq.score_seq_from_pwm", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}
/* … */
  __pyx_tuple_ = PyTuple_Pack(3, __pyx_n_s_seq, __pyx_n_s_pwm, __pyx_n_s_base); if (unlikely(!__pyx_tuple_)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  __Pyx_GOTREF(__pyx_tuple_);
  __Pyx_GIVEREF(__pyx_tuple_);
/* … */
  __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_9score_seq_1score_seq_from_pwm, NULL, __pyx_n_s_score_seq); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_score_seq_from_pwm, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+21:     print pwm
  if (__Pyx_PrintOne(0, __pyx_v_pwm) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
+22:     print [code_base(base) for base in seq]
  __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyBytes_FromString(__pyx_v_seq); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  __Pyx_GOTREF(__pyx_t_2);
  __pyx_t_4 = PyBytes_AS_STRING(__pyx_t_2);
  __pyx_t_5 = (__pyx_t_4 + PyBytes_GET_SIZE(__pyx_t_2));
  for (__pyx_t_6 = __pyx_t_4; __pyx_t_6 < __pyx_t_5; __pyx_t_6++) {
    __pyx_t_3 = __pyx_t_6;
    __pyx_v_base = (__pyx_t_3[0]);
    __pyx_t_7 = __pyx_f_9score_seq_code_base(__pyx_v_base); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
    __Pyx_GOTREF(__pyx_t_7);
    if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_7))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  }
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  if (__Pyx_PrintOne(0, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
+23:     return 0
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_int_0);
  __pyx_r = __pyx_int_0;
  goto __pyx_L0;