Une nouvelle structure de classes dans com.bernard.bernard (le nom est quand même plus rigolo ...)

This commit is contained in:
Mysaa 2021-05-24 18:41:25 +02:00
parent 040b45501a
commit 5b6ed1165f
16 changed files with 697 additions and 272 deletions

View File

@ -1,265 +1,363 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<XMI xmi.version="1.2" timestamp="2019-03-29T20:57:23" verified="false" xmlns:UML="http://schema.omg.org/spec/UML/1.3"> <uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_qL8ygKWaEemQR_S2mizNZQ" name="LeBernard">
<XMI.header> <elementImport xmi:id="_qSopUKWaEemQR_S2mizNZQ">
<XMI.documentation> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#boolean"/>
<XMI.exporter>umbrello uml modeller http://umbrello.kde.org</XMI.exporter> </elementImport>
<XMI.exporterVersion>1.6.10</XMI.exporterVersion> <elementImport xmi:id="_qSopUaWaEemQR_S2mizNZQ">
<XMI.exporterEncoding>UnicodeUTF8</XMI.exporterEncoding> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#byte"/>
</XMI.documentation> </elementImport>
<XMI.metamodel href="UML.xml" xmi.version="1.3" xmi.name="UML"/> <elementImport xmi:id="_qSopUqWaEemQR_S2mizNZQ">
</XMI.header> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#char"/>
<XMI.content> </elementImport>
<UML:Model isAbstract="false" xmi.id="m1" name="UML Model" isSpecification="false" isLeaf="false" isRoot="false"> <elementImport xmi:id="_qSpQYKWaEemQR_S2mizNZQ">
<UML:Namespace.ownedElement> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#double"/>
<UML:Stereotype isAbstract="false" xmi.id="folder" visibility="public" name="folder" namespace="m1" isSpecification="false" isLeaf="false" isRoot="false"/> </elementImport>
<UML:Stereotype isAbstract="false" xmi.id="datatype" visibility="public" name="datatype" namespace="m1" isSpecification="false" isLeaf="false" isRoot="false"/> <elementImport xmi:id="_qSpQYaWaEemQR_S2mizNZQ">
<UML:Stereotype isAbstract="false" xmi.id="interface" visibility="public" name="interface" namespace="m1" isSpecification="false" isLeaf="false" isRoot="false"/> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#float"/>
<UML:Model isAbstract="false" xmi.id="Logical View" visibility="public" name="Logical View" namespace="m1" isSpecification="false" isLeaf="false" isRoot="false"> </elementImport>
<UML:Namespace.ownedElement> <elementImport xmi:id="_qSpQYqWaEemQR_S2mizNZQ">
<UML:Package isAbstract="false" xmi.id="Datatypes" visibility="public" name="Datatypes" namespace="Logical View" isSpecification="false" stereotype="folder" isLeaf="false" isRoot="false"> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#int"/>
<UML:Namespace.ownedElement> </elementImport>
<UML:DataType isAbstract="false" xmi.id="afPCKmKoBpxu" visibility="public" name="char" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <elementImport xmi:id="_qSp3cKWaEemQR_S2mizNZQ">
<UML:DataType isAbstract="false" xmi.id="qh1wmVgxLqLR" visibility="public" name="int" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#long"/>
<UML:DataType isAbstract="false" xmi.id="OIjlQrKnbD1g" visibility="public" name="float" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> </elementImport>
<UML:DataType isAbstract="false" xmi.id="ZuGx8Rvl7QOf" visibility="public" name="double" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <elementImport xmi:id="_qSp3caWaEemQR_S2mizNZQ">
<UML:DataType isAbstract="false" xmi.id="PhqQwWqEeUnA" visibility="public" name="bool" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#short"/>
<UML:DataType isAbstract="false" xmi.id="Iz90Z7WAxl0D" visibility="public" name="string" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> </elementImport>
<UML:DataType isAbstract="false" xmi.id="40XeAmt8YNOs" visibility="public" name="unsigned char" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <elementImport xmi:id="_qSp3cqWaEemQR_S2mizNZQ">
<UML:DataType isAbstract="false" xmi.id="GZPnDpZWQRGc" visibility="public" name="signed char" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
<UML:DataType isAbstract="false" xmi.id="tCG8ifF3V3v6" visibility="public" name="unsigned int" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> </elementImport>
<UML:DataType isAbstract="false" xmi.id="XmxQr2lVL4Xu" visibility="public" name="signed int" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <elementImport xmi:id="_qSp3c6WaEemQR_S2mizNZQ">
<UML:DataType isAbstract="false" xmi.id="1VPgxwRYSjpc" visibility="public" name="short int" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
<UML:DataType isAbstract="false" xmi.id="GVo00PoCYL6c" visibility="public" name="unsigned short int" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> </elementImport>
<UML:DataType isAbstract="false" xmi.id="jk41F8tMMCGz" visibility="public" name="signed short int" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <elementImport xmi:id="_qSqegKWaEemQR_S2mizNZQ">
<UML:DataType isAbstract="false" xmi.id="dkKgsUGTKgY5" visibility="public" name="long int" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<UML:DataType isAbstract="false" xmi.id="d5n1GXHPn3h7" visibility="public" name="signed long int" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> </elementImport>
<UML:DataType isAbstract="false" xmi.id="XL1r84Rk4XdP" visibility="public" name="unsigned long int" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <elementImport xmi:id="_qSqegaWaEemQR_S2mizNZQ">
<UML:DataType isAbstract="false" xmi.id="aJ2Biyroex2f" visibility="public" name="long double" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <importedElement xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#UnlimitedNatural"/>
<UML:DataType isAbstract="false" xmi.id="SmxOMTPylo3h" visibility="public" name="wchar_t" namespace="Datatypes" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> </elementImport>
<UML:DataType isAbstract="false" xmi.id="ig5YqsMecnIg" visibility="public" name="List&lt;Boiboite>" namespace="Datatypes" elementReference="VsXhEyRwcWs2" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <packageImport xmi:id="_qShUkKWaEemQR_S2mizNZQ">
<UML:DataType isAbstract="false" xmi.id="9KMTfRqVDZ7q" visibility="public" name="List&lt;Parameter>" namespace="Datatypes" elementReference="VsXhEyRwcWs2" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
<UML:DataType isAbstract="false" xmi.id="nOzLmRAQTc20" visibility="public" name="List&lt;Attribute>" namespace="Datatypes" elementReference="VsXhEyRwcWs2" isSpecification="false" stereotype="datatype" isLeaf="false" isRoot="false"/> </packageImport>
</UML:Namespace.ownedElement> <packageImport xmi:id="_qSkX4KWaEemQR_S2mizNZQ">
</UML:Package> <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#_0"/>
<UML:Class isAbstract="false" xmi.id="4yDjGGyh2vC9" visibility="public" name="Boiboite" namespace="Logical View" isSpecification="false" isLeaf="false" isRoot="false"> </packageImport>
<UML:Classifier.feature> <packagedElement xmi:type="uml:Package" xmi:id="_qU9kkKWaEemQR_S2mizNZQ" name="com">
<UML:Attribute xmi.id="y1aQUc3CKHKW" visibility="private" name="attributes" isSpecification="false" type="nOzLmRAQTc20"/> <packagedElement xmi:type="uml:Package" xmi:id="_qU9kkaWaEemQR_S2mizNZQ" name="bernard">
</UML:Classifier.feature> <packagedElement xmi:type="uml:Package" xmi:id="_qU-LoKWaEemQR_S2mizNZQ" name="bernard">
</UML:Class> <packagedElement xmi:type="uml:Package" xmi:id="_qU-LoaWaEemQR_S2mizNZQ" name="fonctions">
<UML:Class isAbstract="false" xmi.id="w7Nib9sxggdr" visibility="public" name="Cartographe" namespace="Logical View" isSpecification="false" isLeaf="false" isRoot="false"> <packagedElement xmi:type="uml:Class" xmi:id="_qVlPoKWaEemQR_S2mizNZQ" name="FonctionConstante" visibility="public">
<UML:Classifier.feature> <elementImport xmi:id="_qYdkgKWaEemQR_S2mizNZQ" importedElement="_qWP-AKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Attribute xmi.id="kSzXunbhd3Ya" visibility="private" name="loadedBoiboites" isSpecification="false" type="ig5YqsMecnIg"/> <elementImport xmi:id="_qYeLkKWaEemQR_S2mizNZQ" importedElement="_qWt4EKWaEemQR_S2mizNZQ" visibility="private"/>
</UML:Classifier.feature> <elementImport xmi:id="_qYeyoKWaEemQR_S2mizNZQ" importedElement="_qWoYgKWaEemQR_S2mizNZQ" visibility="private"/>
</UML:Class> <elementImport xmi:id="_qYeyoaWaEemQR_S2mizNZQ" importedElement="_qWwUUKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Class isAbstract="false" xmi.id="RhSkwt4kIgB1" visibility="public" name="Fonction" namespace="Logical View" isSpecification="false" isLeaf="false" isRoot="false"> <elementImport xmi:id="_qYeyoqWaEemQR_S2mizNZQ" importedElement="_qWgcsKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Classifier.feature> <ownedAttribute xmi:id="_qYojoKWaEemQR_S2mizNZQ" name="valeur" type="_qWgcsKWaEemQR_S2mizNZQ" association="_qrcx8KWaEemQR_S2mizNZQ"/>
<UML:Attribute xmi.id="cOk3sYynu6IE" visibility="private" name="entrées" isSpecification="false" type="9KMTfRqVDZ7q"/> <interfaceRealization xmi:id="_qYbvUKWaEemQR_S2mizNZQ" name="com.bernard.bernard.reflet.FonctionSimple" client="_qVlPoKWaEemQR_S2mizNZQ" supplier="_qWP-AKWaEemQR_S2mizNZQ" contract="_qWP-AKWaEemQR_S2mizNZQ"/>
<UML:Attribute xmi.id="5KeuJgE8P2Wz" visibility="private" name="sortie" isSpecification="false" type="4yDjGGyh2vC9"/> <ownedOperation xmi:id="_qZYxkKWaEemQR_S2mizNZQ" name="FonctionConstante" visibility="public">
</UML:Classifier.feature> <ownedParameter xmi:id="_qZYxkaWaEemQR_S2mizNZQ" name="valeur" type="_qWgcsKWaEemQR_S2mizNZQ"/>
</UML:Class> </ownedOperation>
<UML:Class isAbstract="false" xmi.id="AgtL6xMPV1Dc" visibility="public" name="Parameter" namespace="Logical View" isSpecification="false" isLeaf="false" isRoot="false"> <ownedOperation xmi:id="_qaMC0KWaEemQR_S2mizNZQ" name="execute" visibility="public">
<UML:Classifier.feature> <ownedParameter xmi:id="_qaMp4KWaEemQR_S2mizNZQ" name="args" type="_qWt4EKWaEemQR_S2mizNZQ"/>
<UML:Attribute xmi.id="HjtK4ZfwVvJr" visibility="private" name="type" isSpecification="false" type="4yDjGGyh2vC9"/> <ownedParameter xmi:id="_qaMp4aWaEemQR_S2mizNZQ" type="_qWwUUKWaEemQR_S2mizNZQ" direction="return"/>
</UML:Classifier.feature> </ownedOperation>
</UML:Class> </packagedElement>
<UML:Interface isAbstract="true" xmi.id="grTJrYHO7xN5" visibility="public" name="Taggable" namespace="Logical View" isSpecification="false" stereotype="interface" isLeaf="false" isRoot="false"> <packagedElement xmi:type="uml:Class" xmi:id="_qVtLcKWaEemQR_S2mizNZQ" name="FonctionAffichage" visibility="public">
<UML:Classifier.feature> <elementImport xmi:id="_qafk0aWaEemQR_S2mizNZQ" importedElement="_qWP-AKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Operation isAbstract="false" xmi.id="3F3580PSCFaT" visibility="public" name="getTags" isQuery="false" isSpecification="false" isLeaf="false" isRoot="false"/> <elementImport xmi:id="_qagL4KWaEemQR_S2mizNZQ" importedElement="_qWt4EKWaEemQR_S2mizNZQ" visibility="private"/>
</UML:Classifier.feature> <elementImport xmi:id="_qagL4aWaEemQR_S2mizNZQ" importedElement="_qWoYgKWaEemQR_S2mizNZQ" visibility="private"/>
</UML:Interface> <elementImport xmi:id="_qahaAKWaEemQR_S2mizNZQ" importedElement="_qWwUUKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Class isAbstract="false" xmi.id="VsXhEyRwcWs2" visibility="public" name="List" namespace="Logical View" isSpecification="false" isLeaf="false" isRoot="false"/> <interfaceRealization xmi:id="_qafk0KWaEemQR_S2mizNZQ" name="com.bernard.bernard.reflet.FonctionSimple" client="_qVtLcKWaEemQR_S2mizNZQ" supplier="_qWP-AKWaEemQR_S2mizNZQ" contract="_qWP-AKWaEemQR_S2mizNZQ"/>
<UML:Dependency xmi.id="ZDQj5uzq7O92" visibility="public" name="" namespace="Logical View" supplier="4yDjGGyh2vC9" client="w7Nib9sxggdr" isSpecification="false"/> <ownedOperation xmi:id="_qa3_UKWaEemQR_S2mizNZQ" name="execute" visibility="public">
<UML:Dependency xmi.id="3Ps0vkW2ELCi" visibility="public" name="" namespace="Logical View" supplier="AgtL6xMPV1Dc" client="RhSkwt4kIgB1" isSpecification="false"/> <ownedParameter xmi:id="_qa3_UaWaEemQR_S2mizNZQ" name="args" type="_qWt4EKWaEemQR_S2mizNZQ"/>
<UML:Association xmi.id="PvmOZvCDXVWF" visibility="public" name="" namespace="Logical View" isSpecification="false"> <ownedParameter xmi:id="_qa3_UqWaEemQR_S2mizNZQ" type="_qWwUUKWaEemQR_S2mizNZQ" direction="return"/>
<UML:Association.connection> </ownedOperation>
<UML:AssociationEnd xmi.id="YO5EM5dVxxwz" visibility="public" isNavigable="true" name="" isSpecification="false" changeability="changeable" type="4yDjGGyh2vC9" aggregation="aggregate"/> </packagedElement>
<UML:AssociationEnd xmi.id="BHm1OaX1kiQu" visibility="public" isNavigable="true" name="" isSpecification="false" changeability="changeable" type="AgtL6xMPV1Dc" aggregation="none"/> <packagedElement xmi:type="uml:Usage" xmi:id="_qrcK4KWaEemQR_S2mizNZQ" name="fonctions_reflet" client="_qU-LoaWaEemQR_S2mizNZQ" supplier="_qWHbIKWaEemQR_S2mizNZQ"/>
</UML:Association.connection> <packagedElement xmi:type="uml:Usage" xmi:id="_qrcK4aWaEemQR_S2mizNZQ" name="fonctions_runtime" client="_qU-LoaWaEemQR_S2mizNZQ" supplier="_qWaWEKWaEemQR_S2mizNZQ"/>
</UML:Association> <packagedElement xmi:type="uml:Association" xmi:id="_qrcx8KWaEemQR_S2mizNZQ" name="valeur_target" memberEnd="_qYojoKWaEemQR_S2mizNZQ _qrcx8aWaEemQR_S2mizNZQ">
<UML:Association xmi.id="AcE8F1mt5qxI" visibility="public" name="" namespace="Logical View" isSpecification="false"> <ownedEnd xmi:id="_qrcx8aWaEemQR_S2mizNZQ" name="target" type="_qVlPoKWaEemQR_S2mizNZQ" association="_qrcx8KWaEemQR_S2mizNZQ"/>
<UML:Association.connection> </packagedElement>
<UML:AssociationEnd xmi.id="chdSyiodtAuK" visibility="public" isNavigable="true" name="" isSpecification="false" changeability="changeable" type="AgtL6xMPV1Dc" aggregation="aggregate"/> </packagedElement>
<UML:AssociationEnd xmi.id="0dC0BDSrTyg7" visibility="public" isNavigable="true" name="" isSpecification="false" changeability="changeable" type="RhSkwt4kIgB1" aggregation="none"/> <packagedElement xmi:type="uml:Package" xmi:id="_qVtygKWaEemQR_S2mizNZQ" name="lecteur">
</UML:Association.connection> <packagedElement xmi:type="uml:Class" xmi:id="_qWG0EKWaEemQR_S2mizNZQ" name="Registry" visibility="public">
</UML:Association> <elementImport xmi:id="_qbiGoKWaEemQR_S2mizNZQ" importedElement="_qbhfkqWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Association xmi.id="Hq3VowuT6VDU" visibility="public" name="" namespace="Logical View" isSpecification="false"> <elementImport xmi:id="_qbitsaWaEemQR_S2mizNZQ" importedElement="_qbitsKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Association.connection> <elementImport xmi:id="_qbj70aWaEemQR_S2mizNZQ" importedElement="_qbj70KWaEemQR_S2mizNZQ" visibility="private"/>
<UML:AssociationEnd xmi.id="EsuE27ntsUf1" visibility="public" isNavigable="true" name="" isSpecification="false" changeability="changeable" type="4yDjGGyh2vC9" aggregation="composite"/> <elementImport xmi:id="_qblxAaWaEemQR_S2mizNZQ" importedElement="_qblxAKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:AssociationEnd xmi.id="oGCXfw0I0FVA" visibility="public" isNavigable="true" name="" isSpecification="false" changeability="changeable" type="w7Nib9sxggdr" aggregation="none"/> <elementImport xmi:id="_qbm_IKWaEemQR_S2mizNZQ" importedElement="_qbmYEaWaEemQR_S2mizNZQ" visibility="private"/>
</UML:Association.connection> <elementImport xmi:id="_qbnmMqWaEemQR_S2mizNZQ" importedElement="_qbnmMaWaEemQR_S2mizNZQ" visibility="private"/>
</UML:Association> <elementImport xmi:id="_qbo0UaWaEemQR_S2mizNZQ" importedElement="_qbo0UKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Abstraction xmi.id="slhYf1LHPiyk" visibility="public" name="" namespace="Logical View" supplier="grTJrYHO7xN5" client="AgtL6xMPV1Dc" isSpecification="false"/> <elementImport xmi:id="_qbpbYKWaEemQR_S2mizNZQ" importedElement="_qVtLcKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Abstraction xmi.id="lYOa1zj4TRbv" visibility="public" name="" namespace="Logical View" supplier="grTJrYHO7xN5" client="RhSkwt4kIgB1" isSpecification="false"/> <elementImport xmi:id="_qbpbYaWaEemQR_S2mizNZQ" importedElement="_qVlPoKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Abstraction xmi.id="qPvaly7BR97w" visibility="public" name="" namespace="Logical View" supplier="grTJrYHO7xN5" client="4yDjGGyh2vC9" isSpecification="false"/> <elementImport xmi:id="_qbpbYqWaEemQR_S2mizNZQ" importedElement="_qWRzMKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Class isAbstract="false" xmi.id="ORK52tXKgdwJ" visibility="public" name="Attribute" namespace="Logical View" isSpecification="false" isLeaf="false" isRoot="false"> <elementImport xmi:id="_qbqCcKWaEemQR_S2mizNZQ" importedElement="_qWM6sKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Classifier.feature> <elementImport xmi:id="_qbqCcaWaEemQR_S2mizNZQ" importedElement="_qWgcsKWaEemQR_S2mizNZQ" visibility="private"/>
<UML:Attribute xmi.id="S2Nfu4uunnlb" visibility="private" name="type" isSpecification="false" type="4yDjGGyh2vC9"/> <ownedAttribute xmi:id="_qb7vQKWaEemQR_S2mizNZQ" name="TYPES" visibility="public" isLeaf="true" isStatic="true" type="_qbj70KWaEemQR_S2mizNZQ">
</UML:Classifier.feature> <defaultValue xmi:type="uml:LiteralString" xmi:id="_qb9kcKWaEemQR_S2mizNZQ" name="" type="_qbj70KWaEemQR_S2mizNZQ" value="new HashMap&lt;>()"/>
</UML:Class> </ownedAttribute>
<UML:Abstraction xmi.id="F9GvbBPAorTQ" visibility="public" name="" namespace="Logical View" supplier="grTJrYHO7xN5" client="ORK52tXKgdwJ" isSpecification="false"/> <ownedAttribute xmi:id="_qcM1AKWaEemQR_S2mizNZQ" name="TYPES_LISIBLES" visibility="public" isLeaf="true" isStatic="true" type="_qbj70KWaEemQR_S2mizNZQ">
<UML:Dependency xmi.id="NIqr5YZmxaB4" visibility="public" name="" namespace="Logical View" supplier="ORK52tXKgdwJ" client="4yDjGGyh2vC9" isSpecification="false"/> <defaultValue xmi:type="uml:LiteralString" xmi:id="_qcNcEKWaEemQR_S2mizNZQ" name="" type="_qbj70KWaEemQR_S2mizNZQ" value="new HashMap&lt;>()"/>
<UML:Dependency xmi.id="qtngB7tEBoM3" visibility="public" name="" namespace="Logical View" supplier="grTJrYHO7xN5" client="w7Nib9sxggdr" isSpecification="false"/> </ownedAttribute>
<UML:Class isAbstract="false" xmi.id="BRdip0db3QbN" visibility="public" name="Truc" namespace="Logical View" isSpecification="false" isLeaf="false" isRoot="false"/> <ownedAttribute xmi:id="_qca3cKWaEemQR_S2mizNZQ" name="FONCTIONS" visibility="public" isLeaf="true" isStatic="true" type="_qbj70KWaEemQR_S2mizNZQ">
</UML:Namespace.ownedElement> <defaultValue xmi:type="uml:LiteralString" xmi:id="_qcbegKWaEemQR_S2mizNZQ" name="" type="_qbj70KWaEemQR_S2mizNZQ" value="new HashMap&lt;>()"/>
<XMI.extension xmi.extender="umbrello"> </ownedAttribute>
<diagrams> <ownedAttribute xmi:id="_qcmdoKWaEemQR_S2mizNZQ" name="isBooleanTrue" visibility="private" isLeaf="true" isStatic="true" type="_qbmYEaWaEemQR_S2mizNZQ">
<diagram backgroundcolor="#ffffff" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" isopen="1" linewidth="0" showatts="1" textcolor="#000000" usefillcolor="1" canvaswidth="948" fillcolor="#ffff00" showpackage="1" canvasheight="584" documentation="" type="1" showpubliconly="0" showattsig="1" showstereotype="1" zoom="100" showscope="1" showopsig="1" griddotcolor="#d3d3d3" linecolor="#ff0000" xmi.id="IGqLDh48P3YJ" localid="-1" snapgrid="0" showgrid="0" snapy="25" name="class diagram" showattribassocs="1" snapx="25" showops="1" snapcsgrid="0"> <defaultValue xmi:type="uml:LiteralString" xmi:id="_qcnEsKWaEemQR_S2mizNZQ" name="" type="_qbmYEaWaEemQR_S2mizNZQ" value="Pattern.compile(&quot;[Tt]rue|[Vv]rai|OK|1&quot;)"/>
<widgets> </ownedAttribute>
<classwidget x="-336" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="#000000" showattsigs="601" usefillcolor="1" showoperations="1" fillcolor="#ffff00" showpackage="1" isinstance="0" height="40" showpubliconly="0" showattributes="1" usesdiagramfillcolor="0" showstereotype="1" usesdiagramusefillcolor="0" y="-159" showscope="1" showopsigs="601" width="598" linecolor="#ff0000" xmi.id="4yDjGGyh2vC9" localid="gZclA4xmx9z7"/> <ownedOperation xmi:id="_qeLK8KWaEemQR_S2mizNZQ" name="type" visibility="private" isLeaf="true" isStatic="true">
<classwidget x="-419" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="#000000" showattsigs="601" usefillcolor="1" showoperations="1" fillcolor="#ffff00" showpackage="1" isinstance="0" height="35" showpubliconly="0" showattributes="1" usesdiagramfillcolor="0" showstereotype="1" usesdiagramusefillcolor="0" y="-435" showscope="1" showopsigs="601" width="223" linecolor="#ff0000" xmi.id="w7Nib9sxggdr" localid="gp3gZmJyJUDx"/> <ownedParameter xmi:id="_qeLK8aWaEemQR_S2mizNZQ" name="s">
<classwidget x="129" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="#000000" showattsigs="601" usefillcolor="1" showoperations="1" fillcolor="#ffff00" showpackage="1" isinstance="0" height="49" showpubliconly="0" showattributes="1" usesdiagramfillcolor="0" showstereotype="1" usesdiagramusefillcolor="0" y="-388" showscope="1" showopsigs="601" width="186" linecolor="#ff0000" xmi.id="RhSkwt4kIgB1" localid="sOqrSfiQ575x"/> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<classwidget x="-240" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="#000000" showattsigs="601" usefillcolor="1" showoperations="1" fillcolor="#ffff00" showpackage="1" isinstance="0" height="35" showpubliconly="0" showattributes="1" usesdiagramfillcolor="0" showstereotype="1" usesdiagramusefillcolor="0" y="-287" showscope="1" showopsigs="601" width="108" linecolor="#ff0000" xmi.id="AgtL6xMPV1Dc" localid="OzxqBTGIW5z5"/> </ownedParameter>
<interfacewidget x="-154.5" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="#000000" drawascircle="0" showattsigs="601" usefillcolor="1" showoperations="1" fillcolor="#ffff00" showpackage="1" isinstance="0" height="56" showpubliconly="0" showattributes="0" usesdiagramfillcolor="0" showstereotype="1" usesdiagramusefillcolor="0" y="-438.5" showscope="1" showopsigs="601" width="171" linecolor="#ff0000" xmi.id="grTJrYHO7xN5" localid="6NjA5qcGOKpB"/> <ownedParameter xmi:id="_qeLK8qWaEemQR_S2mizNZQ" name="f" type="_qWRzMKWaEemQR_S2mizNZQ"/>
<classwidget x="-68" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="#000000" showattsigs="601" usefillcolor="1" showoperations="1" fillcolor="#ffff00" showpackage="1" isinstance="0" height="35" showpubliconly="0" showattributes="1" usesdiagramfillcolor="0" showstereotype="1" usesdiagramusefillcolor="0" y="-334" showscope="1" showopsigs="601" width="96" linecolor="#ff0000" xmi.id="ORK52tXKgdwJ" localid="INzMZUt5jJid"/> </ownedOperation>
<classwidget x="113" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="#000000" showattsigs="601" usefillcolor="1" showoperations="1" fillcolor="#ffff00" showpackage="1" isinstance="0" height="28" showpubliconly="0" showattributes="1" usesdiagramfillcolor="0" showstereotype="1" usesdiagramusefillcolor="0" y="-493" showscope="1" showopsigs="601" width="40" linecolor="#ff0000" xmi.id="BRdip0db3QbN" localid="M1GPW0iSNxdN"/> <ownedOperation xmi:id="_qfeLcKWaEemQR_S2mizNZQ" name="typeLisible" visibility="private" isLeaf="true" isStatic="true">
</widgets> <ownedParameter xmi:id="_qfeLcaWaEemQR_S2mizNZQ" name="s">
<messages/> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<associations> </ownedParameter>
<assocwidget linewidth="0" seqnum="" xmi.id="Hq3VowuT6VDU" textcolor="none" usefillcolor="1" widgetbid="w7Nib9sxggdr" totalcounta="2" linecolor="#ff0000" usesdiagramfillcolor="0" widgetaid="4yDjGGyh2vC9" usesdiagramusefillcolor="224" indexa="1" indexb="1" type="510" font="Sans,9,-1,5,50,0,0,0,0,0" fillcolor="#ffff00" totalcountb="2"> <ownedParameter xmi:id="_qfeLcqWaEemQR_S2mizNZQ" name="f" type="_qblxAKWaEemQR_S2mizNZQ"/>
<linepath layout="Polyline"> </ownedOperation>
<startpoint startx="-267" starty="-159"/> <ownedOperation xmi:id="_qgkXoKWaEemQR_S2mizNZQ" name="fonction" visibility="private" isLeaf="true" isStatic="true">
<endpoint endy="-400" endx="-267"/> <ownedParameter xmi:id="_qgkXoaWaEemQR_S2mizNZQ" name="s">
</linepath> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
</assocwidget> </ownedParameter>
<assocwidget font="Sans,9,-1,5,50,0,0,0,0,0" changeabilityA="900" linewidth="0" textcolor="#000000" usefillcolor="1" visibilityA="1" fillcolor="#ffff00" type="501" usesdiagramfillcolor="0" indexb="0" usesdiagramusefillcolor="0" seqnum="" changeabilityB="900" widgetbid="4yDjGGyh2vC9" widgetaid="4yDjGGyh2vC9" linecolor="#ff0000" xmi.id="y1aQUc3CKHKW" indexa="0" totalcountb="0" totalcounta="0" visibilityB="1"> <ownedParameter xmi:id="_qgkXoqWaEemQR_S2mizNZQ" name="f" type="_qWM6sKWaEemQR_S2mizNZQ"/>
<linepath layout="Polyline"> </ownedOperation>
<startpoint startx="-186.5" starty="-119"/> <ownedOperation xmi:id="_qhYP8KWaEemQR_S2mizNZQ" name="type" visibility="public" isLeaf="true" isStatic="true">
<endpoint endy="-119" endx="112.5"/> <ownedParameter xmi:id="_qhYP8aWaEemQR_S2mizNZQ" name="s">
<point y="-69" x="-186.5"/> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<point y="-69" x="112.5"/> </ownedParameter>
</linepath> <ownedParameter xmi:id="_qhYP8qWaEemQR_S2mizNZQ" type="_qWRzMKWaEemQR_S2mizNZQ" direction="return"/>
<floatingtext x="-25.75" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="none" usefillcolor="1" fillcolor="none" isinstance="0" height="18" pretext="-" usesdiagramfillcolor="1" showstereotype="1" usesdiagramusefillcolor="1" y="-117" role="710" width="65" text="attributes" linecolor="#ff0000" xmi.id="X9syVFCVUPW6" localid="ZMZxzGUJABY9" posttext=""/> </ownedOperation>
</assocwidget> <ownedOperation xmi:id="_qiLhMKWaEemQR_S2mizNZQ" name="typeLisible" visibility="public" isLeaf="true" isStatic="true">
<assocwidget linewidth="0" seqnum="" xmi.id="slhYf1LHPiyk" textcolor="none" usefillcolor="1" widgetbid="grTJrYHO7xN5" totalcounta="2" linecolor="#ff0000" usesdiagramfillcolor="0" widgetaid="AgtL6xMPV1Dc" usesdiagramusefillcolor="32" indexa="1" indexb="1" type="511" font="Sans,9,-1,5,50,0,0,0,0,0" fillcolor="#ffff00" totalcountb="2"> <ownedParameter xmi:id="_qiLhMaWaEemQR_S2mizNZQ" name="s">
<linepath layout="Polyline"> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<startpoint startx="-132" starty="-287"/> </ownedParameter>
<endpoint endy="-382.5" endx="-132"/> <ownedParameter xmi:id="_qiLhMqWaEemQR_S2mizNZQ" type="_qblxAKWaEemQR_S2mizNZQ" direction="return"/>
</linepath> </ownedOperation>
</assocwidget> <ownedOperation xmi:id="_qjSUcKWaEemQR_S2mizNZQ" name="fonction" visibility="public" isLeaf="true" isStatic="true">
<assocwidget font="Sans,9,-1,5,50,0,0,0,0,0" changeabilityA="900" linewidth="0" textcolor="#000000" usefillcolor="1" visibilityA="1" fillcolor="#ffff00" type="501" usesdiagramfillcolor="0" indexb="1" usesdiagramusefillcolor="0" seqnum="" changeabilityB="900" widgetbid="4yDjGGyh2vC9" widgetaid="AgtL6xMPV1Dc" linecolor="#ff0000" xmi.id="HjtK4ZfwVvJr" indexa="1" totalcountb="2" totalcounta="2" visibilityB="1"> <ownedParameter xmi:id="_qjSUcaWaEemQR_S2mizNZQ" name="s">
<linepath layout="Polyline"> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<startpoint startx="-173" starty="-252"/> </ownedParameter>
<endpoint endy="-159" endx="-173"/> <ownedParameter xmi:id="_qjSUcqWaEemQR_S2mizNZQ" type="_qWM6sKWaEemQR_S2mizNZQ" direction="return"/>
</linepath> </ownedOperation>
</assocwidget> <ownedOperation xmi:id="_qkOIkKWaEemQR_S2mizNZQ" name="toByteArray" visibility="private" isLeaf="true" isStatic="true">
<assocwidget linewidth="0" seqnum="" xmi.id="qPvaly7BR97w" textcolor="none" usefillcolor="1" widgetbid="grTJrYHO7xN5" totalcounta="2" linecolor="#ff0000" usesdiagramfillcolor="0" widgetaid="4yDjGGyh2vC9" usesdiagramusefillcolor="0" indexa="1" indexb="1" type="511" font="Sans,9,-1,5,50,0,0,0,0,0" fillcolor="#ffff00" totalcountb="2"> <ownedParameter xmi:id="_qkOIkaWaEemQR_S2mizNZQ" name="list" type="_qbitsKWaEemQR_S2mizNZQ"/>
<linepath layout="Polyline"> <ownedParameter xmi:id="_qkOIkqWaEemQR_S2mizNZQ" direction="return">
<startpoint startx="-79.5" starty="-159"/> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#byte"/>
<endpoint endy="-382.5" endx="-79.5"/> <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qkOIk6WaEemQR_S2mizNZQ" value="*"/>
</linepath> </ownedParameter>
</assocwidget> </ownedOperation>
<assocwidget linewidth="0" seqnum="" xmi.id="F9GvbBPAorTQ" textcolor="none" usefillcolor="1" widgetbid="grTJrYHO7xN5" totalcounta="2" linecolor="#ff0000" usesdiagramfillcolor="0" widgetaid="ORK52tXKgdwJ" usesdiagramusefillcolor="240" indexa="1" indexb="1" type="511" font="Sans,9,-1,5,50,0,0,0,0,0" fillcolor="#ffff00" totalcountb="2"> </packagedElement>
<linepath layout="Polyline"> <packagedElement xmi:type="uml:Usage" xmi:id="_qrdZAKWaEemQR_S2mizNZQ" name="lecteur_util" client="_qVtygKWaEemQR_S2mizNZQ" supplier="_qbhfkaWaEemQR_S2mizNZQ"/>
<startpoint startx="-39" starty="-334"/> <packagedElement xmi:type="uml:Usage" xmi:id="_qrdZAaWaEemQR_S2mizNZQ" name="lecteur_function" client="_qVtygKWaEemQR_S2mizNZQ" supplier="_qblJ8KWaEemQR_S2mizNZQ"/>
<endpoint endy="-382.5" endx="-39"/> <packagedElement xmi:type="uml:Usage" xmi:id="_qrdZAqWaEemQR_S2mizNZQ" name="lecteur_regex" client="_qVtygKWaEemQR_S2mizNZQ" supplier="_qbmYEKWaEemQR_S2mizNZQ"/>
</linepath> <packagedElement xmi:type="uml:Usage" xmi:id="_qrdZA6WaEemQR_S2mizNZQ" name="lecteur_stream" client="_qVtygKWaEemQR_S2mizNZQ" supplier="_qbnmMKWaEemQR_S2mizNZQ"/>
</assocwidget> <packagedElement xmi:type="uml:Usage" xmi:id="_qreAEKWaEemQR_S2mizNZQ" name="lecteur_fonctions" client="_qVtygKWaEemQR_S2mizNZQ" supplier="_qU-LoaWaEemQR_S2mizNZQ"/>
<assocwidget font="Sans,9,-1,5,50,0,0,0,0,0" changeabilityA="900" linewidth="0" textcolor="#000000" usefillcolor="1" visibilityA="1" fillcolor="#ffff00" type="501" usesdiagramfillcolor="0" indexb="1" usesdiagramusefillcolor="0" seqnum="" changeabilityB="900" widgetbid="4yDjGGyh2vC9" widgetaid="RhSkwt4kIgB1" linecolor="#ff0000" xmi.id="5KeuJgE8P2Wz" indexa="1" totalcountb="2" totalcounta="2" visibilityB="1"> <packagedElement xmi:type="uml:Usage" xmi:id="_qreAEaWaEemQR_S2mizNZQ" name="lecteur_reflet" client="_qVtygKWaEemQR_S2mizNZQ" supplier="_qWHbIKWaEemQR_S2mizNZQ"/>
<linepath layout="Polyline"> <packagedElement xmi:type="uml:Usage" xmi:id="_qreAEqWaEemQR_S2mizNZQ" name="lecteur_runtime" client="_qVtygKWaEemQR_S2mizNZQ" supplier="_qWaWEKWaEemQR_S2mizNZQ"/>
<startpoint startx="129" starty="-339"/> </packagedElement>
<endpoint endy="-159" endx="129"/> <packagedElement xmi:type="uml:Package" xmi:id="_qWHbIKWaEemQR_S2mizNZQ" name="reflet">
</linepath> <packagedElement xmi:type="uml:Interface" xmi:id="_qWM6sKWaEemQR_S2mizNZQ" name="Fonction" visibility="public">
<floatingtext x="83" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="none" usefillcolor="1" fillcolor="none" isinstance="0" height="18" pretext="-" usesdiagramfillcolor="1" showstereotype="1" usesdiagramusefillcolor="1" y="-179" role="710" width="43" text="sortie" linecolor="#ff0000" xmi.id="jSVFQqmPJ1H9" localid="NLtdIYt8U3mw" posttext=""/> <ownedOperation xmi:id="_qkspsKWaEemQR_S2mizNZQ" name="execute" visibility="public">
</assocwidget> <ownedParameter xmi:id="_qkspsaWaEemQR_S2mizNZQ" name="args" type="_qWt4EKWaEemQR_S2mizNZQ"/>
<assocwidget font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" changeabilityA="900" linewidth="0" textcolor="#000000" usefillcolor="1" visibilityA="1" fillcolor="#ffff00" type="501" usesdiagramfillcolor="0" indexb="1" usesdiagramusefillcolor="0" seqnum="" changeabilityB="900" widgetbid="4yDjGGyh2vC9" widgetaid="ORK52tXKgdwJ" linecolor="#ff0000" xmi.id="S2Nfu4uunnlb" indexa="1" totalcountb="2" totalcounta="2" visibilityB="1"> <ownedParameter xmi:id="_qkspsqWaEemQR_S2mizNZQ" type="_qWwUUKWaEemQR_S2mizNZQ" direction="return"/>
<linepath layout="Polyline"> </ownedOperation>
<startpoint startx="-39" starty="-299"/> </packagedElement>
<endpoint endy="-159" endx="-39"/> <packagedElement xmi:type="uml:Interface" xmi:id="_qWP-AKWaEemQR_S2mizNZQ" name="FonctionSimple" visibility="public">
</linepath> <generalization xmi:id="_qkxiMKWaEemQR_S2mizNZQ" general="_qWM6sKWaEemQR_S2mizNZQ"/>
<floatingtext x="-76" font="Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="none" usefillcolor="1" fillcolor="none" isinstance="0" height="18" pretext="-" usesdiagramfillcolor="1" showstereotype="1" usesdiagramusefillcolor="1" y="-179" role="710" width="39" text="type" linecolor="#ff0000" xmi.id="N3htsQOgiY4F" localid="D5zc0PTB4hOv" posttext=""/> </packagedElement>
</assocwidget> <packagedElement xmi:type="uml:Enumeration" xmi:id="_qWRzMKWaEemQR_S2mizNZQ" name="Boiboite" visibility="public"/>
<assocwidget linewidth="0" seqnum="" xmi.id="qtngB7tEBoM3" textcolor="none" usefillcolor="1" widgetbid="grTJrYHO7xN5" totalcounta="2" linecolor="#ff0000" usesdiagramfillcolor="0" widgetaid="w7Nib9sxggdr" usesdiagramusefillcolor="1" indexa="1" indexb="1" type="502" font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" fillcolor="#ffff00" totalcountb="2"> <packagedElement xmi:type="uml:Class" xmi:id="_qWZvAKWaEemQR_S2mizNZQ" name="FonctionComplexe" visibility="public">
<linepath layout="Polyline"> <elementImport xmi:id="_qk9IYKWaEemQR_S2mizNZQ" importedElement="_qbitsKWaEemQR_S2mizNZQ" visibility="private"/>
<startpoint startx="-196" starty="-420"/> <elementImport xmi:id="_qk9vcKWaEemQR_S2mizNZQ" importedElement="_qbnmMaWaEemQR_S2mizNZQ" visibility="private"/>
<endpoint endy="-420" endx="-154.5"/> <elementImport xmi:id="_qk9vcaWaEemQR_S2mizNZQ" importedElement="_qWt4EKWaEemQR_S2mizNZQ" visibility="private"/>
</linepath> <elementImport xmi:id="_qk9vcqWaEemQR_S2mizNZQ" importedElement="_qWwUUKWaEemQR_S2mizNZQ" visibility="private"/>
</assocwidget> <ownedAttribute xmi:id="_qlHgcKWaEemQR_S2mizNZQ" name="composants" type="_qWM6sKWaEemQR_S2mizNZQ" isOrdered="true" isUnique="false" association="_qrenI6WaEemQR_S2mizNZQ">
<assocwidget font="DejaVu Sans,9,-1,5,50,0,0,0,0,0" changeabilityA="900" linewidth="0" textcolor="none" usefillcolor="1" visibilityA="1" fillcolor="none" type="510" usesdiagramfillcolor="63" indexb="1" usesdiagramusefillcolor="0" seqnum="" changeabilityB="900" widgetbid="4yDjGGyh2vC9" widgetaid="AgtL6xMPV1Dc" linecolor="#ff0000" xmi.id="HjtK4ZfwVvJr" indexa="1" totalcountb="2" totalcounta="2" visibilityB="1"> <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qlHgcaWaEemQR_S2mizNZQ" value="*"/>
<linepath layout="Polyline"> </ownedAttribute>
<startpoint startx="-240" starty="-252"/> <ownedAttribute xmi:id="_qlRRcKWaEemQR_S2mizNZQ" name="argsPos" type="_qbitsKWaEemQR_S2mizNZQ" isOrdered="true" isUnique="false">
<endpoint endy="-159" endx="-240"/> <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qlR4gKWaEemQR_S2mizNZQ" value="*"/>
</linepath> </ownedAttribute>
<floatingtext x="-277" font="Sans,9,-1,5,50,0,0,0,0,0" linewidth="0" textcolor="none" usefillcolor="1" fillcolor="none" isinstance="0" height="18" pretext="-" usesdiagramfillcolor="1" showstereotype="1" usesdiagramusefillcolor="1" y="-179" role="710" width="39" text="type" linecolor="#ff0000" xmi.id="dy2udypUgxdJ" localid="vIbzQ1L1vNKm" posttext=""/> <interfaceRealization xmi:id="_qk8hUKWaEemQR_S2mizNZQ" name="com.bernard.bernard.reflet.Fonction" client="_qWZvAKWaEemQR_S2mizNZQ" supplier="_qWM6sKWaEemQR_S2mizNZQ" contract="_qWM6sKWaEemQR_S2mizNZQ"/>
</assocwidget> <ownedOperation xmi:id="_qliXMKWaEemQR_S2mizNZQ" name="verify" visibility="public">
</associations> <ownedParameter xmi:id="_qliXMaWaEemQR_S2mizNZQ" direction="return">
</diagram> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#boolean"/>
</diagrams> </ownedParameter>
</XMI.extension> </ownedOperation>
</UML:Model> <ownedOperation xmi:id="_qmFJwKWaEemQR_S2mizNZQ" name="execute" visibility="public">
<UML:Model isAbstract="false" xmi.id="Use Case View" visibility="public" name="Use Case View" namespace="m1" isSpecification="false" isLeaf="false" isRoot="false"> <ownedParameter xmi:id="_qmFJwaWaEemQR_S2mizNZQ" name="args" type="_qWt4EKWaEemQR_S2mizNZQ"/>
<UML:Namespace.ownedElement/> <ownedParameter xmi:id="_qmFJwqWaEemQR_S2mizNZQ" type="_qWwUUKWaEemQR_S2mizNZQ" direction="return"/>
</UML:Model> </ownedOperation>
<UML:Model isAbstract="false" xmi.id="Component View" visibility="public" name="Component View" namespace="m1" isSpecification="false" isLeaf="false" isRoot="false"> </packagedElement>
<UML:Namespace.ownedElement/> <packagedElement xmi:type="uml:Usage" xmi:id="_qrenIKWaEemQR_S2mizNZQ" name="reflet_runtime" client="_qWHbIKWaEemQR_S2mizNZQ" supplier="_qWaWEKWaEemQR_S2mizNZQ"/>
</UML:Model> <packagedElement xmi:type="uml:Usage" xmi:id="_qrenIaWaEemQR_S2mizNZQ" name="reflet_util" client="_qWHbIKWaEemQR_S2mizNZQ" supplier="_qbhfkaWaEemQR_S2mizNZQ"/>
<UML:Model isAbstract="false" xmi.id="Deployment View" visibility="public" name="Deployment View" namespace="m1" isSpecification="false" isLeaf="false" isRoot="false"> <packagedElement xmi:type="uml:Usage" xmi:id="_qrenIqWaEemQR_S2mizNZQ" name="reflet_stream" client="_qWHbIKWaEemQR_S2mizNZQ" supplier="_qbnmMKWaEemQR_S2mizNZQ"/>
<UML:Namespace.ownedElement/> <packagedElement xmi:type="uml:Association" xmi:id="_qrenI6WaEemQR_S2mizNZQ" name="composants_target" memberEnd="_qlHgcKWaEemQR_S2mizNZQ _qrenJKWaEemQR_S2mizNZQ">
</UML:Model> <ownedEnd xmi:id="_qrenJKWaEemQR_S2mizNZQ" name="target" type="_qWZvAKWaEemQR_S2mizNZQ" association="_qrenI6WaEemQR_S2mizNZQ"/>
<UML:Model isAbstract="false" xmi.id="Entity Relationship Model" visibility="public" name="Entity Relationship Model" namespace="m1" isSpecification="false" isLeaf="false" isRoot="false"> </packagedElement>
<UML:Namespace.ownedElement/> </packagedElement>
</UML:Model> <packagedElement xmi:type="uml:Package" xmi:id="_qWaWEKWaEemQR_S2mizNZQ" name="runtime">
</UML:Namespace.ownedElement> <packagedElement xmi:type="uml:Class" xmi:id="_qWgcsKWaEemQR_S2mizNZQ" name="Truc" visibility="public">
</UML:Model> <elementImport xmi:id="_qmTzQaWaEemQR_S2mizNZQ" importedElement="_qmTzQKWaEemQR_S2mizNZQ" visibility="private"/>
</XMI.content> <elementImport xmi:id="_qmUaUKWaEemQR_S2mizNZQ" importedElement="_qbnmMaWaEemQR_S2mizNZQ" visibility="private"/>
<XMI.extensions xmi.extender="umbrello"> <elementImport xmi:id="_qmUaUaWaEemQR_S2mizNZQ" importedElement="_qWRzMKWaEemQR_S2mizNZQ" visibility="private"/>
<docsettings viewid="IGqLDh48P3YJ" documentation="" uniqueid="dy2udypUgxdJ"/> <ownedAttribute xmi:id="_qmag8KWaEemQR_S2mizNZQ" name="type" type="_qWRzMKWaEemQR_S2mizNZQ"/>
<listview> <ownedAttribute xmi:id="_qmbvEKWaEemQR_S2mizNZQ" name="dataRef">
<listitem open="1" id="Views" type="800"> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#long"/>
<listitem open="1" id="Component View" type="821"/> <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qmcWIKWaEemQR_S2mizNZQ" value="*"/>
<listitem open="1" id="Deployment View" type="827"/> </ownedAttribute>
<listitem open="1" id="Entity Relationship Model" type="836"/> <ownedOperation xmi:id="_qm9TgKWaEemQR_S2mizNZQ" name="Truc" visibility="public">
<listitem open="1" id="Logical View" type="801"> <ownedParameter xmi:id="_qm9TgaWaEemQR_S2mizNZQ" name="type" type="_qWRzMKWaEemQR_S2mizNZQ"/>
<listitem open="1" id="ORK52tXKgdwJ" type="813"> <ownedParameter xmi:id="_qm9TgqWaEemQR_S2mizNZQ" name="dataRef">
<listitem open="0" id="S2Nfu4uunnlb" type="814"/> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#long"/>
</listitem> <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qm9Tg6WaEemQR_S2mizNZQ" value="*"/>
<listitem open="1" id="4yDjGGyh2vC9" type="813"> </ownedParameter>
<listitem open="0" id="y1aQUc3CKHKW" type="814"/> </ownedOperation>
</listitem> <ownedOperation xmi:id="_qneQ4KWaEemQR_S2mizNZQ" name="fromBytes" visibility="public" isStatic="true">
<listitem open="1" id="w7Nib9sxggdr" type="813"> <ownedParameter xmi:id="_qneQ4aWaEemQR_S2mizNZQ" name="type" type="_qWRzMKWaEemQR_S2mizNZQ"/>
<listitem open="0" id="kSzXunbhd3Ya" type="814"/> <ownedParameter xmi:id="_qneQ4qWaEemQR_S2mizNZQ" name="data">
</listitem> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#byte"/>
<listitem open="0" id="IGqLDh48P3YJ" type="807" label="class diagram"/> <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qneQ46WaEemQR_S2mizNZQ" value="*"/>
<listitem open="1" id="Datatypes" type="830"> </ownedParameter>
<listitem open="1" id="PhqQwWqEeUnA" type="829"/> <ownedParameter xmi:id="_qneQ5KWaEemQR_S2mizNZQ" type="_qWgcsKWaEemQR_S2mizNZQ" direction="return"/>
<listitem open="1" id="afPCKmKoBpxu" type="829"/> </ownedOperation>
<listitem open="1" id="ZuGx8Rvl7QOf" type="829"/> <ownedOperation xmi:id="_qn0PIKWaEemQR_S2mizNZQ" name="getData" visibility="public">
<listitem open="1" id="OIjlQrKnbD1g" type="829"/> <ownedParameter xmi:id="_qn0PIaWaEemQR_S2mizNZQ" direction="return">
<listitem open="1" id="qh1wmVgxLqLR" type="829"/> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<listitem open="1" id="nOzLmRAQTc20" type="829"/> </ownedParameter>
<listitem open="1" id="ig5YqsMecnIg" type="829"/> </ownedOperation>
<listitem open="1" id="9KMTfRqVDZ7q" type="829"/> </packagedElement>
<listitem open="1" id="aJ2Biyroex2f" type="829"/> <packagedElement xmi:type="uml:Class" xmi:id="_qWkuIKWaEemQR_S2mizNZQ" name="GardeMemoire" visibility="public">
<listitem open="1" id="dkKgsUGTKgY5" type="829"/> <elementImport xmi:id="_qoBDcKWaEemQR_S2mizNZQ" importedElement="_qbhfkqWaEemQR_S2mizNZQ" visibility="private"/>
<listitem open="1" id="1VPgxwRYSjpc" type="829"/> <elementImport xmi:id="_qoBDcaWaEemQR_S2mizNZQ" importedElement="_qbj70KWaEemQR_S2mizNZQ" visibility="private"/>
<listitem open="1" id="GZPnDpZWQRGc" type="829"/> <ownedAttribute xmi:id="_qoEGwKWaEemQR_S2mizNZQ" name="memory" visibility="private" isStatic="true" type="_qbj70KWaEemQR_S2mizNZQ">
<listitem open="1" id="XmxQr2lVL4Xu" type="829"/> <defaultValue xmi:type="uml:LiteralString" xmi:id="_qoEGwaWaEemQR_S2mizNZQ" name="" type="_qbj70KWaEemQR_S2mizNZQ" value="new HashMap&lt;>()"/>
<listitem open="1" id="d5n1GXHPn3h7" type="829"/> </ownedAttribute>
<listitem open="1" id="jk41F8tMMCGz" type="829"/> <ownedOperation xmi:id="_qoOe0KWaEemQR_S2mizNZQ" name="get" visibility="public" isStatic="true">
<listitem open="1" id="Iz90Z7WAxl0D" type="829"/> <ownedParameter xmi:id="_qoOe0aWaEemQR_S2mizNZQ" name="index">
<listitem open="1" id="40XeAmt8YNOs" type="829"/> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#long"/>
<listitem open="1" id="tCG8ifF3V3v6" type="829"/> </ownedParameter>
<listitem open="1" id="XL1r84Rk4XdP" type="829"/> <ownedParameter xmi:id="_qoOe0qWaEemQR_S2mizNZQ" direction="return">
<listitem open="1" id="GVo00PoCYL6c" type="829"/> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#byte"/>
<listitem open="1" id="SmxOMTPylo3h" type="829"/> </ownedParameter>
</listitem> </ownedOperation>
<listitem open="1" id="RhSkwt4kIgB1" type="813"> <ownedOperation xmi:id="_qolEIKWaEemQR_S2mizNZQ" name="setByte" visibility="public" isStatic="true">
<listitem open="0" id="cOk3sYynu6IE" type="814"/> <ownedParameter xmi:id="_qolEIaWaEemQR_S2mizNZQ" name="index">
<listitem open="0" id="5KeuJgE8P2Wz" type="814"/> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#long"/>
</listitem> </ownedParameter>
<listitem open="1" id="VsXhEyRwcWs2" type="813"/> <ownedParameter xmi:id="_qolEIqWaEemQR_S2mizNZQ" name="value">
<listitem open="1" id="AgtL6xMPV1Dc" type="813"> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#byte"/>
<listitem open="0" id="HjtK4ZfwVvJr" type="814"/> </ownedParameter>
</listitem> </ownedOperation>
<listitem open="1" id="grTJrYHO7xN5" type="817"> <ownedOperation xmi:id="_qozGkKWaEemQR_S2mizNZQ" name="getMax" visibility="public" isStatic="true">
<listitem open="0" id="3F3580PSCFaT" type="815"/> <ownedParameter xmi:id="_qozGkaWaEemQR_S2mizNZQ" direction="return">
</listitem> <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#long"/>
<listitem open="1" id="BRdip0db3QbN" type="813"/> </ownedParameter>
</listitem> </ownedOperation>
<listitem open="1" id="Use Case View" type="802"/> </packagedElement>
</listitem> <packagedElement xmi:type="uml:Class" xmi:id="_qWoYgKWaEemQR_S2mizNZQ" name="GardeRef" visibility="public">
</listview> <elementImport xmi:id="_qo8QgKWaEemQR_S2mizNZQ" importedElement="_qbhfkqWaEemQR_S2mizNZQ" visibility="private"/>
<codegeneration> <elementImport xmi:id="_qo83kKWaEemQR_S2mizNZQ" importedElement="_qbj70KWaEemQR_S2mizNZQ" visibility="private"/>
<codegenerator language="C++"/> <ownedAttribute xmi:id="_qo_64KWaEemQR_S2mizNZQ" name="NEANT" visibility="private" isLeaf="true" isStatic="true" type="_qWgcsKWaEemQR_S2mizNZQ" association="_qrf1QKWaEemQR_S2mizNZQ">
</codegeneration> <defaultValue xmi:type="uml:LiteralString" xmi:id="_qpAh8KWaEemQR_S2mizNZQ" name="" type="_qWgcsKWaEemQR_S2mizNZQ" value="new Truc(null, new long[] {})"/>
</XMI.extensions> </ownedAttribute>
</XMI> <ownedAttribute xmi:id="_qpC-MKWaEemQR_S2mizNZQ" name="memoire" visibility="private" isStatic="true" type="_qbj70KWaEemQR_S2mizNZQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_qpDlQKWaEemQR_S2mizNZQ" name="" type="_qbj70KWaEemQR_S2mizNZQ" value="new HashMap&lt;>()"/>
</ownedAttribute>
<ownedAttribute xmi:id="_qpGokKWaEemQR_S2mizNZQ" name="refs" visibility="private" isStatic="true" type="_qbj70KWaEemQR_S2mizNZQ">
<defaultValue xmi:type="uml:LiteralString" xmi:id="_qpGokaWaEemQR_S2mizNZQ" name="" type="_qbj70KWaEemQR_S2mizNZQ" value="new HashMap&lt;>()"/>
</ownedAttribute>
<ownedOperation xmi:id="_qpXuUKWaEemQR_S2mizNZQ" name="get" visibility="public" isStatic="true">
<ownedParameter xmi:id="_qpXuUaWaEemQR_S2mizNZQ" name="r" type="_qWwUUKWaEemQR_S2mizNZQ"/>
<ownedParameter xmi:id="_qpXuUqWaEemQR_S2mizNZQ" type="_qWgcsKWaEemQR_S2mizNZQ" direction="return"/>
</ownedOperation>
<ownedOperation xmi:id="_qpxW8KWaEemQR_S2mizNZQ" name="register" visibility="public" isStatic="true">
<ownedParameter xmi:id="_qpxW8aWaEemQR_S2mizNZQ" name="truc" type="_qWgcsKWaEemQR_S2mizNZQ"/>
<ownedParameter xmi:id="_qpxW8qWaEemQR_S2mizNZQ" type="_qWwUUKWaEemQR_S2mizNZQ" direction="return"/>
</ownedOperation>
<ownedOperation xmi:id="_qqK_kKWaEemQR_S2mizNZQ" name="anotherRef" visibility="public" isStatic="true">
<ownedParameter xmi:id="_qqK_kaWaEemQR_S2mizNZQ" name="ref" type="_qWwUUKWaEemQR_S2mizNZQ"/>
<ownedParameter xmi:id="_qqK_kqWaEemQR_S2mizNZQ" type="_qWwUUKWaEemQR_S2mizNZQ" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_qWt4EKWaEemQR_S2mizNZQ" name="Arguments" visibility="public">
<elementImport xmi:id="_qqXM0KWaEemQR_S2mizNZQ" importedElement="_qmTzQKWaEemQR_S2mizNZQ" visibility="private"/>
<elementImport xmi:id="_qqXM0aWaEemQR_S2mizNZQ" importedElement="_qbitsKWaEemQR_S2mizNZQ" visibility="private"/>
<ownedAttribute xmi:id="_qqdTcKWaEemQR_S2mizNZQ" name="args" type="_qWwUUKWaEemQR_S2mizNZQ" isOrdered="true" isUnique="false" association="_qrf1QqWaEemQR_S2mizNZQ">
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qqd6gKWaEemQR_S2mizNZQ" value="*"/>
</ownedAttribute>
<ownedOperation xmi:id="_qqnEcKWaEemQR_S2mizNZQ" name="Arguments" visibility="public">
<ownedParameter xmi:id="_qqnEcaWaEemQR_S2mizNZQ" name="refs" type="_qWwUUKWaEemQR_S2mizNZQ">
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qqnEcqWaEemQR_S2mizNZQ" value="*"/>
</ownedParameter>
</ownedOperation>
<ownedOperation xmi:id="_qq1G4KWaEemQR_S2mizNZQ" name="Arguments" visibility="public">
<ownedParameter xmi:id="_qq1G4aWaEemQR_S2mizNZQ" name="args" type="_qbitsKWaEemQR_S2mizNZQ"/>
</ownedOperation>
<ownedOperation xmi:id="_qq_e8KWaEemQR_S2mizNZQ" name="get" visibility="public">
<ownedParameter xmi:id="_qq_e8aWaEemQR_S2mizNZQ" name="pos">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/JavaPrimitiveTypes.library.uml#int"/>
</ownedParameter>
<ownedParameter xmi:id="_qq_e8qWaEemQR_S2mizNZQ" type="_qWwUUKWaEemQR_S2mizNZQ" direction="return"/>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_qWwUUKWaEemQR_S2mizNZQ" name="Reference" visibility="public">
<elementImport xmi:id="_qrFlkKWaEemQR_S2mizNZQ" importedElement="_qrE-gKWaEemQR_S2mizNZQ" visibility="private"/>
<ownedAttribute xmi:id="_qrHawKWaEemQR_S2mizNZQ" name="id" type="_qrE-gKWaEemQR_S2mizNZQ"/>
<ownedOperation xmi:id="_qrJ3AKWaEemQR_S2mizNZQ" name="Reference" visibility="public"/>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_qrfOMKWaEemQR_S2mizNZQ" name="runtime_util" client="_qWaWEKWaEemQR_S2mizNZQ" supplier="_qbhfkaWaEemQR_S2mizNZQ"/>
<packagedElement xmi:type="uml:Usage" xmi:id="_qrfOMaWaEemQR_S2mizNZQ" name="runtime_stream" client="_qWaWEKWaEemQR_S2mizNZQ" supplier="_qbnmMKWaEemQR_S2mizNZQ"/>
<packagedElement xmi:type="uml:Usage" xmi:id="_qrfOMqWaEemQR_S2mizNZQ" name="runtime_reflet" client="_qWaWEKWaEemQR_S2mizNZQ" supplier="_qWHbIKWaEemQR_S2mizNZQ"/>
<packagedElement xmi:type="uml:Association" xmi:id="_qrf1QKWaEemQR_S2mizNZQ" name="NEANT_target" memberEnd="_qo_64KWaEemQR_S2mizNZQ _qrf1QaWaEemQR_S2mizNZQ">
<ownedEnd xmi:id="_qrf1QaWaEemQR_S2mizNZQ" name="target" type="_qWoYgKWaEemQR_S2mizNZQ" association="_qrf1QKWaEemQR_S2mizNZQ"/>
</packagedElement>
<packagedElement xmi:type="uml:Association" xmi:id="_qrf1QqWaEemQR_S2mizNZQ" name="args_target" memberEnd="_qqdTcKWaEemQR_S2mizNZQ _qrf1Q6WaEemQR_S2mizNZQ">
<ownedEnd xmi:id="_qrf1Q6WaEemQR_S2mizNZQ" name="target" type="_qWt4EKWaEemQR_S2mizNZQ" association="_qrf1QqWaEemQR_S2mizNZQ"/>
</packagedElement>
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_qWw7YKWaEemQR_S2mizNZQ" name="test">
<packagedElement xmi:type="uml:Class" xmi:id="_qWz-sKWaEemQR_S2mizNZQ" name="FTests" visibility="public">
<elementImport xmi:id="_qrPWkKWaEemQR_S2mizNZQ" importedElement="_qVtLcKWaEemQR_S2mizNZQ" visibility="private"/>
<elementImport xmi:id="_qrP9oKWaEemQR_S2mizNZQ" importedElement="_qWRzMKWaEemQR_S2mizNZQ" visibility="private"/>
<elementImport xmi:id="_qrP9oaWaEemQR_S2mizNZQ" importedElement="_qWM6sKWaEemQR_S2mizNZQ" visibility="private"/>
<elementImport xmi:id="_qrP9oqWaEemQR_S2mizNZQ" importedElement="_qWt4EKWaEemQR_S2mizNZQ" visibility="private"/>
<elementImport xmi:id="_qrP9o6WaEemQR_S2mizNZQ" importedElement="_qWkuIKWaEemQR_S2mizNZQ" visibility="private"/>
<elementImport xmi:id="_qrP9pKWaEemQR_S2mizNZQ" importedElement="_qWoYgKWaEemQR_S2mizNZQ" visibility="private"/>
<elementImport xmi:id="_qrQksKWaEemQR_S2mizNZQ" importedElement="_qWwUUKWaEemQR_S2mizNZQ" visibility="private"/>
<elementImport xmi:id="_qrQksaWaEemQR_S2mizNZQ" importedElement="_qWgcsKWaEemQR_S2mizNZQ" visibility="private"/>
<ownedOperation xmi:id="_qrXSYKWaEemQR_S2mizNZQ" name="main" visibility="public" isStatic="true">
<ownedParameter xmi:id="_qrXSYaWaEemQR_S2mizNZQ" name="a">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qrXSYqWaEemQR_S2mizNZQ" value="*"/>
</ownedParameter>
</ownedOperation>
</packagedElement>
<packagedElement xmi:type="uml:Usage" xmi:id="_qrgcUKWaEemQR_S2mizNZQ" name="test_fonctions" client="_qWw7YKWaEemQR_S2mizNZQ" supplier="_qU-LoaWaEemQR_S2mizNZQ"/>
<packagedElement xmi:type="uml:Usage" xmi:id="_qrgcUaWaEemQR_S2mizNZQ" name="test_reflet" client="_qWw7YKWaEemQR_S2mizNZQ" supplier="_qWHbIKWaEemQR_S2mizNZQ"/>
<packagedElement xmi:type="uml:Usage" xmi:id="_qrgcUqWaEemQR_S2mizNZQ" name="test_runtime" client="_qWw7YKWaEemQR_S2mizNZQ" supplier="_qWaWEKWaEemQR_S2mizNZQ"/>
</packagedElement>
</packagedElement>
</packagedElement>
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_qbhfkKWaEemQR_S2mizNZQ" name="java">
<packagedElement xmi:type="uml:Package" xmi:id="_qbhfkaWaEemQR_S2mizNZQ" name="util">
<packagedElement xmi:type="uml:Package" xmi:id="_qblJ8KWaEemQR_S2mizNZQ" name="function">
<packagedElement xmi:type="uml:DataType" xmi:id="_qblxAKWaEemQR_S2mizNZQ" name="Function"/>
</packagedElement>
<packagedElement xmi:type="uml:DataType" xmi:id="_qbhfkqWaEemQR_S2mizNZQ" name="HashMap"/>
<packagedElement xmi:type="uml:DataType" xmi:id="_qbitsKWaEemQR_S2mizNZQ" name="List"/>
<packagedElement xmi:type="uml:DataType" xmi:id="_qbj70KWaEemQR_S2mizNZQ" name="Map"/>
<packagedElement xmi:type="uml:Package" xmi:id="_qbmYEKWaEemQR_S2mizNZQ" name="regex">
<packagedElement xmi:type="uml:DataType" xmi:id="_qbmYEaWaEemQR_S2mizNZQ" name="Pattern"/>
</packagedElement>
<packagedElement xmi:type="uml:Package" xmi:id="_qbnmMKWaEemQR_S2mizNZQ" name="stream">
<packagedElement xmi:type="uml:DataType" xmi:id="_qbnmMaWaEemQR_S2mizNZQ" name="Collectors"/>
<packagedElement xmi:type="uml:DataType" xmi:id="_qbo0UKWaEemQR_S2mizNZQ" name="Stream"/>
</packagedElement>
<packagedElement xmi:type="uml:DataType" xmi:id="_qmTzQKWaEemQR_S2mizNZQ" name="Arrays"/>
<packagedElement xmi:type="uml:DataType" xmi:id="_qrE-gKWaEemQR_S2mizNZQ" name="UUID"/>
</packagedElement>
</packagedElement>
</uml:Model>

View File

@ -0,0 +1,20 @@
package com.bernard.bernard.fonctions;
import com.bernard.bernard.reflet.FonctionSimple;
import com.bernard.bernard.runtime.Arguments;
import com.bernard.bernard.runtime.GardeRef;
import com.bernard.bernard.runtime.Reference;
public class FonctionAffichage implements FonctionSimple {
@Override
public Reference execute(Arguments args) {
Reference toPrint = args.get(0);
System.out.println(GardeRef.get(toPrint).getData());
return null;
}
}

View File

@ -0,0 +1,26 @@
package com.bernard.bernard.fonctions;
import com.bernard.bernard.reflet.FonctionSimple;
import com.bernard.bernard.runtime.Arguments;
import com.bernard.bernard.runtime.GardeRef;
import com.bernard.bernard.runtime.Reference;
import com.bernard.bernard.runtime.Truc;
public class FonctionConstante implements FonctionSimple{
Truc valeur;
public FonctionConstante(Truc valeur) {
this.valeur = valeur;
}
@Override
public Reference execute(Arguments args) {
return GardeRef.register(valeur);
}
}

View File

@ -0,0 +1,63 @@
package com.bernard.bernard.lecteur;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.regex.Pattern;
import com.bernard.bernard.fonctions.FonctionAffichage;
import com.bernard.bernard.fonctions.FonctionConstante;
import com.bernard.bernard.reflet.Boiboite;
import com.bernard.bernard.reflet.Fonction;
import com.bernard.bernard.runtime.Truc;
public class Registry {
public static final Map<String,Boiboite> TYPES = new HashMap<>();
public static final Map<String,Function<String, byte[]>> TYPES_LISIBLES = new HashMap<>();
public static final Map<String,Fonction> FONCTIONS = new HashMap<>();
private static final void type(String s,Boiboite f) {TYPES.put(s, f);}
private static final void typeLisible(String s,Function<String, byte[]> f) {TYPES_LISIBLES.put(s, f);}
private static final void fonction(String s,Fonction f) {FONCTIONS.put(s, f);}
public static final Boiboite type(String s) {return TYPES.get(s);}
public static final Function<String, byte[]> typeLisible(String s) {return TYPES_LISIBLES.get(s);}
public static final Fonction fonction(String s) {return FONCTIONS.get(s);}
private static final Pattern isBooleanTrue = Pattern.compile("[Tt]rue|[Vv]rai|OK|1");
static {
type("Chaine",new Boiboite());
type("Entier",new Boiboite());
type("Booleen",new Boiboite());
type("Decimal",new Boiboite());
typeLisible("Booleen",s -> new byte[] {(byte) ((isBooleanTrue.matcher(s).matches())?1:0)});
typeLisible("Chaine", String::getBytes);
typeLisible("Entier",s->new BigInteger(s).toByteArray());
typeLisible("Decimal",s->{
BigDecimal v = new BigDecimal(s);
byte[] mantisse = v.unscaledValue().toByteArray();
byte[] data = new byte[4 + mantisse.length];
System.arraycopy(new byte[] {(byte) (0xFF & (v.scale()<<24)),(byte) (0xFF & (v.scale()<<16)),(byte) (0xFF & (v.scale()<<8)),(byte) (0xFF & v.scale())}, 0, data, 0, 4);
System.arraycopy(mantisse, 0, data, 4, mantisse.length);
return data;
});
//TODO Create typeLisible for Decimal et Booléen et ENtier (basés pour l'instant sur le code du java).
fonction("affiche", new FonctionAffichage());
fonction("pi", new FonctionConstante(Truc.fromBytes(type("Decimal"), typeLisible("Decimal").apply("3.141592653"))));
}
public static final byte[] toByteArray(List<Byte> list) {
byte[] ret = new byte[list.size()];
byte i = 0;
for (Byte e : list)
ret[i++] = e;
return ret;
}
}

View File

@ -0,0 +1,5 @@
package com.bernard.bernard.reflet;
public class Boiboite {
}

View File

@ -0,0 +1,10 @@
package com.bernard.bernard.reflet;
import com.bernard.bernard.runtime.Arguments;
import com.bernard.bernard.runtime.Reference;
public interface Fonction {
public Reference execute(Arguments args);
}

View File

@ -0,0 +1,33 @@
package com.bernard.bernard.reflet;
import java.util.List;
import java.util.stream.Collectors;
import com.bernard.bernard.runtime.Arguments;
import com.bernard.bernard.runtime.Reference;
public class FonctionComplexe implements Fonction{
List<Fonction> composants;
List<List<Integer>> argsPos;//<indexTo,argIndexTo>
public boolean verify() {
for (int i = 0; i < argsPos.size(); i++)
if(argsPos.get(i).stream().mapToInt(j->j).max().orElse(-1) < i)
return false;
return true;
}
@Override
public Reference execute(Arguments args) {
Reference[] outputs = new Reference[composants.size()];
for(int i = 0;i<composants.size();i++) {
//TODO définir correctement les arguments et un meilleur moyen de les considérer comme fonctions
List<Reference> argsToPass = argsPos.get(i).stream().map(j->(j>=0)?outputs[j]:args.get(-j)).collect(Collectors.toList());
outputs[i] = composants.get(i).execute(new Arguments(argsToPass));
}
return outputs[outputs.length-1];
}
}

View File

@ -0,0 +1,5 @@
package com.bernard.bernard.reflet;
public interface FonctionSimple extends Fonction{
}

View File

@ -0,0 +1,29 @@
package com.bernard.bernard.runtime;
import java.util.Arrays;
import java.util.List;
public class Arguments {
List<Reference> args;
public Arguments(Reference... refs) {
args = Arrays.asList(refs);
}
public Arguments(List<Reference> args) {
this.args = args;
}
public Reference get(int pos) {
try {
return args.get(pos);
}catch(IndexOutOfBoundsException e) {
return null;
}
}
}

View File

@ -0,0 +1,22 @@
package com.bernard.bernard.runtime;
import java.util.HashMap;
import java.util.Map;
public class GardeMemoire {
private static Map<Long,Byte> memory = new HashMap<>();//TODO Change to byte array
public static byte get(long index) {
return memory.get(index);
}
public static void setByte(long index,byte value) {
memory.put(index, value);
}
public static long getMax() {
return memory.keySet().stream().reduce(0L, (l,m)->(l>m)?l:m);
}
}

View File

@ -0,0 +1,30 @@
package com.bernard.bernard.runtime;
import java.util.HashMap;
import java.util.Map;
public class GardeRef {
private static final Truc NEANT = new Truc(null, new long[] {});
private static Map<Integer,Truc> memoire = new HashMap<>();
private static Map<Reference,Integer> refs = new HashMap<>();
public static Truc get(Reference r) {
return refs.containsKey(r)?memoire.get(refs.get(r)):NEANT;
}
public static Reference register(Truc truc) {
Reference ref = new Reference();
int newIndex = memoire.keySet().stream().mapToInt(i->i).max().orElse(0);
memoire.put(newIndex, truc);
refs.put(ref, newIndex);
return ref;
}
public static Reference anotherRef(Reference ref) {
Reference newRef = new Reference();
if(refs.containsKey(ref))refs.put(newRef, refs.get(ref));
return newRef;
}
}

View File

@ -0,0 +1,10 @@
package com.bernard.bernard.runtime;
import java.util.UUID;
public class Reference {
UUID id;
public Reference() {
id = UUID.randomUUID();
}
}

View File

@ -0,0 +1,34 @@
package com.bernard.bernard.runtime;
import java.util.Arrays;
import java.util.stream.Collectors;
import com.bernard.bernard.reflet.Boiboite;
public class Truc {
public Truc(Boiboite type, long[] dataRef) {
this.type = type;
this.dataRef = dataRef;
}
public static Truc fromBytes(Boiboite type,byte[] data) {
long startIndex = GardeMemoire.getMax();
long[] dataRef = new long[data.length];
for (int i = 0; i < data.length; i++) {
GardeMemoire.setByte(startIndex+i, data[i]);
dataRef[i] = startIndex+i;
}
return new Truc(type,dataRef);
}
Boiboite type;
long[] dataRef;
public String getData() {
return Arrays.stream(dataRef).mapToObj(GardeMemoire::get).map(b->Character.valueOf((char)b.byteValue())).map(c->c.toString()).collect(Collectors.joining());
}
}

View File

@ -0,0 +1,37 @@
package com.bernard.bernard.test;
import com.bernard.bernard.fonctions.FonctionAffichage;
import com.bernard.bernard.reflet.Boiboite;
import com.bernard.bernard.reflet.Fonction;
import com.bernard.bernard.runtime.Arguments;
import com.bernard.bernard.runtime.GardeMemoire;
import com.bernard.bernard.runtime.GardeRef;
import com.bernard.bernard.runtime.Reference;
import com.bernard.bernard.runtime.Truc;
public class FTests {
public static void main(String[] a) {
Fonction f = new FonctionAffichage();
GardeMemoire.setByte(0L, (byte) 72);
GardeMemoire.setByte(1L, (byte) 101);
GardeMemoire.setByte(2L, (byte) 108);
GardeMemoire.setByte(3L, (byte) 108);
GardeMemoire.setByte(4L, (byte) 111);
GardeMemoire.setByte(5L, (byte) 32);
GardeMemoire.setByte(6L, (byte) 0x42);
GardeMemoire.setByte(7L, (byte) 101);
GardeMemoire.setByte(8L, (byte) 114);
GardeMemoire.setByte(9L, (byte) 110);
GardeMemoire.setByte(10L, (byte) 97);
GardeMemoire.setByte(11L, (byte) 114);
GardeMemoire.setByte(12L, (byte) 100);
Truc aAff = new Truc(new Boiboite(), new long[] {0,1,2,3,4,5,6,7,8,9,10,11,12});
Reference ref = GardeRef.register(aAff);
Arguments args = new Arguments(ref);
f.execute(args);
}
}

View File

@ -1,9 +1,2 @@
/** module bernard {
*
*/
/**
* @author mysaa
*
*/
module LeBernard {
} }

10
src/testCode.bernard Normal file
View File

@ -0,0 +1,10 @@
let Chaine x = Hello Bernard
let Entier y = 42
let Booleen z = Vrai
let Booleen a = Faux
afficher x
afficher y
let b = binEt z a
let c = binOu b z
afficher b