* $Id$
*/
-#ifndef __REFLECT_H
-#define __REFLECT_H
+#ifndef _FIRM_REFLECT_H
+#define _FIRM_REFLECT_H
#include <limits.h>
#include <stdbool.h>
* @param irn The node.
* @return The first matching signature or -1, if no signature matches.
*/
-int rflct_get_signature(ir_node *irn);
+int rflct_get_signature(const ir_node *irn);
/**
* Get the number of in arguments.
*/
int rflct_get_out_args_count(opcode opc, int sig);
+#define rflct_get_args_count(opc, sig, use) \
+ ((use) ? rflct_get_in_args_count(opc, sig) : rflct_get_out_args_count(opc, sig))
+
/**
* Get the array of use args.
* The array is terminated with an entry for which
*/
const rflct_arg_t *rflct_get_out_args(opcode opc, int sig);
+#define rflct_get_args(opc, sig, use) \
+ ((use) ? rflct_get_in_args(opc, sig) : rflct_get_out_args(opc, sig))
+
/**
* Make a string representation of a signature of an opcode.
* @param buf The buffer to put the string to.
* @param name The name of the argument.
* @param mc The mode class of the argument.
* @param is_variadic true, if the argument is variadic.
- * @param mode_equals This variable has following meaning. If the
+ * @param mode_equals This variable has following meaning: If the
* argument is variadic, a 1 indicates that all operands binding to this
* argument must have the same mode. A 0 indicates, that their mode must
* be of the specified mode class but can differ. If the argument is non
int rflct_signature_get_index(const rflct_sig_t *sig, bool is_use, int num);
-#endif
+#endif /* _FIRM_REFLECT_H */