package Ġorg . part i ql . examples Ċ Ċ import Ġcom . amazon . ion . system . Ion System Builder Ċ import Ġorg . part i ql . examples . util . Example Ċ import Ġorg . part i ql . lang . Compiler Pipeline Ċ import Ġorg . part i ql . lang . eval . Bindings Ċ import Ġorg . part i ql . lang . eval . Evaluation Session Ċ import Ġjava . io . Print Stream Ċ Ċ /** ĠD emon str ates Ġhow Ġto Ġsupply Ġa Ġglobal Ġvariable Ġto Ġthe Ġsession . Ġ*/ Ċ class ĠEvaluation With Bindings ( out : ĠPrint Stream ) Ġ: ĠExample ( out ) Ġ{ ĊĠĠĠ Ġval Ġion Ġ= ĠIon System Builder . standard (). build () ĊĠĠĠ Ġval Ġpipeline Ġ= ĠCompiler Pipeline . standard ( ion ) ĊĊĠĠĠ Ġoverride Ġfun Ġrun () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠComp iles Ġa Ġsimple Ġexpression Ġcontaining Ġa Ġreference Ġto Ġa Ġglobal Ġvariable . ĊĠĠĠĠĠĠĠ Ġval Ġquery Ġ= Ġ"' Hello , Ġ' Ġ|| Ġuser _ name " ĊĠĠĠĠĠĠĠ Ġprint (" Part i QL Ġquery :", Ġquery ) ĊĠĠĠĠĠĠĠ Ġval Ġe Ġ= Ġpipeline . compile ( query ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠThis Ġis Ġthe Ġvalue Ġof Ġthe Ġglobal Ġvariable . ĊĠĠĠĠĠĠĠ Ġval ĠuserName Ġ= Ġ" Hom er ĠSimp son " ĊĠĠĠĠĠĠĠ Ġval Ġusername Value Ġ= Ġpipeline . value Factory . new String ( userName ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġ[ Bindings . of Map ] Ġcan Ġbe Ġused Ġto Ġconstruct Ġa Ġ[ Bindings ] Ġinstance Ġof ĊĠĠĠĠĠĠĠ Ġ// Ġbindings Ġwith Ġpreviously Ġmaterial ized Ġvalues . ĊĠĠĠĠĠĠĠ Ġval Ġglobal Variables Ġ= ĠBind ings . of Map ( map Of (" user _ name " Ġto Ġusername Value )) ĊĠĠĠĠĠĠĠ Ġprint (" global Ġvariables :", Ġ" user _ name Ġ=> ĠuserName ") ĊĊĠĠĠĠĠĠĠ Ġ// ĠInclude Ġglobal Variables Ġwhen Ġbuilding Ġthe ĠEvaluation Session . ĊĠĠĠĠĠĠĠ Ġval Ġsession Ġ= ĠEvaluation Session . build Ġ{ Ġglobals ( global Variables ) Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// ĠEvaluate Ġthe Ġcompiled Ġexpression Ġwith Ġthe Ġsession Ġcontaining Ġthe Ġglobal Ġvariables . ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġe . eval ( session ) ĊĠĠĠĠĠĠĠ Ġprint (" result ", Ġresult . toString ()) ĊĠĠĠ Ġ} Ċ } Ċ