From 65f79a952cc244ba33f2de1e59dbbf3377576009 Mon Sep 17 00:00:00 2001 From: William S Fulton Date: Fri, 20 Mar 2009 23:40:39 +0000 Subject: [PATCH] Apply small documentation fix - patch #2579863 git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11165 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- Doc/Manual/Ruby.html | 2 +- Examples/ruby/free_function/example.i | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Doc/Manual/Ruby.html b/Doc/Manual/Ruby.html index 7360f732d..2070db0c0 100644 --- a/Doc/Manual/Ruby.html +++ b/Doc/Manual/Ruby.html @@ -10567,7 +10567,7 @@ existing Ruby object to the destroyed C++ object and raise an exception.
-
%module example

%{
#include "example.h"
%}

/* Specify that ownership is transferred to the zoo
when calling add_animal */
%apply SWIGTYPE *DISOWN { Animal* animal };

/* Track objects */
%trackobjects;

/* Specify the mark function */
%freefunc Zoo "free_Zoo";

%include "example.h"

%header %{
static void free_Zoo(void* ptr) {
Zoo* zoo = (Zoo*) ptr;

/* Loop over each animal */
int count = zoo->get_num_animals();

for(int i = 0; i < count; ++i) {
/* Get an animal */
Animal* animal = zoo->get_animal(i);

/* Unlink the Ruby object from the C++ object */
SWIG_RubyUnlinkObjects(animal);

/* Now remove the tracking for this animal */
SWIG_RubyRemoveTracking(animal);
}

/* Now call SWIG_RemoveMapping for the zoo */
SWIG_RemoveMapping(ptr);

/* Now free the zoo which will free the animals it contains */
delete zoo;
}
%}
+
%module example

%{
#include "example.h"
%}

/* Specify that ownership is transferred to the zoo
when calling add_animal */
%apply SWIGTYPE *DISOWN { Animal* animal };

/* Track objects */
%trackobjects;

/* Specify the mark function */
%freefunc Zoo "free_Zoo";

%include "example.h"

%header %{
static void free_Zoo(void* ptr) {
Zoo* zoo = (Zoo*) ptr;

/* Loop over each animal */
int count = zoo->get_num_animals();

for(int i = 0; i < count; ++i) {
/* Get an animal */
Animal* animal = zoo->get_animal(i);

/* Unlink the Ruby object from the C++ object */
SWIG_RubyUnlinkObjects(animal);

/* Now remove the tracking for this animal */
SWIG_RubyRemoveTracking(animal);
}

/* Now call SWIG_RubyRemoveTracking for the zoo */
SWIG_RubyRemoveTracking(ptr);

/* Now free the zoo which will free the animals it contains */
delete zoo;
}
%}
diff --git a/Examples/ruby/free_function/example.i b/Examples/ruby/free_function/example.i index 5ab29bd58..a446b3f99 100644 --- a/Examples/ruby/free_function/example.i +++ b/Examples/ruby/free_function/example.i @@ -20,7 +20,7 @@ static void free_Zoo(void* ptr) { Zoo* zoo = (Zoo*) ptr; - /* Loop over each object and call SWIG_RemoveMapping */ + /* Loop over each object and call SWIG_RubyRemoveTracking */ int count = zoo->get_num_animals(); for(int i = 0; i < count; ++i) { @@ -32,7 +32,7 @@ SWIG_RubyRemoveTracking(animal); } - /* Now call SWIG_RemoveMapping for the zoo */ + /* Now call SWIG_RubyRemoveTracking for the zoo */ SWIG_RubyRemoveTracking(ptr); /* Now free the zoo which will free the animals it contains */