emit
repeat()ステップの前または後に、探索者を発します。
構文
emit( [ 'predicate' | 'traversal' ])
| 構文規則 | 説明 |
|---|---|
| 小文字と大文字 | リテラル・キーワード。()を含みます。 |
Italics |
変数値。ユーザー定義値と置き換えます。 |
[] |
任意。角かっこ( [] )で任意のコマンド引数を囲みます。角かっこは入力しないでください。 |
{} |
グループ。中かっこ({})は、選択肢を含むグループを示します。中かっこは入力しないでください。 |
| |
または。縦棒(|)で代替要素を区切ります。要素のいずれかを入力してください。縦棒は入力しないでください。 |
... |
繰り返し可能。省略記号(...)は、構文要素を必要な回数だけ繰り返すことができることを示します。 |
説明
emit()ステップは、ステップ・モジュレータで、他の探索ステップ向けのヘルパー・ステップです。主用途は、repeat()ステップの前に内向き探索者を発するか、repeat()ステップ後に外向き探索者を発します。放出物は、現在のオブジェクトのコピーをクエリー内の次のステップに送ります。述語または探索は、emit()ステップで使用して、述語または探索がtrueの場合に限り、放出物を発することができます。
例
g.V(1).emit().repeat(out()).times(2).path()
==>[v[1]]
==>[v[1],v[3]]
==>[v[1],v[2]]
==>[v[1],v[4]]
==>[v[1],v[4],v[5]]
==>[v[1],v[4],v[3]]
gremlin> g.V(1).repeat(out()).times(2).emit().path()
==>[v[1],v[3]]
==>[v[1],v[2]]
==>[v[1],v[4]]
==>[v[1],v[4],v[5]]
==>[v[1],v[4],v[3]]
