Bug 18091

Summary: [fixed in git] include IMPLEMENT(foo) boilerplate in interface documentation
Product: Telepathy Reporter: Will Thompson <will>
Component: tp-glibAssignee: Telepathy bugs list <telepathy-bugs>
Status: RESOLVED FIXED QA Contact: Telepathy bugs list <telepathy-bugs>
Severity: enhancement    
Priority: low    
Version: unspecified   
Hardware: Other   
OS: All   
URL: http://git.collabora.co.uk/?p=user/smcv/telepathy-glib-smcv.git;a=shortlog;h=refs/heads/boilerplate
Whiteboard:
i915 platform: i915 features:

Description Will Thompson 2008-10-16 06:05:43 UTC
Just about every implementation of every D-Bus interface in every CM uses this idiom:

#define IMPLEMENT(x) tp_svc_channel_implement_##x (\
    klass, gabble_im_channel_##x)
  IMPLEMENT(close);
  IMPLEMENT(get_channel_type);
  IMPLEMENT(get_handle);
  IMPLEMENT(get_interfaces);
#undef IMPLEMENT

I always end up cargo-culting this, and it's easy to get wrong, particularly if I accidentally copy from somewhere that reimplements most but not all of the methods.

It'd be nice to have this boilerplate in the documentation of the interface type, as a canonical source.
Comment 2 Simon McVittie 2009-07-24 04:19:21 UTC
Removing patch tag so this bug leaves the review queue.
Comment 3 Simon McVittie 2009-08-17 04:59:05 UTC
Fixed in 0.7.34
Comment 4 Simon McVittie 2009-08-17 04:59:12 UTC
Fixed in 0.7.34

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.