diff --git a/Doc/Manual/Contents.html b/Doc/Manual/Contents.html index 51d4edaa4..8522e8af4 100644 --- a/Doc/Manual/Contents.html +++ b/Doc/Manual/Contents.html @@ -1727,7 +1727,76 @@ -

39 SWIG and Tcl

+

39 SWIG and Scilab

+ + +
+ +
+ + +

40 SWIG and Tcl

@@ -1793,7 +1862,7 @@
-

40 Extending SWIG to support new languages

+

41 Extending SWIG to support new languages

diff --git a/Doc/Manual/Extending.html b/Doc/Manual/Extending.html index 00302d7b5..59c63403d 100644 --- a/Doc/Manual/Extending.html +++ b/Doc/Manual/Extending.html @@ -6,7 +6,7 @@ -

40 Extending SWIG to support new languages

+

41 Extending SWIG to support new languages

-

40.4.4 Attribute namespaces

+

41.4.4 Attribute namespaces

@@ -659,7 +659,7 @@ that matches the name of the target language. For example, python:foo perl:foo.

-

40.4.5 Symbol Tables

+

41.4.5 Symbol Tables

@@ -750,7 +750,7 @@ example.i:5. Previous declaration is foo_i(int )

-

40.4.6 The %feature directive

+

41.4.6 The %feature directive

@@ -806,7 +806,7 @@ For example, the exception code above is simply stored without any modifications.

-

40.4.7 Code Generation

+

41.4.7 Code Generation

@@ -928,7 +928,7 @@ public : The role of these functions is described shortly.

-

40.4.8 SWIG and XML

+

41.4.8 SWIG and XML

@@ -941,7 +941,7 @@ internal data structures, it may be useful to keep XML in the back of your mind as a model.

-

40.5 Primitive Data Structures

+

41.5 Primitive Data Structures

@@ -987,7 +987,7 @@ typedef Hash Typetab; -

40.5.1 Strings

+

41.5.1 Strings

@@ -1128,7 +1128,7 @@ Returns the number of replacements made (if any). -

40.5.2 Hashes

+

41.5.2 Hashes

@@ -1205,7 +1205,7 @@ Returns the list of hash table keys. -

40.5.3 Lists

+

41.5.3 Lists

@@ -1294,7 +1294,7 @@ If t is not a standard object, it is assumed to be a char * and is used to create a String object. -

40.5.4 Common operations

+

41.5.4 Common operations

The following operations are applicable to all datatypes. @@ -1349,7 +1349,7 @@ objects and report errors. Gets the line number associated with x. -

40.5.5 Iterating over Lists and Hashes

+

41.5.5 Iterating over Lists and Hashes

To iterate over the elements of a list or a hash table, the following functions are used: @@ -1394,7 +1394,7 @@ for (j = First(j); j.item; j= Next(j)) { -

40.5.6 I/O

+

41.5.6 I/O

Special I/O functions are used for all internal I/O. These operations @@ -1528,7 +1528,7 @@ Printf(f, "%s\n", s); Similarly, the preprocessor and parser all operate on string-files.

-

40.6 Navigating and manipulating parse trees

+

41.6 Navigating and manipulating parse trees

Parse trees are built as collections of hash tables. Each node is a hash table in which @@ -1662,7 +1662,7 @@ Deletes a node from the parse tree. Deletion reconnects siblings and properly u the parent so that sibling nodes are unaffected. -

40.7 Working with attributes

+

41.7 Working with attributes

@@ -1779,7 +1779,7 @@ the attribute is optional. Swig_restore() must always be called after function. -

40.8 Type system

+

41.8 Type system

@@ -1788,7 +1788,7 @@ pointers, references, and pointers to members. A detailed discussion of type theory is impossible here. However, let's cover the highlights.

-

40.8.1 String encoding of types

+

41.8.1 String encoding of types

@@ -1889,7 +1889,7 @@ make the final type, the two parts are just joined together using string concatenation.

-

40.8.2 Type construction

+

41.8.2 Type construction

@@ -2058,7 +2058,7 @@ Returns the prefix of a type. For example, if ty is ty is unmodified. -

40.8.3 Type tests

+

41.8.3 Type tests

@@ -2145,7 +2145,7 @@ Checks if ty is a varargs type. Checks if ty is a templatized type. -

40.8.4 Typedef and inheritance

+

41.8.4 Typedef and inheritance

@@ -2247,7 +2247,7 @@ Fully reduces ty according to typedef rules. Resulting datatype will consist only of primitive typenames. -

40.8.5 Lvalues

+

41.8.5 Lvalues

@@ -2284,7 +2284,7 @@ Literal y; // type = 'Literal', ltype='p.char' -

40.8.6 Output functions

+

41.8.6 Output functions

@@ -2346,7 +2346,7 @@ SWIG, but is most commonly associated with type-descriptor objects that appear in wrappers (e.g., SWIGTYPE_p_double). -

40.9 Parameters

+

41.9 Parameters

@@ -2445,7 +2445,7 @@ included. Used to emit prototypes. Returns the number of required (non-optional) arguments in p. -

40.10 Writing a Language Module

+

41.10 Writing a Language Module

@@ -2460,7 +2460,7 @@ describes the creation of a minimal Python module. You should be able to extra this to other languages.

-

40.10.1 Execution model

+

41.10.1 Execution model

@@ -2470,7 +2470,7 @@ the parsing of command line options, all aspects of code generation are controll different methods of the Language that must be defined by your module.

-

40.10.2 Starting out

+

41.10.2 Starting out

@@ -2578,7 +2578,7 @@ that activates your module. For example, swig -python foo.i. The messages from your new module should appear.

-

40.10.3 Command line options

+

41.10.3 Command line options

@@ -2637,7 +2637,7 @@ to mark the option as valid. If you forget to do this, SWIG will terminate wit unrecognized command line option error.

-

40.10.4 Configuration and preprocessing

+

41.10.4 Configuration and preprocessing

@@ -2686,7 +2686,7 @@ an implementation file python.cxx and a configuration file python.swg.

-

40.10.5 Entry point to code generation

+

41.10.5 Entry point to code generation

@@ -2744,7 +2744,7 @@ int Python::top(Node *n) { -

40.10.6 Module I/O and wrapper skeleton

+

41.10.6 Module I/O and wrapper skeleton

@@ -2892,7 +2892,7 @@ functionWrapper : void Shape_y_set(Shape *self,double y) -

40.10.7 Low-level code generators

+

41.10.7 Low-level code generators

@@ -3046,7 +3046,7 @@ but without the typemaps, there is still work to do.

-

40.10.8 Configuration files

+

41.10.8 Configuration files

@@ -3190,7 +3190,7 @@ politely displays the ignoring language message. -

40.10.9 Runtime support

+

41.10.9 Runtime support

@@ -3199,7 +3199,7 @@ Discuss the kinds of functions typically needed for SWIG runtime support (e.g. the SWIG files that implement those functions.

-

40.10.10 Standard library files

+

41.10.10 Standard library files

@@ -3218,7 +3218,7 @@ The following are the minimum that are usually supported: Please copy these and modify for any new language.

-

40.10.11 User examples

+

41.10.11 User examples

@@ -3247,7 +3247,7 @@ during this process, see the section on .

-

40.10.12 Test driven development and the test-suite

+

41.10.12 Test driven development and the test-suite

@@ -3306,7 +3306,7 @@ It is therefore essential that the runtime tests are written in a manner that di but error/exception out with an error message on stderr on failure.

-

40.10.12.1 Running the test-suite

+

41.10.12.1 Running the test-suite

@@ -3498,7 +3498,7 @@ It can be run in the same way as the other language test-suites, replacing [lang The test cases used and the way it works is described in Examples/test-suite/errors/Makefile.in.

-

40.10.13 Documentation

+

41.10.13 Documentation

@@ -3530,7 +3530,7 @@ Some topics that you'll want to be sure to address include: if available. -

40.10.14 Prerequisites for adding a new language module to the SWIG distribution

+

41.10.14 Prerequisites for adding a new language module to the SWIG distribution

@@ -3587,7 +3587,7 @@ should be added should there be an area not already covered by the existing tests.

-

40.10.15 Coding style guidelines

+

41.10.15 Coding style guidelines

@@ -3611,7 +3611,7 @@ The generated C/C++ code should also follow this style as close as possible. How should be avoided as unlike the SWIG developers, users will never have consistent tab settings.

-

40.11 Debugging Options

+

41.11 Debugging Options

@@ -3638,7 +3638,7 @@ There are various command line options which can aid debugging a SWIG interface The complete list of command line options for SWIG are available by running swig -help.

-

40.12 Guide to parse tree nodes

+

41.12 Guide to parse tree nodes

@@ -4046,7 +4046,7 @@ extern "X" { ... } declaration. -

40.13 Further Development Information

+

41.13 Further Development Information

diff --git a/Doc/Manual/Sections.html b/Doc/Manual/Sections.html index 666069264..cfd3aa906 100644 --- a/Doc/Manual/Sections.html +++ b/Doc/Manual/Sections.html @@ -55,6 +55,7 @@ Last update : SWIG-3.0.5 (in progress)

  • Python support
  • R support
  • Ruby support
  • +
  • Scilab support
  • Tcl support
  • diff --git a/Doc/Manual/Tcl.html b/Doc/Manual/Tcl.html index 45218f303..874a5325a 100644 --- a/Doc/Manual/Tcl.html +++ b/Doc/Manual/Tcl.html @@ -6,7 +6,7 @@ -

    39 SWIG and Tcl

    +

    40 SWIG and Tcl

    -

    39.2.2 Using NMAKE

    +

    40.2.2 Using NMAKE

    @@ -640,7 +640,7 @@ to get you started. With a little practice, you'll be making lots of Tcl extensions.

    -

    39.3 A tour of basic C/C++ wrapping

    +

    40.3 A tour of basic C/C++ wrapping

    @@ -651,7 +651,7 @@ classes. This section briefly covers the essential aspects of this wrapping.

    -

    39.3.1 Modules

    +

    40.3.1 Modules

    @@ -685,7 +685,7 @@ To fix this, supply an extra argument to load like this: -

    39.3.2 Functions

    +

    40.3.2 Functions

    @@ -710,7 +710,7 @@ like you think it does: % -

    39.3.3 Global variables

    +

    40.3.3 Global variables

    @@ -790,7 +790,7 @@ extern char *path; // Read-only (due to %immutable) -

    39.3.4 Constants and enums

    +

    40.3.4 Constants and enums

    @@ -874,7 +874,7 @@ When an identifier name is given, it is used to perform an implicit hash-table l conversion. This allows the global statement to be omitted.

    -

    39.3.5 Pointers

    +

    40.3.5 Pointers

    @@ -970,7 +970,7 @@ C-style cast may return a bogus result whereas as the C++-style cast will return None if the conversion can't be performed.

    -

    39.3.6 Structures

    +

    40.3.6 Structures

    @@ -1252,7 +1252,7 @@ Note: Tcl only destroys the underlying object if it has ownership. See the memory management section that appears shortly.

    -

    39.3.7 C++ classes

    +

    40.3.7 C++ classes

    @@ -1319,7 +1319,7 @@ In Tcl, the static member is accessed as follows: -

    39.3.8 C++ inheritance

    +

    40.3.8 C++ inheritance

    @@ -1368,7 +1368,7 @@ For instance: It is safe to use multiple inheritance with SWIG.

    -

    39.3.9 Pointers, references, values, and arrays

    +

    40.3.9 Pointers, references, values, and arrays

    @@ -1422,7 +1422,7 @@ to hold the result and a pointer is returned (Tcl will release this memory when the return value is garbage collected).

    -

    39.3.10 C++ overloaded functions

    +

    40.3.10 C++ overloaded functions

    @@ -1545,7 +1545,7 @@ first declaration takes precedence. Please refer to the "SWIG and C++" chapter for more information about overloading.

    -

    39.3.11 C++ operators

    +

    40.3.11 C++ operators

    @@ -1647,7 +1647,7 @@ There are ways to make this operator appear as part of the class using the % Keep reading.

    -

    39.3.12 C++ namespaces

    +

    40.3.12 C++ namespaces

    @@ -1711,7 +1711,7 @@ utilizes thousands of small deeply nested namespaces each with identical symbol names, well, then you get what you deserve.

    -

    39.3.13 C++ templates

    +

    40.3.13 C++ templates

    @@ -1763,7 +1763,7 @@ More details can be found in the SWIG and C++ -

    39.3.14 C++ Smart Pointers

    +

    40.3.14 C++ Smart Pointers

    @@ -1847,7 +1847,7 @@ simply use the __deref__() method. For example: -

    39.4 Further details on the Tcl class interface

    +

    40.4 Further details on the Tcl class interface

    @@ -1860,7 +1860,7 @@ of low-level details were omitted. This section provides a brief overview of how the proxy classes work.

    -

    39.4.1 Proxy classes

    +

    40.4.1 Proxy classes

    @@ -1925,7 +1925,7 @@ function. This allows objects to be encapsulated objects that look a lot like as shown in the last section.

    -

    39.4.2 Memory management

    +

    40.4.2 Memory management

    @@ -2113,7 +2113,7 @@ typemaps--an advanced topic discussed later.

    -

    39.5 Input and output parameters

    +

    40.5 Input and output parameters

    @@ -2301,7 +2301,7 @@ set c [lindex $dim 1] -

    39.6 Exception handling

    +

    40.6 Exception handling

    @@ -2435,7 +2435,7 @@ Since SWIG's exception handling is user-definable, you are not limited to C++ ex See the chapter on "Customization Features" for more examples.

    -

    39.7 Typemaps

    +

    40.7 Typemaps

    @@ -2452,7 +2452,7 @@ Typemaps are only used if you want to change some aspect of the primitive C-Tcl interface.

    -

    39.7.1 What is a typemap?

    +

    40.7.1 What is a typemap?

    @@ -2569,7 +2569,7 @@ parameter is omitted): -

    39.7.2 Tcl typemaps

    +

    40.7.2 Tcl typemaps

    @@ -2707,7 +2707,7 @@ Initialize an argument to a value before any conversions occur. Examples of these methods will appear shortly.

    -

    39.7.3 Typemap variables

    +

    40.7.3 Typemap variables

    @@ -2778,7 +2778,7 @@ properly assigned. The Tcl name of the wrapper function being created. -

    39.7.4 Converting a Tcl list to a char **

    +

    40.7.4 Converting a Tcl list to a char **

    @@ -2840,7 +2840,7 @@ argv[2] = Larry 3 -

    39.7.5 Returning values in arguments

    +

    40.7.5 Returning values in arguments

    @@ -2882,7 +2882,7 @@ result, a Tcl function using these typemaps will work like this : % -

    39.7.6 Useful functions

    +

    40.7.6 Useful functions

    @@ -2958,7 +2958,7 @@ int Tcl_IsShared(Tcl_Obj *obj); -

    39.7.7 Standard typemaps

    +

    40.7.7 Standard typemaps

    @@ -3043,7 +3043,7 @@ work) -

    39.7.8 Pointer handling

    +

    40.7.8 Pointer handling

    @@ -3119,7 +3119,7 @@ For example: -

    39.8 Turning a SWIG module into a Tcl Package.

    +

    40.8 Turning a SWIG module into a Tcl Package.

    @@ -3191,7 +3191,7 @@ As a final note, most SWIG examples do not yet use the to use the load command instead.

    -

    39.9 Building new kinds of Tcl interfaces (in Tcl)

    +

    40.9 Building new kinds of Tcl interfaces (in Tcl)

    @@ -3290,7 +3290,7 @@ danger of blowing something up (although it is easily accomplished with an out of bounds array access).

    -

    39.9.1 Proxy classes

    +

    40.9.1 Proxy classes

    @@ -3411,7 +3411,7 @@ short, but clever Tcl script can be combined with SWIG to do many interesting things.

    -

    39.10 Tcl/Tk Stubs

    +

    40.10 Tcl/Tk Stubs

    diff --git a/Doc/Manual/chapters b/Doc/Manual/chapters index c5f655254..d94a8a396 100644 --- a/Doc/Manual/chapters +++ b/Doc/Manual/chapters @@ -36,5 +36,6 @@ Pike.html Python.html R.html Ruby.html +Scilab.html Tcl.html Extending.html