diff options
Diffstat (limited to 'src/py_scope.cc')
-rw-r--r-- | src/py_scope.cc | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/py_scope.cc b/src/py_scope.cc index 55f779d2..897e2a84 100644 --- a/src/py_scope.cc +++ b/src/py_scope.cc @@ -70,9 +70,28 @@ void export_scope() class_< scope_t, scope_wrapper, boost::noncopyable > ("Scope", no_init) .def("define", py_scope_define) .def("lookup", py_scope_lookup) - .def("resolve", &scope_t::resolve) .def("__getattr__", py_scope_getattr) ; + + class_< child_scope_t, bases<scope_t>, + boost::noncopyable > ("ChildScope") + .def(init<>()) + .def(init<scope_t&>()) + ; + + class_< symbol_scope_t, bases<child_scope_t>, + boost::noncopyable > ("SymbolScope") + .def(init<>()) + .def(init<scope_t&>()) + ; + + class_< call_scope_t, bases<child_scope_t>, + boost::noncopyable > ("CallScope", init<scope_t&>()) + ; + + class_< bind_scope_t, bases<child_scope_t>, + boost::noncopyable > ("BindScope", init<scope_t&, scope_t&>()) + ; } } // namespace ledger |