ComplexLiteral (R-GReQL): Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 13: Zeile 13:
     <query>
     <query>
       from lao1:V{LeftAssignmentOperator1}, var:V{Variable}, add:V{AddOperator}, num:V{NumericLiteral}, complx:V{ComplexLiteral}, lh:E{LeftHandSide}, rh:E{RightHandSide}, e1,e2:E{Expression} with
       from lao1:V{LeftAssignmentOperator1}, var:V{Variable}, add:V{AddOperator}, num:V{NumericLiteral}, complx:V{ComplexLiteral}, lh:E{LeftHandSide}, rh:E{RightHandSide}, e1,e2:E{Expression} with
       lao1 -- lh -&gt; var and
       lao1 -- lh -> var and
       lao1 -- rh -&gt; add and
       lao1 -- rh -> add and
       add -- e1 -&gt; num and
       add -- e1 -> num and
       add -- e2 -&gt; complx and
       add -- e2 -> complx and
       e1.position = 0 and
       e1.position = 0 and
       e2.position = 1 and
       e2.position = 1 and

Version vom 24. Juni 2017, 03:34 Uhr

ComplexLiteral stellt den komplexen Teil, d.h. Imaginärteil und imaginäre Einheit, einer komplexen Zahl dar. Der Knoten besitzt ein Attribut value, in dem beide (in Anführungszeichen) angegeben werden können.

Abfrage auf dem Syntaxgraphen (blau)

Der Knoten ist Teil der GReQL-Grammatik für den StaticRChecker.

Beispiel

var2 <- 5+3i

<?xml version="1.0" encoding="iso-8859-1"?>
<rules>
  <rule type="presence" points="100">
    <query>
      from lao1:V{LeftAssignmentOperator1}, var:V{Variable}, add:V{AddOperator}, num:V{NumericLiteral}, complx:V{ComplexLiteral}, lh:E{LeftHandSide}, rh:E{RightHandSide}, e1,e2:E{Expression} with
      lao1 -- lh -> var and
      lao1 -- rh -> add and
      add -- e1 -> num and
      add -- e2 -> complx and
      e1.position = 0 and
      e2.position = 1 and
      var.name="var2" and
      num.value=5 and
      complx.value="3i"
      report 0 end
   </query>
   <feedback>
      Leider nicht richtig!
   </feedback>
  </rule>
</rules>