01: /* ====================================================================
02: Licensed to the Apache Software Foundation (ASF) under one or more
03: contributor license agreements. See the NOTICE file distributed with
04: this work for additional information regarding copyright ownership.
05: The ASF licenses this file to You under the Apache License, Version 2.0
06: (the "License"); you may not use this file except in compliance with
07: the License. You may obtain a copy of the License at
08:
09: http://www.apache.org/licenses/LICENSE-2.0
10:
11: Unless required by applicable law or agreed to in writing, software
12: distributed under the License is distributed on an "AS IS" BASIS,
13: WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: See the License for the specific language governing permissions and
15: limitations under the License.
16: ==================================================================== */
17:
18: /*
19: * AddPtg.java
20: *
21: * Created on October 29, 2001, 7:48 PM
22: */
23: package org.apache.poi.hssf.record.formula;
24:
25: import org.apache.poi.hssf.model.Workbook;
26: import org.apache.poi.hssf.record.RecordInputStream;
27:
28: /**
29: * Addition operator PTG the "+" binomial operator. If you need more
30: * explanation than that then well...We really can't help you here.
31: * @author Andrew C. Oliver (acoliver@apache.org)
32: * @author Jason Height (jheight at chariot dot net dot au)
33: */
34:
35: public class AddPtg extends OperationPtg {
36: public final static int SIZE = 1;
37: public final static byte sid = 0x03;
38:
39: private final static String ADD = "+";
40:
41: /** Creates new AddPtg */
42:
43: public AddPtg() {
44: }
45:
46: public AddPtg(RecordInputStream in) {
47:
48: // doesn't need anything
49: }
50:
51: public void writeBytes(byte[] array, int offset) {
52: array[offset + 0] = sid;
53: }
54:
55: public int getSize() {
56: return SIZE;
57: }
58:
59: public int getType() {
60: return TYPE_BINARY;
61: }
62:
63: public int getNumberOfOperands() {
64: return 2;
65: }
66:
67: /** Implementation of method from Ptg */
68: public String toFormulaString(Workbook book) {
69: return "+";
70: }
71:
72: /** implementation of method from OperationsPtg*/
73: public String toFormulaString(String[] operands) {
74: StringBuffer buffer = new StringBuffer();
75:
76: buffer.append(operands[0]);
77: buffer.append(ADD);
78: buffer.append(operands[1]);
79: return buffer.toString();
80: }
81:
82: public byte getDefaultOperandClass() {
83: return Ptg.CLASS_VALUE;
84: }
85:
86: public Object clone() {
87: return new AddPtg();
88: }
89:
90: }
|