Sha256: 32056de41e857586315501aa27c408f42d8a5b19dce68c1b0b58b75c603ae586

Contents?: true

Size: 1.61 KB

Versions: 1

Compression:

Stored size: 1.61 KB

Contents

{{!

   interface_processes: speficy a process for each interface


}}

(******************************************************************
Interfaces generated  {{META.desc}}
 - modelData {{META.modelData}}
 - template  {{META.template}}
******************************************************************)

{{#interfaces}}
(* Process {{interface_operation}} *)
fair process ({{>name_process.mustache}}="{{interface_operation}}") {
     {{>name_process.mustache}}_enter: while (TRUE) {
         enable( "{{>name_process.mustache}}" );
	 (* enable next process to run parallel *)
	 \* process_done( "{{interface_operation}}" );
	 with ( _input \in { t \in ProcessParameterInput( {{>name_interface_type.mustache}} ) : ProcessParameterBind( t ) } ) {
	    \* PREFERENCES.debug-output: {{PREFERENCES.debug-output}}
	    {{^PREFERENCES.debug-output}}\* {{/PREFERENCES.debug-output}}print <<"Default process {{>name_process.mustache}} for operation '{{interface_operation}}',tick=", currentTime>>;
	    {{^implementation}}
	    {{^PREFERENCES.debug-output}}\* {{/PREFERENCES.debug-output}}print <<"   - input=>", _input >>;	    
	    (* print <<"   - {{>name_interface_type.mustache}}=>", {{>name_interface_type.mustache}} >>; *)
	    {{/implementation}}
	    (* Valid input type? *)
	    assert(  _input \in {{>name_interface_type.mustache}} );
	    {{#implementation}}{{implementation}}( _input );{{/implementation}}
	 }; \* with _input
	 (* enable next process - after current process *)
	 {{>name_process.mustache}}_exit: process_done( "{{interface_operation}}" );
     } \* while(TRUE)
} \* failr process {{>name_process.mustache}}

{{/interfaces}}

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
tla-sbuilder-0.1.0 mustache/interface_processes.mustache