28.01.2015 Views

Hermes: A Tutorial and Reference Manual - Researcher - IBM

Hermes: A Tutorial and Reference Manual - Researcher - IBM

Hermes: A Tutorial and Reference Manual - Researcher - IBM

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

select(continued) SpecialRules:Allthevariablesidentiedintheeventguardsassociatedwiththeclauseslistedinthestatementqualiermustbeinclass<br />

AppendixB.<strong>Hermes</strong>Operations187 resultvariableidentiedineachbooleanguardassociatedwithaclause inport.Ifthereisanoper<strong>and</strong>,itstypemustbethesameasthatofthe onnormalexitfromtheirassociatedtestclauses.Theentrytypestate foreachbooleanguardclauseisidenticaltotheentrytypestateforthe ment.Allbooleanguardresultvariablesmusthavetheinitattribute theotherwiseclause,isthemeetofthenormalexittypestatefromall thebooleanguardtestclauses(ortheselectstatemententrytypestateiftherearenobooleanguards).Thenormalexittypestatefrom<br />

mustbeoftypepredefined!boolean.Allvariablesassociatedwith selectstatement.Theentrytypestateforeachselectclause,including eventguardsmusthavetheinitattributeonentrytotheselectstate-<br />

listedinthequalier.Otherwise,eachbooleanguardresultvariable<br />

Description:Theinstructionqualiercontainsatableofselectclauses, eachofwhichspeciesoneorbothofaneventguard<strong>and</strong>aboolean astatementclause.Theselectoperationrstexecutesallthestatementsinclausesidentiedbybooleanguards,yieldingvaluesforallthe<br />

guard,aswellasanassociatedstatementclause.Aneventguardis theselectstatementisthemeetofthenormalexittypestatesofall theselectclauses,includingtheotherwiseclause. aninputportvariable,whileabooleanguardidentiesavariable<strong>and</strong><br />

eventguardwhoseassociatedinputportisnonempty,isselected.The booleanguardvariables.Iftheselectoperationhasanoper<strong>and</strong>,itis statementsinthestatementclauseassociatedwiththeselectedclause arethenexecuted.Iftherearenoenabledselectclauses,thenthestatementsinthe\otherwise"clause(identiedintheinstructionqualier)<br />

outport2outport<br />

messagetypeof(outport) Exceptions:Depletion,Disconnected<br />

selectclauseswithtruebooleanguardvaluesareenabled.Inaddition, selectclauseswithoutbooleanguardsareenabled.Ifanyselectclause erationhasnooper<strong>and</strong>s,thebooleanguardvaluesmustbeboolean,<strong>and</strong> isenabled,oneenabledclausewitheithernoeventguard,orwithan clauseforwhichthetestsucceedsbecomes\enabled."Iftheselectop-<br />

testedforequalitywitheachbooleanguardvariable,<strong>and</strong>eachselect<br />

Qualier:select send(outport,message) TypeRules: areexecuted. Seex11.3,p.98

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!