~ubuntu-branches/ubuntu/oneiric/swig1.3/oneiric

« back to all changes in this revision

Viewing changes to Lib/ruby/rubycontainer.swg

  • Committer: Bazaar Package Importer
  • Author(s): Benjamin Drung
  • Date: 2009-11-15 14:00:28 UTC
  • mfrom: (1.2.9 upstream) (2.1.4 squeeze)
  • Revision ID: james.westby@ubuntu.com-20091115140028-me7amr2rie8zz1xn
Tags: 1.3.40-2ubuntu1
* Merge from Debian testing (LP: #356529), remaining changes:
  - Drop libchicken-dev from the build-depends (it's in universe)
  - Remove Pike from package description and from configure flags
  - drop "--without-mzscheme", we don't have it in our build-depends
  - use php-config5
  - Clean Runtime/ as well.
  - debian/rules (clean): Remove Lib/ocaml/swigp4.ml.
* debian/rules: Remove hardcoded python version.
* Remove upper limit for python from Build-Depends.

Show diffs side-by-side

added added

removed removed

Lines of Context:
875
875
 }
876
876
%enddef
877
877
 
878
 
// ..I don't think %swig_sequence_methods_val are really used at all anymore...
879
878
%define %swig_sequence_methods_val(Sequence...)
880
 
  %swig_sequence_methods_common(%arg(Sequence))
881
 
  %extend {
882
 
 
883
 
  VALUE __getitem__(difference_type i) {
884
 
      VALUE r = Qnil;
885
 
      try {
886
 
        r = swig::from< Sequence::value_type >( *(swig::cgetpos(self, i)) );
887
 
      }
888
 
      catch( std::out_of_range )
889
 
        {
890
 
        }
891
 
      return r;
892
 
    }
893
 
 
894
 
    VALUE __setitem__(difference_type i, value_type x) {
895
 
      std::size_t len = $self->size();
896
 
      if ( i < 0 ) i = len - i;
897
 
      else if ( static_cast<std::size_t>(i) >= len )
898
 
        $self->resize( i+1, x );
899
 
      else *(swig::getpos(self,i)) = x;
900
 
      return swig::from< Sequence::value_type >( x );
901
 
    }
902
 
 }
 
879
  %swig_sequence_methods(%arg(Sequence))
903
880
%enddef
904
881
 
905
882