Home | History | Annotate | Download | only in guile
      1 /* -----------------------------------------------------------------------------
      2  * guile.i
      3  *
      4  * SWIG Configuration File for Guile.
      5  * ----------------------------------------------------------------------------- */
      6 
      7 /* Macro for inserting Scheme code into the stub */
      8 #define %scheme	    %insert("scheme")
      9 #define %goops      %insert("goops")
     10 
     11 /* Return-styles */
     12 %pragma(guile) return_nothing_doc = "Returns unspecified."
     13 %pragma(guile) return_one_doc = "Returns $values."
     14 
     15 %define %values_as_list
     16   %pragma(guile) beforereturn = ""
     17   %pragma(guile) return_multi_doc = "Returns a list of $num_values values: $values."
     18 %enddef
     19 %values_as_list /* the default style */
     20 
     21 %define %values_as_vector
     22   %pragma(guile) beforereturn = "GUILE_MAYBE_VECTOR"
     23   %pragma(guile) return_multi_doc = "Returns a vector of $num_values values: $values."
     24 %enddef
     25 
     26 %define %multiple_values
     27   %pragma(guile) beforereturn = "GUILE_MAYBE_VALUES"
     28   %pragma(guile) return_multi_doc = "Returns $num_values values: $values."
     29 %enddef
     30 
     31 #define GUILE_APPEND_RESULT SWIG_APPEND_VALUE
     32 
     33 %include <typemaps.i>
     34