# Path: schemepy/exceptions.py
# class Error(Exception):
# class ConversionError(Error):
# class VMNotFoundError(Error):
# class ProfileNotFoundError(Error):
# class BackendNotFoundError(Error):
# class SchemeError(Error):
# class ScmSystemError(SchemeError):
# class ScmNumericalError(SchemeError):
# class ScmWrongArgType(SchemeError):
# class ScmWrongArgNumber(SchemeError):
# class ScmSyntaxError(SchemeError):
# class ScmUnboundVariable(SchemeError):
# class ScmMiscError(SchemeError):
#     def __str__(self):
#     def __init__(self, value, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
# 
# Path: schemepy/tpcl.py
# def setup(vm):


from ctypes.util import find_library
from ctypes import *
from schemepy.types import *
from schemepy import exceptions
from schemepy import tpcl
from _ctypes import Py_INCREF, Py_DECREF, PyObj_FromPtr
import types
import os.path
import init_mz
    """\
    A mzscheme type holding Python value.
    """
    @staticmethod
    def pointer(scm):
        "The the id of the referenced Python Object."
        return mz.PyObj_id(scm)

    @staticmethod
    def get(scm):
        "Return the referenced Python Object."
        return PyObj_FromPtr(mz.PyObj_id(scm))

    @staticmethod
    def new(obj):
        """\
        Create a new PyObj with reference to obj.
        """
        Py_INCREF(obj)
        pointer = id(obj)
        return mz.PyObj_create(pointer, PyObj_finalizer)

class VM(object):
    """VM for mzscheme
    """

    profiles = {
        "r5rs" : "(scheme-report-environment 5)",
        "minimal" : "(null-environment 5)",
        "tpcl" : ("(scheme-report-environment 5)",

# Path: schemepy/exceptions.py
# class Error(Exception):
# class ConversionError(Error):
# class VMNotFoundError(Error):
# class ProfileNotFoundError(Error):
# class BackendNotFoundError(Error):
# class SchemeError(Error):
# class ScmSystemError(SchemeError):
# class ScmNumericalError(SchemeError):
# class ScmWrongArgType(SchemeError):
# class ScmWrongArgNumber(SchemeError):
# class ScmSyntaxError(SchemeError):
# class ScmUnboundVariable(SchemeError):
# class ScmMiscError(SchemeError):
#     def __str__(self):
#     def __init__(self, value, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
#     def __init__(self, message):
# 
# Path: schemepy/tpcl.py
# def setup(vm):


# Path: schemepy/mzscheme/mzscheme.py
from ctypes.util import find_library
from ctypes import *
from schemepy.types import *
from schemepy import exceptions
from schemepy import tpcl
from _ctypes import Py_INCREF, Py_DECREF, PyObj_FromPtr
import types
import os.path
import init_mz

    """\
    A mzscheme type holding Python value.
    """
    @staticmethod
    def pointer(scm):
        "The the id of the referenced Python Object."
        return mz.PyObj_id(scm)

    @staticmethod
    def get(scm):
        "Return the referenced Python Object."
        return PyObj_FromPtr(mz.PyObj_id(scm))

    @staticmethod
    def new(obj):
        """\
        Create a new PyObj with reference to obj.
        """
        Py_INCREF(obj)
        pointer = id(obj)
        return mz.PyObj_create(pointer, PyObj_finalizer)

class VM(object):
    """VM for mzscheme
    """

    profiles = {
        "r5rs" : "(scheme-report-environment 5)",
        "minimal" : "(null-environment 5)",
        "tpcl" : ("(scheme-report-environment 5)",

                              lambda vm: tpcl.setup(vm))