package com.l7tech.xml.xpath;

import net.sf.saxon.s9api.SaxonApiException;
import net.sf.saxon.s9api.XdmAtomicValue;
import net.sf.saxon.s9api.XdmValue;

class ad extends XpathResult.MultiValuedXpathResultAdapter {
   final short val$type;
   final XdmAtomicValue val$firstValue;
   final XdmValue val$result;

   ad(short var1, XdmAtomicValue var2, XdmValue var3) {
      this.val$type = var1;
      this.val$firstValue = var2;
      this.val$result = var3;
   }

   @Override
   public short getType() {
      return this.val$type;
   }

   @Override
   public String getString() {
      return this.val$firstValue.getStringValue();
   }

   @Override
   public boolean getBoolean() {
      try {
         return this.val$firstValue.getBooleanValue();
      } catch (SaxonApiException var2) {
         return false;
      }
   }

   @Override
   public Number getNumber() {
      return this.val$firstValue.getValue() instanceof Number ? (Number)this.val$firstValue.getValue() : 0;
   }

   @Override
   public XpathResultValueSet getValueSet() {
      return DomCompiledXpath.a(this.val$result, this.val$type);
   }

   @Override
   public String[] getStringArray() {
      return this.getValueSet().getStringArray();
   }

   @Override
   public Boolean[] getBooleanArray() {
      return this.getValueSet().getBooleanArray();
   }

   @Override
   public Number[] getNumberArray() {
      return this.getValueSet().getNumberArray();
   }
}
