X7ROOT File Manager
Current Path:
/usr/share/swig/2.0.10/d
usr
/
share
/
swig
/
2.0.10
/
d
/
📁
..
📄
boost_shared_ptr.i
(8.03 KB)
📄
carrays.i
(2.51 KB)
📄
cpointer.i
(3.4 KB)
📄
d.swg
(1.32 KB)
📄
dclassgen.swg
(3.53 KB)
📄
ddirectives.swg
(466 B)
📄
denums.swg
(1.87 KB)
📄
dexception.swg
(1.15 KB)
📄
dhead.swg
(9.59 KB)
📄
director.swg
(1.2 KB)
📄
dkw.swg
(2.36 KB)
📄
dmemberfunctionpointers.swg
(2.67 KB)
📄
doperators.swg
(7.93 KB)
📄
dprimitives.swg
(4.5 KB)
📄
dstrings.swg
(2.51 KB)
📄
dswigtype.swg
(5.09 KB)
📄
dvoid.swg
(559 B)
📄
std_common.i
(102 B)
📄
std_deque.i
(28 B)
📄
std_except.i
(1.86 KB)
📄
std_map.i
(1.7 KB)
📄
std_pair.i
(703 B)
📄
std_shared_ptr.i
(68 B)
📄
std_string.i
(3.04 KB)
📄
std_vector.i
(16.07 KB)
📄
stl.i
(357 B)
📄
typemaps.i
(10.81 KB)
📄
wrapperloader.swg
(7.71 KB)
Editing: std_string.i
/* ----------------------------------------------------------------------------- * std_string.i * * Typemaps for std::string and const std::string& * These are mapped to a D char[] and are passed around by value. * * To use non-const std::string references, use the following %apply. Note * that they are passed by value. * %apply const std::string & {std::string &}; * ----------------------------------------------------------------------------- */ %{ #include <string> %} namespace std { %naturalvar string; class string; %define SWIGD_STD_STRING_TYPEMAPS(DW_STRING_TYPE, DP_STRING_TYPE, FROM_STRINGZ, TO_STRINGZ) // string %typemap(ctype) string, const string & "char *" %typemap(imtype) string, const string & #DW_STRING_TYPE %typemap(dtype) string, const string & #DP_STRING_TYPE %typemap(in, canthrow=1) string, const string & %{ if (!$input) { SWIG_DSetPendingException(SWIG_DIllegalArgumentException, "null string"); return $null; } $1.assign($input); %} %typemap(in, canthrow=1) const string & %{ if (!$input) { SWIG_DSetPendingException(SWIG_DIllegalArgumentException, "null string"); return $null; } $*1_ltype $1_str($input); $1 = &$1_str; %} %typemap(out) string %{ $result = SWIG_d_string_callback($1.c_str()); %} %typemap(out) const string & %{ $result = SWIG_d_string_callback($1->c_str()); %} %typemap(din) string, const string & "($dinput ? TO_STRINGZ($dinput) : null)" %typemap(dout, excode=SWIGEXCODE) string, const string & { DP_STRING_TYPE ret = FROM_STRINGZ($imcall);$excode return ret; } %typemap(directorin) string, const string & %{ $input = SWIG_d_string_callback($1.c_str()); %} %typemap(directorout, canthrow=1) string %{ if (!$input) { SWIG_DSetPendingException(SWIG_DIllegalArgumentException, "null string"); return $null; } $result.assign($input); %} %typemap(directorout, canthrow=1, warning=SWIGWARN_TYPEMAP_THREAD_UNSAFE_MSG) const string & %{ if (!$input) { SWIG_DSetPendingException(SWIG_DIllegalArgumentException, "null string"); return $null; } /* possible thread/reentrant code problem */ static $*1_ltype $1_str; $1_str = $input; $result = &$1_str; %} %typemap(ddirectorin) string, const string & "FROM_STRINGZ($winput)" %typemap(ddirectorout) string, const string & "TO_STRINGZ($dcall)" %typemap(throws, canthrow=1) string, const string & %{ SWIG_DSetPendingException(SWIG_DException, $1.c_str()); return $null; %} %typemap(typecheck) string, const string & = char *; %enddef // We need to have the \0-terminated string conversion functions available in // the D proxy modules. #if (SWIG_D_VERSION == 1) // Could be easily extended to support Phobos as well. SWIGD_STD_STRING_TYPEMAPS(char*, char[], tango.stdc.stringz.fromStringz, tango.stdc.stringz.toStringz) %pragma(d) globalproxyimports = "static import tango.stdc.stringz;"; #else SWIGD_STD_STRING_TYPEMAPS(const(char)*, string, std.conv.to!string, std.string.toStringz) %pragma(d) globalproxyimports = %{ static import std.conv; static import std.string; %} #endif #undef SWIGD_STD_STRING_TYPEMAPS } // namespace std
Upload File
Create Folder