]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/tools/build/src/engine/function.h
2 * Copyright 2011 Steven Watanabe
3 * Distributed under the Boost Software License, Version 1.0.
4 * (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt)
7 #ifndef FUNCTION_SW20111123_H
8 #define FUNCTION_SW20111123_H
17 typedef struct _function FUNCTION
;
18 typedef struct _stack STACK
;
20 STACK
* stack_global( void );
21 void stack_push( STACK
* s
, LIST
* l
);
22 LIST
* stack_pop( STACK
* s
);
24 FUNCTION
* function_compile( PARSE
* parse
);
25 FUNCTION
* function_builtin( LIST
* ( * func
)( FRAME
* frame
, int flags
), int flags
, const char * * args
);
26 void function_refer( FUNCTION
* );
27 void function_free( FUNCTION
* );
28 OBJECT
* function_rulename( FUNCTION
* );
29 void function_set_rulename( FUNCTION
*, OBJECT
* );
30 void function_location( FUNCTION
*, OBJECT
* *, int * );
31 LIST
* function_run( FUNCTION
* function
, FRAME
* frame
, STACK
* s
);
33 FUNCTION
* function_compile_actions( const char * actions
, OBJECT
* file
, int line
);
34 void function_run_actions( FUNCTION
* function
, FRAME
* frame
, STACK
* s
, string
* out
);
36 FUNCTION
* function_bind_variables( FUNCTION
* f
, module_t
* module
, int * counter
);
37 FUNCTION
* function_unbind_variables( FUNCTION
* f
);
39 LIST
* function_get_variables( FUNCTION
* f
);
41 void function_done( void );
45 FUNCTION
* function_python( PyObject
* function
, PyObject
* bjam_signature
);