package jxl.biff.formula;

import common.Assert;
import common.Logger;
import java.util.Stack;
import jxl.WorkbookSettings;
import jxl.biff.IntegerHelper;

/* JADX INFO: loaded from: classes.dex */
public class BuiltInFunction extends Operator implements ParsedThing {
    public static /* synthetic */ Class class$jxl$biff$formula$BuiltInFunction;
    private static Logger logger;
    private Function function;
    private WorkbookSettings settings;

    static {
        Class clsClass$ = class$jxl$biff$formula$BuiltInFunction;
        if (clsClass$ == null) {
            clsClass$ = class$("jxl.biff.formula.BuiltInFunction");
            class$jxl$biff$formula$BuiltInFunction = clsClass$;
        }
        logger = Logger.getLogger(clsClass$);
    }

    public BuiltInFunction(WorkbookSettings workbookSettings) {
        this.settings = workbookSettings;
    }

    public static /* synthetic */ Class class$(String str) {
        try {
            return Class.forName(str);
        } catch (ClassNotFoundException e2) {
            throw new NoClassDefFoundError(e2.getMessage());
        }
    }

    @Override // jxl.biff.formula.ParseItem
    public void adjustRelativeCellReferences(int i2, int i3) {
        for (ParseItem parseItem : getOperands()) {
            parseItem.adjustRelativeCellReferences(i2, i3);
        }
    }

    @Override // jxl.biff.formula.ParseItem
    public void columnInserted(int i2, int i3, boolean z) {
        for (ParseItem parseItem : getOperands()) {
            parseItem.columnInserted(i2, i3, z);
        }
    }

    @Override // jxl.biff.formula.ParseItem
    public void columnRemoved(int i2, int i3, boolean z) {
        for (ParseItem parseItem : getOperands()) {
            parseItem.columnRemoved(i2, i3, z);
        }
    }

    @Override // jxl.biff.formula.ParseItem
    public byte[] getBytes() {
        ParseItem[] operands = getOperands();
        byte[] bArr = new byte[0];
        int i2 = 0;
        while (i2 < operands.length) {
            byte[] bytes = operands[i2].getBytes();
            byte[] bArr2 = new byte[bArr.length + bytes.length];
            System.arraycopy(bArr, 0, bArr2, 0, bArr.length);
            System.arraycopy(bytes, 0, bArr2, bArr.length, bytes.length);
            i2++;
            bArr = bArr2;
        }
        byte[] bArr3 = new byte[bArr.length + 3];
        System.arraycopy(bArr, 0, bArr3, 0, bArr.length);
        bArr3[bArr.length] = !useAlternateCode() ? Token.FUNCTION.getCode() : Token.FUNCTION.getCode2();
        IntegerHelper.getTwoBytes(this.function.getCode(), bArr3, bArr.length + 1);
        return bArr3;
    }

    @Override // jxl.biff.formula.Operator
    public void getOperands(Stack stack) {
        ParseItem[] parseItemArr = new ParseItem[this.function.getNumArgs()];
        for (int numArgs = this.function.getNumArgs() - 1; numArgs >= 0; numArgs--) {
            parseItemArr[numArgs] = (ParseItem) stack.pop();
        }
        for (int i2 = 0; i2 < this.function.getNumArgs(); i2++) {
            add(parseItemArr[i2]);
        }
    }

    @Override // jxl.biff.formula.Operator
    public int getPrecedence() {
        return 3;
    }

    @Override // jxl.biff.formula.ParseItem
    public void getString(StringBuffer stringBuffer) {
        stringBuffer.append(this.function.getName(this.settings));
        stringBuffer.append('(');
        int numArgs = this.function.getNumArgs();
        if (numArgs > 0) {
            ParseItem[] operands = getOperands();
            operands[0].getString(stringBuffer);
            for (int i2 = 1; i2 < numArgs; i2++) {
                stringBuffer.append(',');
                operands[i2].getString(stringBuffer);
            }
        }
        stringBuffer.append(')');
    }

    @Override // jxl.biff.formula.ParseItem
    public void handleImportedCellReferences() {
        for (ParseItem parseItem : getOperands()) {
            parseItem.handleImportedCellReferences();
        }
    }

    @Override // jxl.biff.formula.ParsedThing
    public int read(byte[] bArr, int i2) {
        int i3 = IntegerHelper.getInt(bArr[i2], bArr[i2 + 1]);
        Function function = Function.getFunction(i3);
        this.function = function;
        boolean z = function != Function.UNKNOWN;
        StringBuffer stringBuffer = new StringBuffer();
        stringBuffer.append("function code ");
        stringBuffer.append(i3);
        Assert.verify(z, stringBuffer.toString());
        return 2;
    }

    @Override // jxl.biff.formula.ParseItem
    public void rowInserted(int i2, int i3, boolean z) {
        for (ParseItem parseItem : getOperands()) {
            parseItem.rowInserted(i2, i3, z);
        }
    }

    @Override // jxl.biff.formula.ParseItem
    public void rowRemoved(int i2, int i3, boolean z) {
        for (ParseItem parseItem : getOperands()) {
            parseItem.rowRemoved(i2, i3, z);
        }
    }

    public BuiltInFunction(Function function, WorkbookSettings workbookSettings) {
        this.function = function;
        this.settings = workbookSettings;
    }
}
