/***************************************************************/
Type Type Defaut Final TailleSegment 16
/* Objet : Type des objets correspondant aux types. */
/***************************************************************/
/*-------------------------------------------------------------*/
/* Heritage des proprietes d'Objet. */
/*-------------------------------------------------------------*/
Prive :
EstInstanceDe : Type Lecture Public;
/*-------------------------------------------------------------*/
/* Proprietes propres. */
/*-------------------------------------------------------------*/
Prive :
NomType : Caractere Lecture Public;
EstUneInterface : Booleen Lecture Public;
EstUneRessource : Booleen Lecture Public;
AccepteProprietesDynamiques : Booleen Lecture Public;
ModuleOrigine : Nul Ou Module Lecture Public;
AccepteTransaction : Booleen Lecture Public;
EtatContrainte : ActiviteContrainte Lecture Public;
SupporteHabilitation : Booleen Lecture Public;
Technologie : TechnologiesSupportees Lecture Public;
/*-------------------------------------------------------------*/
/* Heritage des methodes d'Objet. */
/*-------------------------------------------------------------*/
Public :
Fonction Optimiser(Invariant) Identique(O : Nul Ou Objet) Retourner Nul Ou Booleen;
Procedure Convertir(O : Nul Ou Objet);
Fonction Optimiser(Invariant) CreeParLeServeur() Retourner Entier;
Fonction Optimiser(Invariant) CreeParLeProcessus() Retourner Entier;
Fonction Optimiser(Invariant) CreeDansLEntrepot() Retourner Entrepot;
Fonction Cloner(EntrepotCible : Nul Ou Entrepot=Nul, Profondeur : ModeClonage = ClonageObjetSeul) Retourner Nul Ou Objet;
Fonction LirePropriete(NomPropriete : Caractere) Retourner Nul Ou Objet;
Procedure EcrirePropriete(NomPropriete : Caractere, Valeur : Nul Ou Objet);
Fonction IncrementerDecrementerPropriete(NomPropriete : Nul Ou Caractere, Incrementer : Booleen, Prefixe : Booleen) Retourner Nul Ou Objet;
Procedure SupprimerPropriete(NomPropriete : Caractere);
Fonction Optimiser(Invariant) EnumererProprietes(NumeroPropriete : Entier, TypePropriete : Nul Ou Type=? Sortie, PeutEtreNul : Booleen=? Sortie, Aide : Nul Ou Caractere=? Sortie, NomEnumere : Nul Ou Caractere=? Sortie) Retourner Nul Ou Caractere;
Fonction Optimiser(Invariant) Adresse() Retourner Nul Ou Caractere;
Prive :
Fonction Exporter(E : Nul Ou IEchangeElementaire) Retourner Boolean;
Fonction Importer(E : Nul Ou IEchangeElementaire, EntrepotCible : Nul Ou Entrepot=Nul, EstFiltre : Booleen=Faux, V : Entier=0, R : Entier=0, C : Entier=0) Retourner Nul Ou Objet;
/*-------------------------------------------------------------*/
/* Methodes propres. */
/*-------------------------------------------------------------*/
Public :
Fonction NouvelObjet() Retourner Nul Ou Objet;
Fonction EnumererObjets(O : Nul Ou Objet) Retourner Nul Ou Objet;
Fonction Optimiser(Invariant) EnumererMethodes(Numero : Entier, NomAppel : Nul Ou Caractere=? Sortie, Aide : Nul Ou Caractere=? Sortie) Retourner Nul Ou Appel;
Procedure Habilitation ActiverContrainte(Activite : ActiviteContrainte);
Fonction HabilitationContextuelle RechercherObjets(CritereFiltre : Nul Ou Caractere=Nul, CritereTri : Nul Ou Caractere=Nul) Retourner Nul Ou IResultatRequete(Nul Ou Objet);
Prive :
Destructeur(MettreEnAnteMemoire : Booleen) Retourner Booleen;
Fin Type
Tous les types de données sont une instance du type Type. Le type Type est le type de base de tous les types.
Le type Type ne possède pas de constructeur implicite.
Les objets de type Type sont créés automatiquement lors du chargement des modules comportant définition des types de données.
Principal
/*******/
Variable
/******/
T1 : Type;
T2 : Type;
Debut
T1=Caractere;
/* Affectation entre deux types. */
Si T1==T2 Alors
/* Egalité entre deux types. */
...
Fin Si
Si T1!=T2 Alors
/* Inégalité entre deux types. */
...
Fin Si
Fin Principal
- | - | - | - | - | - | - | - | - |