Changes between Version 3 and Version 4 of Langbinding/MOB


Ignore:
Timestamp:
Aug 10, 2007, 2:58:33 AM (15 years ago)
Author:
René Rivera
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Langbinding/MOB

    v3 v4  
    99The first aspect of the meta-object binding is to describe the available interfaces in the system. This amounts to a meta-description of the C++ classes, function, types, constants, etc. all of which live within namespaces.
    1010
    11  Namespaces::
    12   Contains functions, variables, type, and other namespaces.
    13     * Name
    14     * Members
    15  Types::
    16   Includes classes, and enumerations. Each has their own set of sub-items to describe them further.
    17     * Name
    18     * Members
    19  Functions::
    20   This includes both method function and regular functions (global and class static).
    21     * Name
    22     * Return value(s)
     11  Namespaces::
     12    Contains functions, variables, type, and other namespaces.
     13      * Name
     14      * Members
     15  Types::
     16    Includes classes, and enumerations. Each has their own set of sub-items to describe them further. Among the set of members for a type there are special functions that implement the various type specific aspect not just member functions for classes.
     17      * Name
     18      * Members (functions and variables)
     19  Functions::
     20    This includes both method function and regular functions (global and class static).
     21      * Name
     22      * Return value(s)
     23        * Type
     24        * Policies
     25      * Arguments
     26        * Type
     27        * Policies
     28      * Function
     29  Variables::
     30    Variables covers both variables, as in the read-write sense, and other constant values such as enumeration values.
     31      * Name
    2332      * Type
    24       * Policies
    25     * Arguments
    26       * Type
    27       * Policies
    28  Variables::
    29   * Type
    30   * Getter and setter functions
    31   * Variables covers both variables, as in the read-write sense, and other constant values such as enumeration values.
    32 List of classes, and members (variables and methods)
     33      * Getter function
     34      * Setter function
    3335
    34 == Creation of interface descriptions for a particular language ==
     36== Creation ==
    3537
    36 == Calling interface functions ==
    37  * call_function
    38  * make_object
    39  * get_variable
    40  * set_variable
     38Each meta-object binding needs the capability to create interface descriptions for a particular language. Such creation in effect "implements" the binding for a specific language. It is possible for this to be either a runtime and compile time process, or a runtime only process. But how dynamic the creation is depends on the capabilities of the binding language. Simply put a language needs to:
     39
     40  * Walk through the meta-object descriptions and for each:
     41    * Create a binding instance.
     42    * Set the implementation functions for the binding.
     43    * Set a language context.
     44    * Register the binding for others to use.