package Ġio . github . ox isto . kot lint ree Ċ Ċ import Ġio . github . ox isto . kot lint ree . jvm . Parser Ċ import Ġio . github . ox isto . kot lint ree . jvm . Tree S itter Cpp Ċ import Ġio . github . ox isto . kot lint ree . jvm . of Ċ import Ġkotlin . test .* Ċ Ċ class ĠCursor Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Iterator () Ġ{ ĊĠĠĠĠĠĠĠ ĠParser (). use Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . language Ġ= ĠTree S itter Cpp . INSTANCE . tree _ s itter _ cpp () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsource Ġ= Ġ" int Ġmain ( int Ġargc , Ġchar ** Ġargv ) Ġ{} " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtree Ġ= Ġit . parse String ( null , Ġsource ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġroot Ġ= Ġtree . root Node ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfunc Ġ= Ġ 0 Ġof Ġroot ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcursor Ġ= Ġfunc . iterator () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNotNull ( cursor ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( cursor . hasNext ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġnext Ġ= Ġcursor . next () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNotNull ( next ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( next . isNull ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" primitive _ type ", Ġnext . type ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" type ", Ġcursor . current FieldName ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġnext Ġ= Ġcursor . next () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNotNull ( next ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( next . isNull ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" function _ decl arator ", Ġnext . type ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" decl arator ", Ġcursor . current FieldName ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġnext Ġ= Ġcursor . next () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertNotNull ( next ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( next . isNull ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" compound _ statement ", Ġnext . type ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals (" body ", Ġcursor . current FieldName ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest List () Ġ{ ĊĠĠĠĠĠĠĠ ĠParser (). use Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . language Ġ= ĠTree S itter Cpp . INSTANCE . tree _ s itter _ cpp () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsource Ġ= Ġ" int Ġmain ( int Ġargc , Ġchar ** Ġargv ) Ġ{} " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtree Ġ= Ġit . parse String ( null , Ġsource ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġroot Ġ= Ġtree . root Node ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfunc Ġ= Ġ 0 Ġof Ġroot ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchildren Ġ= Ġfunc . toList () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( 3 , Ġchildren . size ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ