čtvrtek 5. března 2015

Příklady AST dotazovacího jazyka

Nastavené aliasy/zkratky

Klasický zápisZkratkaZkratka
class[@name=“jmeno.elementu“]class[jmeno.elementu] stejně lze zkrátit zápis pro libovolný typ vrcholu
jmeno.vrcholu/>e or jmeno.vrcholu !jmeno.vrcholu
class/extends class/>extends nebo class/>e lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/extended class/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/implements class/>implements nebo class/>i lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/implemented_by class/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/uses class/>uses nebo class/>u lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/used_by class/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
method/calls method/>call nebo method/>c lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
method/called_by method/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
method/type method/>type nebo method/>t lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
method/typed_by method/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/have_anonym class/>anonym lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/is_anonym class/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/have_inner class/>inner lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/is_inner class/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/have_member class/>member lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/is_member class/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/have_method class/>method nebo class/>m lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/is_method class/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
method/have_parameter method/>parameter nebo method/>p lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
method/is_parameter method/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
field/main_type field/>main_type lze použít pro uzly pole a generického typu
field/main_typed_by field/lze použít pro uzly pole a generického typu
generic type/have_generic_parameter generic type/>generic_parameter lze použít pouze pro uzly generického typu
generic type/is_generic_parameter generic type/lze použít pouze pro uzly generického typu
class/annotated class/>annotated nebo class/>a lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
class/annotated_by class/lze použít pro všechny typy vrcholů, kde je tento vztah relevantní
annotation/have_element annotation/>element lze použít pouze pro vrchol anotace
annotation/is_element_by annotation/lze použít pouze pro vrchol anotace
method/throws method/>throws lze použít pouze pro vrchol metoda
method/throws_by method/lze použít pouze pro vrchol metoda
method/call_throws method/>call_throws lze použít pouze pro vrchol metoda
method/call_throws_by method/lze použít pouze pro vrchol metoda
method/catch method/>catch lze použít pouze pro vrchol metoda
method/catch_by method/lze použít pouze pro vrchol metoda
value/is_value value/>value lze použít pouze pro vrchol hodnota
value/value_by value/lze použít pouze pro vrchol hodnota

Classes importing/extending class C.
   class[C]/<u union !C
   class[C]/<uses union !C

Interfaces extending interface I.
   !I

Classes implemeting interface I.
   interface[I]/<i
   interface[I]/<implemented

Classes calling a method of interface I.
   interface[I]/>m/<c/<m
   interface[I]/>method/<call/<method

Classes calling a method of interface which extends interface I.
   interface[>extend[I]]/>m/<c/<m
   interface[>extend[I]]/>method/<call/<method

Classes calling a method of given name of interface which extends interface I with given parameters.
   interface[>e[I]]/>m[name and >p/>t[par]]/<c/<m
   interface[>extend[I]]/>method[name AND >parameter/>type[par]]/<call/<method

Classes calling a method which implements interface I, and it is annotated with annotation @A.
   interface[I]/<i/>m[>annotated[A]]/<c/<m
   interface[I]/<implements/>method[>annotated[A]]/<call/<method

Classes calling a method which implements interface I, and it is annotated with annotation @A with parameters @A(foo="bar")
   interface[I]/<i/>m[>annotated[A]/>element[@value="bar"]/<value[foo]]/<c/<m
   interface[I]/<implements/>method[>annotated[A]/>element[@value="bar"]/<value[foo]]/<call/<method
nebo
   interface[I]/<i/>m[>annotated[A]/>element[foo and @value="bar"]]/<c/<m
   interface[I]/<implements/>method[>annotated[A]/>element[foo and @value="bar"]]/<call/<method

Classes annotated with annotation A
   class[>annotated[A]]

Classes importing a subclass of class B.
   !B/<u
   !B/<uses

Classes importing a subclass of class which implements subinterface of interface I.
   !I/<i/<e/<u
   !I/<implement/<extend/<uses

Classes contain method with name foo(string,int)
   class[>m[foo and >p[@position="1"]/>t[String] and >p[@position="2"]/>t[int]]]

Classes callmethod foo(int,string) of class C
   class[C]/>m[foo and >p[@position="2"]/>t[String] and >p[@position="1"]/>t[int]]/<c

Žádné komentáře:

Okomentovat