package org.erlide.engine.services.text; import org.erlide.util.Util; import com.ericsson.otp.erlang.OtpErlangAtom; import com.ericsson.otp.erlang.OtpErlangLong; import com.ericsson.otp.erlang.OtpErlangObject; import com.ericsson.otp.erlang.OtpErlangRangeException; import com.ericsson.otp.erlang.OtpErlangTuple; public class IndentResult { private int removeNext; private boolean addNewLine; private String text; public IndentResult(final String text, final int removeNext, final boolean addNewLine) { super(); this.text = text; this.removeNext = removeNext; this.addNewLine = addNewLine; } public IndentResult(final OtpErlangObject o) { if (o instanceof OtpErlangTuple && !Util.isError(o)) { final OtpErlangTuple t = (OtpErlangTuple) o; final OtpErlangLong l1 = (OtpErlangLong) t.elementAt(1); final OtpErlangAtom b = (OtpErlangAtom) t.elementAt(2); text = Util.stringValue(t.elementAt(0)); try { removeNext = l1.intValue(); } catch (final OtpErlangRangeException e) { removeNext = 0; } addNewLine = b.booleanValue(); } else { addNewLine = false; text = ""; removeNext = 0; } } /** * @return the removeNext */ public int getRemoveNext() { return removeNext; } /** * @return the addNewLine */ public boolean isAddNewLine() { return addNewLine; } /** * @return the text */ public String getText() { return text; } }