package Ġcom . w car mon . codegen . model Ċ Ċ import Ġcom . w car mon . codegen . ast . Field Read Mode . DIRECT Ċ import Ġcom . w car mon . codegen . ast . Field Read Mode . GET TER Ċ Ċ enum Ġclass ĠTarget Language Ġ{ ĊĠ ĠC _ 1 7 , ĊĠ ĠCPP _ 1 4 , ĊĠ ĠCPP _ 1 7 , ĊĠ ĠCPP _ 2 0 , ĊĠ ĠD ART _ 2 , ĊĠ ĠG OL ANG _ 1 _ 9 , Ġ// Ġincludes Ġsql . Conn . Query Context ĊĠ ĠJAVA _ 0 8 , ĊĠ ĠJAVA _ 1 1 , ĊĠ ĠJAVA _ 1 7 , ĊĠ ĠK OT LIN _ JVM _ 1 _ 4 , ĊĠ ĠPROTO _ BUF _ 3 , ĊĠ ĠPYTHON _ 3 , ĊĠ ĠR UST _ 1 _ 5 4 , ĊĠ ĠSQL _ DB 2 , ĊĠ ĠSQL _ H 2 , ĊĠ ĠSQL _ MAR IA , ĊĠ ĠSQL _ MYSQL , ĊĠ ĠSQL _ OR AC LE , ĊĠ ĠSQL _ POST GRE SQL , ĊĠ ĠSQL _ DEL IGHT , ĊĠ ĠSQL _ SQL ITE , ĊĠ ĠSW IFT _ 5 , ĊĠ ĠTY PES CRIPT _ 4 , ĊĠ Ġ; ĊĊĠ Ġval Ġfield Read Mode Ġby Ġlazy Ġ{ ĊĠĠĠ Ġif Ġ( uses Get ters ) ĠGET TER ĊĠĠĠ Ġelse ĠDIRECT ĊĠ Ġ} ĊĊĠ Ġval Ġis JVM Ġby Ġlazy Ġ{ ĊĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠ ĠJAVA _ 0 8 , ĊĠĠĠĠĠ ĠJAVA _ 1 1 , ĊĠĠĠĠĠ ĠJAVA _ 1 7 , ĊĠĠĠĠĠ ĠK OT LIN _ JVM _ 1 _ 4 , ĊĠĠĠĠĠ Ġ-> Ġtrue ĊĊĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġval Ġis Kotlin Ġby Ġlazy Ġ{ ĊĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠ ĠK OT LIN _ JVM _ 1 _ 4 , ĊĠĠĠĠĠ Ġ-> Ġtrue ĊĊĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġval Ġis G olang Ġby Ġlazy Ġ{ ĊĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠ ĠG OL ANG _ 1 _ 9 Ġ-> Ġtrue ĊĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġval Ġis Protobuf Ġby Ġlazy Ġ{ ĊĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠ ĠPROTO _ BUF _ 3 Ġ-> Ġtrue ĊĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġval Ġis Java Ġby Ġlazy Ġ{ ĊĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠ ĠJAVA _ 0 8 , ĊĠĠĠĠĠ ĠJAVA _ 1 1 , ĊĠĠĠĠĠ ĠJAVA _ 1 7 , ĊĠĠĠĠĠ Ġ-> Ġtrue ĊĊĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġval Ġis SQL Ġby Ġlazy Ġ{ ĊĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠ ĠSQL _ DB 2 , ĊĠĠĠĠĠ ĠSQL _ H 2 , ĊĠĠĠĠĠ ĠSQL _ MAR IA , ĊĠĠĠĠĠ ĠSQL _ MYSQL , ĊĠĠĠĠĠ ĠSQL _ OR AC LE , ĊĠĠĠĠĠ ĠSQL _ POST GRE SQL , ĊĠĠĠĠĠ ĠSQL _ SQL ITE , ĊĠĠĠĠĠ Ġ-> Ġtrue ĊĊĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġval Ġrequires Statement Termin ator Ġby Ġlazy Ġ{ ĊĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠ ĠC _ 1 7 , ĊĠĠĠĠĠ ĠCPP _ 1 4 , ĊĠĠĠĠĠ ĠCPP _ 1 7 , ĊĠĠĠĠĠ ĠCPP _ 2 0 , ĊĠĠĠĠĠ ĠD ART _ 2 , ĊĠĠĠĠĠ ĠJAVA _ 0 8 , ĊĠĠĠĠĠ ĠJAVA _ 1 1 , ĊĠĠĠĠĠ ĠJAVA _ 1 7 , ĊĠĠĠĠĠ ĠPROTO _ BUF _ 3 , ĊĠĠĠĠĠ ĠSQL _ DEL IGHT , ĊĠĠĠĠĠ ĠTY PES CRIPT _ 4 , ĊĠĠĠĠĠ Ġ-> Ġtrue ĊĊĠĠĠĠĠ ĠK OT LIN _ JVM _ 1 _ 4 , ĊĠĠĠĠĠ ĠG OL ANG _ 1 _ 9 , ĊĠĠĠĠĠ ĠPYTHON _ 3 , ĊĠĠĠĠĠ Ġ-> Ġfalse ĊĊĠĠĠĠĠ ĠR UST _ 1 _ 5 4 Ġ-> ĠTODO (" dec ide Ġif Ġtarget Language =$ this Ġrequires Ġstatement Ġtermin ator ") ĊĊĠĠĠĠĠ ĠSQL _ DB 2 , ĊĠĠĠĠĠ ĠSQL _ H 2 , ĊĠĠĠĠĠ ĠSQL _ MAR IA , ĊĠĠĠĠĠ ĠSQL _ MYSQL , ĊĠĠĠĠĠ ĠSQL _ OR AC LE , ĊĠĠĠĠĠ ĠSQL _ POST GRE SQL , ĊĠĠĠĠĠ ĠSQL _ SQL ITE , ĊĠĠĠĠĠ Ġ-> ĠTODO (" dec ide Ġif Ġtarget Language =$ this Ġrequires Ġstatement Ġtermin ator ") ĊĊĠĠĠĠĠ ĠSW IFT _ 5 Ġ-> ĠTODO (" dec ide Ġif Ġtarget Language =$ this Ġrequires Ġstatement Ġtermin ator ") ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠStatement Ġtermin ator ĊĠĠ Ġ* ĊĠĠ Ġ* ĠSee Ġhttps :// en . wikipedia . org / wiki / Comparison _ of _ programming _ languages _( syntax ) ĊĠĠ Ġ*/ ĊĠ Ġfun Ġstatement Termin ator Literal ( should Terminate : ĠBoolean ): ĠString Ġ= ĊĠĠĠ Ġif Ġ(! should Terminate ) Ġ{ ĊĠĠĠĠĠ Ġ"" ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠĠĠ ĠPYTHON _ 3 Ġ-> Ġ"\ n " ĊĊĠĠĠĠĠĠĠ Ġ// Ġ-- Ġsem icolon Ġinserted Ġby Ġcompiler ĊĠĠĠĠĠĠĠ ĠG OL ANG _ 1 _ 9 , ĊĠĠĠĠĠĠĠ ĠK OT LIN _ JVM _ 1 _ 4 , ĊĠĠĠĠĠĠĠ ĠSW IFT _ 5 , ĊĠĠĠĠĠĠĠ Ġ-> Ġ"" ĊĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ";" ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠ Ġprivate Ġval Ġuses Get ters Ġby Ġlazy Ġ{ ĊĠĠĠ Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠ ĠC _ 1 7 , ĊĠĠĠĠĠ ĠG OL ANG _ 1 _ 9 , ĊĠĠĠĠĠ ĠK OT LIN _ JVM _ 1 _ 4 , ĊĠĠĠĠĠ ĠSQL _ DB 2 , ĊĠĠĠĠĠ ĠSQL _ H 2 , ĊĠĠĠĠĠ ĠSQL _ MAR IA , ĊĠĠĠĠĠ ĠSQL _ MYSQL , ĊĠĠĠĠĠ ĠSQL _ OR AC LE , ĊĠĠĠĠĠ ĠSQL _ POST GRE SQL , ĊĠĠĠĠĠ ĠSQL _ SQL ITE , ĊĠĠĠĠĠ ĠTY PES CRIPT _ 4 , ĊĠĠĠĠĠ Ġ-> Ġfalse ĊĊĠĠĠĠĠ ĠJAVA _ 0 8 , ĊĠĠĠĠĠ ĠJAVA _ 1 1 , ĊĠĠĠĠĠ ĠJAVA _ 1 7 , ĊĠĠĠĠĠ Ġ-> Ġtrue ĊĠĠĠĠĠ Ġelse Ġ-> ĠTODO (" does Ġthis Ġlanguage Ġuse Ġgetters ?: Ġ$ this ") ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ