/
usr
/
share
/
swig
/
3.0.12
/
ruby
/
/usr/share/swig/3.0.12/ruby
mkdir
upload
Name
Size
Mode
Actions
argcargv.i
1227
0644
edit
dl
rm
attribute.i
34
0644
edit
dl
rm
boost_shared_ptr.i
16293
0644
edit
dl
rm
carrays.i
129
0644
edit
dl
rm
cdata.i
30
0644
edit
dl
rm
cmalloc.i
32
0644
edit
dl
rm
cni.i
42
0644
edit
dl
rm
cpointer.i
33
0644
edit
dl
rm
cstring.i
32
0644
edit
dl
rm
director.swg
8198
0644
edit
dl
rm
embed.i
169
0644
edit
dl
rm
exception.i
126
0644
edit
dl
rm
extconf.rb
234
0644
edit
dl
rm
factory.i
32
0644
edit
dl
rm
file.i
642
0644
edit
dl
rm
jstring.i
952
0644
edit
dl
rm
Makefile.swig
942
0644
edit
dl
rm
progargcargv.i
770
0644
edit
dl
rm
ruby.swg
2653
0644
edit
dl
rm
rubyapi.swg
801
0644
edit
dl
rm
rubyautodoc.swg
4367
0644
edit
dl
rm
rubyclasses.swg
11384
0644
edit
dl
rm
rubycomplex.swg
3860
0644
edit
dl
rm
rubycontainer.swg
28953
0644
edit
dl
rm
rubycontainer_extended.swg
3540
0644
edit
dl
rm
rubydef.swg
42
0644
edit
dl
rm
rubyerrors.swg
3714
0644
edit
dl
rm
rubyfragments.swg
552
0644
edit
dl
rm
rubyhead.swg
4281
0644
edit
dl
rm
rubyinit.swg
39
0644
edit
dl
rm
rubyiterators.swg
22823
0644
edit
dl
rm
rubykw.swg
1177
0644
edit
dl
rm
rubymacros.swg
456
0644
edit
dl
rm
rubyopers.swg
1852
0644
edit
dl
rm
rubyprimtypes.swg
5461
0644
edit
dl
rm
rubyrun.swg
13938
0644
edit
dl
rm
rubyruntime.swg
423
0644
edit
dl
rm
rubystdautodoc.swg
1819
0644
edit
dl
rm
rubystdcommon.swg
5207
0644
edit
dl
rm
rubystdfunctors.swg
4057
0644
edit
dl
rm
rubystrings.swg
1569
0644
edit
dl
rm
rubytracking.swg
4448
0644
edit
dl
rm
rubytypemaps.swg
1808
0644
edit
dl
rm
rubyuserdir.swg
657
0644
edit
dl
rm
rubywstrings.swg
2527
0644
edit
dl
rm
std_alloc.i
27
0644
edit
dl
rm
std_array.i
3533
0644
edit
dl
rm
std_basic_string.i
2640
0644
edit
dl
rm
std_char_traits.i
33
0644
edit
dl
rm
std_common.i
2334
0644
edit
dl
rm
std_complex.i
471
0644
edit
dl
rm
std_container.i
60
0644
edit
dl
rm
std_deque.i
732
0644
edit
dl
rm
std_except.i
35
0644
edit
dl
rm
std_functors.i
768
0644
edit
dl
rm
std_ios.i
380
0644
edit
dl
rm
std_iostream.i
227
0644
edit
dl
rm
std_list.i
1037
0644
edit
dl
rm
std_map.i
11322
0644
edit
dl
rm
std_multimap.i
6085
0644
edit
dl
rm
std_multiset.i
1403
0644
edit
dl
rm
std_pair.i
5535
0644
edit
dl
rm
std_queue.i
851
0644
edit
dl
rm
std_set.i
6531
0644
edit
dl
rm
std_shared_ptr.i
68
0644
edit
dl
rm
std_sstream.i
30
0644
edit
dl
rm
std_stack.i
853
0644
edit
dl
rm
std_streambuf.i
31
0644
edit
dl
rm
std_string.i
190
0644
edit
dl
rm
std_vector.i
1218
0644
edit
dl
rm
std_vectora.i
950
0644
edit
dl
rm
std_wstring.i
65
0644
edit
dl
rm
stl.i
357
0644
edit
dl
rm
timeval.i
1180
0644
edit
dl
rm
typemaps.i
11314
0644
edit
dl
rm
Edit:
/usr/share/swig/3.0.12/ruby/std_array.i
(3533B)
/* std::array */ %fragment("StdArrayTraits","header",fragment="StdSequenceTraits") %{ namespace swig { template <class T, size_t N> struct traits_asptr<std::array<T, N> > { static int asptr(VALUE obj, std::array<T, N> **vec) { return traits_asptr_stdseq<std::array<T, N> >::asptr(obj, vec); } }; template <class T, size_t N> struct traits_from<std::array<T, N> > { static VALUE from(const std::array<T, N>& vec) { return traits_from_stdseq<std::array<T, N> >::from(vec); } }; template <class RubySeq, class T, size_t N> inline void assign(const RubySeq& rubyseq, std::array<T, N>* seq) { if (rubyseq.size() < seq->size()) throw std::invalid_argument("std::array cannot be expanded in size"); else if (rubyseq.size() > seq->size()) throw std::invalid_argument("std::array cannot be reduced in size"); std::copy(rubyseq.begin(), rubyseq.end(), seq->begin()); } template <class T, size_t N> inline void resize(std::array<T, N> *seq, typename std::array<T, N>::size_type n, typename std::array<T, N>::value_type x) { throw std::invalid_argument("std::array is a fixed size container and does not support resizing"); } // Only limited slicing is supported as std::array is fixed in size template <class T, size_t N, class Difference> inline std::array<T, N>* getslice(const std::array<T, N>* self, Difference i, Difference j) { typedef std::array<T, N> Sequence; typename Sequence::size_type size = self->size(); typename Sequence::size_type ii = swig::check_index(i, size, (i == size && j == size)); typename Sequence::size_type jj = swig::slice_index(j, size); if (ii == 0 && jj == size) { Sequence *sequence = new Sequence(); std::copy(self->begin(), self->end(), sequence->begin()); return sequence; } else { throw std::invalid_argument("std::array object only supports getting a slice that is the size of the array"); } } template <class T, size_t N, class Difference, class InputSeq> inline void setslice(std::array<T, N>* self, Difference i, Difference j, const InputSeq& v) { typedef std::array<T, N> Sequence; typename Sequence::size_type size = self->size(); typename Sequence::size_type ii = swig::check_index(i, size, true); typename Sequence::size_type jj = swig::slice_index(j, size); if (ii == 0 && jj == size) { std::copy(v.begin(), v.end(), self->begin()); } else { throw std::invalid_argument("std::array object only supports setting a slice that is the size of the array"); } } template <class T, size_t N, class Difference> inline void delslice(std::array<T, N>* self, Difference i, Difference j) { throw std::invalid_argument("std::array object does not support item deletion"); } } %} %define %swig_array_methods(Type...) %swig_sequence_methods_non_resizable(Type) %enddef %define %swig_array_methods_val(Type...) %swig_sequence_methods_non_resizable_val(Type); %enddef %mixin std::array "Enumerable"; %ignore std::array::push_back; %ignore std::array::pop_back; %rename("delete") std::array::__delete__; %rename("reject!") std::array::reject_bang; %rename("map!") std::array::map_bang; %rename("empty?") std::array::empty; %rename("include?" ) std::array::__contains__ const; %rename("has_key?" ) std::array::has_key const; %include <std/std_array.i>
Save
cmd:
run