#############################################################  -*- c -*-
## generic include for XXX. Do not use directly.
##
## $Id$
########################################################################
@if $m2c_mark_boundary == 1@
/** START code generated by $RCSfile$ $Revision$ */
@end@
########################################################################
##
    /*
     * TODO:230:o: Set $node data
     * set data context from $m2c_ctx_rh
     *
     * Note: if there is a corresponding InetAddress object, we don't
     * know if they'll be set together, or which order they will be set.
     * So we just accept the value here, and check that both values are
     * consistent in ${context}_check_dependencies().
     */
@include generic-ctx-set.m2i@
##
########################################################################
@if $m2c_mark_boundary == 1@
/** END code generated by $RCSfile$ $Revision$ */
@end@
