* detail.
* \param ... A list of arguments to pass to the advice function,
* terminated by #AOP_TERM_ARG.
+ * \ingroup advice_insert
*/
void
aop_insert_advice (struct aop_joinpoint *jp, const char *func_name,
* \param func_name The name of the distributor advice function.
* \param ... A list of arguments to pass to the advice function,
* terminated by #AOP_TERM_ARG.
+ * \ingroup advice_insert
*/
void
aop_duplicate (struct aop_joinpoint *jp, const char *func_name, ...)
* point. Using AOP_INSERT_BEFORE will still insert the advice after
* function entry, but it will place the advice before any
* AOP_INSERT_AFTER advice.
+ * \ingroup advice_insert
*/
enum aop_insert_location {
/**
AOP_TERM_ARG,
};
+/**
+ * \defgroup advice_insert Advice Insertion Functions
+ * \{
+ */
+
/**
* \brief Mark an advice argument as a string constant
* (const char *).
*/
#define AOP_DYNVAL(VAL) ATA_DYNVAL, VAL
+/**
+ * \}
+ */
+
extern const char *aop_capture_function_name (struct aop_joinpoint *jp);
extern struct aop_pointcut *aop_match_function_entry ();