diff .cms/lib/codemirror/mode/ttcn/index.html @ 0:78edf6b517a0 draft

24.10
author Coffee CMS <info@coffee-cms.ru>
date Fri, 11 Oct 2024 22:40:23 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/.cms/lib/codemirror/mode/ttcn/index.html	Fri Oct 11 22:40:23 2024 +0000
@@ -0,0 +1,119 @@
+<!doctype html>
+
+<title>CodeMirror: TTCN mode</title>
+<meta charset="utf-8"/>
+<link rel=stylesheet href="../../doc/docs.css">
+
+<link rel="stylesheet" href="../../lib/codemirror.css">
+<script src="../../lib/codemirror.js"></script>
+<script src="../../addon/edit/matchbrackets.js"></script>
+<script src="ttcn.js"></script>
+<style>
+    .CodeMirror {
+        border-top: 1px solid black;
+        border-bottom: 1px solid black;
+    }
+</style>
+<div id=nav>
+    <a href="https://codemirror.net/5"><h1>CodeMirror</h1>
+        <img id=logo src="../../doc/logo.png" alt="">
+    </a>
+
+    <ul>
+        <li><a href="../../index.html">Home</a>
+        <li><a href="../../doc/manual.html">Manual</a>
+        <li><a href="https://github.com/codemirror/codemirror5">Code</a>
+    </ul>
+    <ul>
+        <li><a href="../index.html">Language modes</a>
+        <li><a class=active href="http://en.wikipedia.org/wiki/TTCN">TTCN</a>
+    </ul>
+</div>
+<article>
+    <h2>TTCN example</h2>
+    <div>
+        <textarea id="ttcn-code">
+module Templates {
+  /* import types from ASN.1 */
+  import from Types language "ASN.1:1997" all;
+
+  /* During the conversion phase from ASN.1 to TTCN-3 */
+  /* - the minus sign (Message-Type) within the identifiers will be replaced by underscore (Message_Type)*/
+  /* - the ASN.1 identifiers matching a TTCN-3 keyword (objid) will be postfixed with an underscore (objid_)*/
+
+  // simple types
+
+  template SenderID localObjid := objid {itu_t(0) identified_organization(4) etsi(0)};
+
+  // complex types
+
+  /* ASN.1 Message-Type mapped to TTCN-3 Message_Type */
+  template Message receiveMsg(template (present) Message_Type p_messageType) := {
+    header := p_messageType,
+    body := ?
+  }
+
+  /* ASN.1 objid mapped to TTCN-3 objid_ */
+  template Message sendInviteMsg := {
+      header := inviteType,
+      body := {
+        /* optional fields may be assigned by omit or may be ignored/skipped */
+        description := "Invite Message",
+        data := 'FF'O,
+        objid_ := localObjid
+      }
+  }
+
+  template Message sendAcceptMsg modifies sendInviteMsg := {
+      header := acceptType,
+      body := {
+        description := "Accept Message"
+      }
+    };
+
+  template Message sendErrorMsg modifies sendInviteMsg := {
+      header := errorType,
+      body := {
+        description := "Error Message"
+      }
+    };
+
+  template Message expectedErrorMsg := {
+      header := errorType,
+      body := ?
+    };
+
+  template Message expectedInviteMsg modifies expectedErrorMsg := {
+      header := inviteType
+    };
+
+  template Message expectedAcceptMsg modifies expectedErrorMsg := {
+      header := acceptType
+    };
+
+} with { encode "BER:1997" }
+        </textarea>
+    </div>
+
+    <script> 
+      var ttcnEditor = CodeMirror.fromTextArea(document.getElementById("ttcn-code"), {
+        lineNumbers: true,
+        matchBrackets: true,
+        mode: "text/x-ttcn"
+      });
+      ttcnEditor.setSize(600, 860);
+      var mac = CodeMirror.keyMap.default == CodeMirror.keyMap.macDefault;
+      CodeMirror.keyMap.default[(mac ? "Cmd" : "Ctrl") + "-Space"] = "autocomplete";
+    </script>
+    <br/>
+    <p><strong>Language:</strong> Testing and Test Control Notation
+        (<a href="http://en.wikipedia.org/wiki/TTCN">TTCN</a>)
+    </p>
+    <p><strong>MIME types defined:</strong> <code>text/x-ttcn,
+        text/x-ttcn3, text/x-ttcnpp</code>.</p>
+    <br/>
+    <p>The development of this mode has been sponsored by <a href="http://www.ericsson.com/">Ericsson
+    </a>.</p>
+    <p>Coded by Asmelash Tsegay Gebretsadkan </p>
+</article>
+