next node: CAST,
prev node: EQUALITY,
up to node: Subsystem Strange


INLINE

Signature of INLINE

List of Import References :
See BOOL
See DENOTATION

SIGNATURE INLINE[data] 

$Date: 2010-09-30 18:24:17 +0200 (Do, 30. Sep 2010) $ ($Revision: 616 $)

-- inline expansion of C macros for handcoding
-- NB. 	functions of this structure are not for user purpose

SORT data

FUN INLINE : denotation ** denotation ** denotation -> data
/*
	INLINE("dynamic","static[:cast]", argument)

	expands to C macro invocations:

		dynamic(opal_deno)	 if value is not a constant denotation
		static(c_string) 	 otherwise, and if :cast not given
		static(cast(literal))	 otherwise

	opal_deno is the normal representation of denotations.

	c_string is the value of the denotation as an -- transparent by
	escaping -- C-string. 

	if :cast is given, then the argument denotation is literal inlined,
	enclosed by cast. note that in this case C context errors may
	be generated!
	
	the usual use of INLINE is:

		DEF !'real(d) == 
			INLINE("inline_opal_real","inline_c_real:(double)",
					d)

	... where ! will be unfolded if global optimization is enabled
	(and thus may produce C errors) and otherwise not.

*/


next node: CAST,
prev node: EQUALITY,
up to node: Subsystem Strange