apr_inherit.h revision 251875
1251875Speter/* Licensed to the Apache Software Foundation (ASF) under one or more 2251875Speter * contributor license agreements. See the NOTICE file distributed with 3251875Speter * this work for additional information regarding copyright ownership. 4251875Speter * The ASF licenses this file to You under the Apache License, Version 2.0 5251875Speter * (the "License"); you may not use this file except in compliance with 6251875Speter * the License. You may obtain a copy of the License at 7251875Speter * 8251875Speter * http://www.apache.org/licenses/LICENSE-2.0 9251875Speter * 10251875Speter * Unless required by applicable law or agreed to in writing, software 11251875Speter * distributed under the License is distributed on an "AS IS" BASIS, 12251875Speter * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13251875Speter * See the License for the specific language governing permissions and 14251875Speter * limitations under the License. 15251875Speter */ 16251875Speter 17251875Speter#ifndef APR_INHERIT_H 18251875Speter#define APR_INHERIT_H 19251875Speter 20251875Speter/** 21251875Speter * @file apr_inherit.h 22251875Speter * @brief APR File Handle Inheritance Helpers 23251875Speter * @remark This internal header includes internal declaration helpers 24251875Speter * for other headers to declare apr_foo_inherit_[un]set functions. 25251875Speter */ 26251875Speter 27251875Speter/** 28251875Speter * Prototype for type-specific declarations of apr_foo_inherit_set 29251875Speter * functions. 30251875Speter * @remark Doxygen unwraps this macro (via doxygen.conf) to provide 31251875Speter * actual help for each specific occurance of apr_foo_inherit_set. 32251875Speter * @remark the linkage is specified for APR. It would be possible to expand 33251875Speter * the macros to support other linkages. 34251875Speter */ 35251875Speter#define APR_DECLARE_INHERIT_SET(type) \ 36251875Speter APR_DECLARE(apr_status_t) apr_##type##_inherit_set( \ 37251875Speter apr_##type##_t *the##type) 38251875Speter 39251875Speter/** 40251875Speter * Prototype for type-specific declarations of apr_foo_inherit_unset 41251875Speter * functions. 42251875Speter * @remark Doxygen unwraps this macro (via doxygen.conf) to provide 43251875Speter * actual help for each specific occurance of apr_foo_inherit_unset. 44251875Speter * @remark the linkage is specified for APR. It would be possible to expand 45251875Speter * the macros to support other linkages. 46251875Speter */ 47251875Speter#define APR_DECLARE_INHERIT_UNSET(type) \ 48251875Speter APR_DECLARE(apr_status_t) apr_##type##_inherit_unset( \ 49251875Speter apr_##type##_t *the##type) 50251875Speter 51251875Speter#endif /* ! APR_INHERIT_H */ 52