001 package railo.runtime.functions.arrays; 002 003 004 import railo.runtime.PageContext; 005 import railo.runtime.exp.ExpressionException; 006 import railo.runtime.exp.PageException; 007 import railo.runtime.functions.BIF; 008 import railo.runtime.op.Caster; 009 import railo.runtime.type.Array; 010 011 public final class ArrayFirst extends BIF { 012 013 private static final long serialVersionUID = 6190330742719202792L; 014 015 public static Object call(PageContext pc , Array array) throws PageException { 016 if(array.size()==0) throw new ExpressionException("Cannot return first element of array; array is empty"); 017 return array.getE(1); 018 } 019 020 @Override 021 public Object invoke(PageContext pc, Object[] args) throws PageException { 022 return call(pc,Caster.toArray(args[0])); 023 } 024 025 }