summaryrefslogtreecommitdiff
path: root/src/py_scope.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/py_scope.cc')
-rw-r--r--src/py_scope.cc21
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