Skip to content

Instantly share code, notes, and snippets.

View bfroehle's full-sized avatar

Bradley M. Froehle bfroehle

View GitHub Profile
@bfroehle
bfroehle / setup.py
Created February 7, 2012 01:04
A simple example to trigger cython/cython PR-85
from distutils.core import setup
from Cython.Build import cythonize
setup(name = 'tst',
ext_modules = cythonize(['tst.pyx'])
)
@bfroehle
bfroehle / bad.py
Created January 27, 2012 02:51
Using MethodType to convert builtin function to instancemethod.
from demo import incx
class Point(object):
"""A 1-diml Point"""
def __init__(self, x):
self.x = x
incx = incx
p = Point(0)
p.incx()
@bfroehle
bfroehle / reporting.cpp
Created October 13, 2011 17:51
printf alternative in Python
#include <boost/python.hpp>
void report(std::string msg) {
PyObject *f = PySys_GetObject((char *)"stdout");
PyFile_WriteString(msg.c_str(), f);
PyFile_WriteString("\n", f);
}
BOOST_PYTHON_MODULE(reporting) {
boost::python::def("report", &report);
@bfroehle
bfroehle / printf.c
Created October 13, 2011 17:39
How does Cython compile print?
/* Generated by Cython 0.13 on Thu Oct 13 10:39:36 2011 */
#define PY_SSIZE_T_CLEAN
#include "Python.h"
#ifndef Py_PYTHON_H
#error Python headers needed to compile C extensions, please install development version of Python.
#else
#include <stddef.h> /* For offsetof */
#ifndef offsetof
@bfroehle
bfroehle / file_wrapper.cpp
Created October 5, 2011 22:09
Boost.Python from Python to FILE* wrapper
#include <boost/python.hpp>
#include <iostream>
namespace {
void *convert_to_FILEptr(PyObject* obj) {
return PyFile_Check(obj) ? PyFile_AsFile(obj) : 0;
}
}
void test_argument(FILE* f) {