## Documentation

Table of Contents
Class Inheritance Tree
Widget Screenshots
Package groups

## Index

Package: Generic_Marshaller_2 (generic)

- Goto spec source

# Description

    generic
             type Base_Type_1 is private;
             with function Conversion
               (Value : Glib.Values.GValue) return Base_Type_1;
             type Base_Type_2 is private;
             with function Conversion
               (Value : Glib.Values.GValue) return Base_Type_2;

          package Generic_Marshaller_2 is

# Types

### Base_Type_1

- Goto declaration in source

    type Base_Type_1 is private;

### Base_Type_2

- Goto declaration in source

    type Base_Type_2 is private;

### Handler

- Goto declaration in source

    type Handler is access procedure
               (Widget  : access Widget_Type'Class;
                Param_1 : Base_Type_1;
                Param_2 : Base_Type_2);

# Subprograms & Entries

### Conversion

- Goto spec in source

    function Conversion (Value: Glib.Values.GValue) return Base_Type_1;

### Conversion

- Goto spec in source

    function Conversion (Value: Glib.Values.GValue) return Base_Type_2;

### To_Marshaller

- Goto spec in source

    function To_Marshaller (Cb: Handler) return Marshaller;

### Emit_By_Name

- Goto spec in source

    procedure Emit_By_Name (Object: access Widget_Type'Class;Name: Glib.Signal_Name;Param_1: Base_Type_1;Param_2: Base_Type_2);

The function above should be used when BASE_TYPE can be passed as is to C.

### Emit_By_Name_Generic (generic)

- Goto spec in source

    generic with function Conversion (Param: Base_Type_1) return System.Address;with function Conversion (Param: Base_Type_2) return System.Address;procedure Emit_By_Name_Generic (Object: access Widget_Type'Class;Name: Glib.Signal_Name;Param_1: Base_Type_1;Param_2: Base_Type_2);

Provide an explicit conversion function for PARAM.