BIND 10 #1245: pydnspp as dynamic module (so other wrappers can use it)
BIND 10 Development
do-not-reply at isc.org
Mon Sep 19 07:32:43 UTC 2011
#1245: pydnspp as dynamic module (so other wrappers can use it)
-------------------------------------+-------------------------------------
Reporter: jelte | Owner: jinmei
Type: task | Status: reviewing
Priority: major | Milestone:
Component: | Sprint-20110927
libdns++ | Resolution:
Keywords: | Sensitive: 0
Defect Severity: N/A | Sub-Project: DNS
Feature Depending on Ticket: | Estimated Difficulty: 0
Add Hours to Ticket: 0 | Total Hours: 0
Internal?: 0 |
-------------------------------------+-------------------------------------
Comment (by jinmei):
Replying to [comment:5 jelte]:
> > '''general'''
> >
> > - I'd suggest hiding initModulePart_xxx() as much as possible because
> > they are essentially private internal subroutines for
> > PyInit_pydnspp() and are not expected to be called by any others
> > (right?). Specifically, I'd move the declaration of them from
> > the semi-public header files such as edns_python.h to some special
> > header files such as edns_python_internal.h with comments that they
> > shouldn't be included in any other files outside the pydnspp module.
> > I'd also "hide" the declaration and definition of these
> > initModulePart functions in a deeper namespace such as
> > isc::dns::python::internal.
> >
>
> I moved them to isc::dns::python::internal. I also created a separate
_internal
> header file for each file, when I realized that this isn't actually
really that
> useful; I opted to define them as forward declarations in pydnspp.cc.
This way
> we save the 'pollution' of another 17 files, and they can't be included
by
> accident. We *could* make a pydnspp.h that does it, but this way seems
fine to
> me.
I've not closely looked at all the diffs, but I noticed one
substantial point that I wish I could have noticed in the first
review...if I understand it correctly, initModulePart_xxx()s now don't
even have to be in the separate library in the first place, and that
would make the code much cleaner.
--
Ticket URL: <http://bind10.isc.org/ticket/1245#comment:6>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list