BooleanLiteral (R-GReQL): Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(24 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt)
Zeile 1: Zeile 1:
BooleanLiteral stellt einen boolischen Wert dar. Der Knoten besitzt ein Attribut "value", in dem der Wert gespeichert ist. Der Knoten wird in der Abbildung in rot dargestellt. [[Datei:5Literals.png|mini|<code>var1 <- true; var2 <- 5 + 3i; var3 <- 10L</code>]]
BooleanLiteral stellt einen booleschen Wert dar. Der Knoten besitzt das Attribut '''value''', in dem die Werte ''true'' oder ''false'' angegeben werden können. [[Datei:5Literals.png|mini|Abfrage auf dem Syntaxgraphen (rot)]]
Bei der Verwendung ist zu beachten, dass bisher ausschließlich die expliziten Abfragen <code>TRUE</code> und <code>FALSE</code> möglich sind. <code>T</code> und <code>F</code> funktionieren damit aktuell noch nicht.


Der Knoten ist Teil der [[R-GReQL-Grammatik|GReQL-Grammatik]] für den [[StaticRChecker]].
Der Knoten ist Teil der [[R-GReQL-Grammatik|GReQL-Grammatik]] für den [[StaticRChecker]].


= Beispiel =
== Beispiel ==


<code>var <- <u>true</u></code>
<code>var1 <- <u>TRUE</u></code>


<code>var <- <u>false</u></code>
<syntaxhighlight highlight="5,7,9" lang="xml">
 
<?xml version="1.0" encoding="iso-8859-1"?>
<code>var <- <u>true</u> | <u>false</u></code>
<rules>
  <rule type="presence" points="100">
    <query>              
      from lao1:V{LeftAssignmentOperator1}, var:V{Variable}, tr:V{BooleanLiteral}, lh:E{LeftHandSide}, rh:E{RightHandSide} with
      lao1 -- lh -> var and
      lao1 -- rh -> tr and
      var.name="var1" and
      tr.value=true
      report 0 end
    </query>
    <feedback>
      Leider nicht richtig!
    </feedback>
  </rule>
</rules>
</syntaxhighlight>
[[Category:R-GReQL]]

Aktuelle Version vom 4. Dezember 2018, 16:14 Uhr

BooleanLiteral stellt einen booleschen Wert dar. Der Knoten besitzt das Attribut value, in dem die Werte true oder false angegeben werden können.

Abfrage auf dem Syntaxgraphen (rot)

Bei der Verwendung ist zu beachten, dass bisher ausschließlich die expliziten Abfragen TRUE und FALSE möglich sind. T und F funktionieren damit aktuell noch nicht.

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

Beispiel

var1 <- TRUE

<?xml version="1.0" encoding="iso-8859-1"?>
<rules>
  <rule type="presence" points="100">
    <query>                
      from lao1:V{LeftAssignmentOperator1}, var:V{Variable}, tr:V{BooleanLiteral}, lh:E{LeftHandSide}, rh:E{RightHandSide} with
      lao1 -- lh -> var and
      lao1 -- rh -> tr and
      var.name="var1" and
      tr.value=true
      report 0 end
    </query>
    <feedback>
      Leider nicht richtig!
    </feedback>
  </rule>
</rules>