EMMA Coverage Report (generated Wed Jun 28 19:54:35 CEST 2006)
[all classes][smallsql.database]

COVERAGE SUMMARY FOR SOURCE FILE [LongLongList.java]

nameclass, %method, %block, %line, %
LongLongList.java100% (1/1)88%  (7/8)72%  (91/127)84%  (21/25)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class LongLongList100% (1/1)88%  (7/8)72%  (91/127)84%  (21/25)
clear (): void 0%   (0/1)0%   (0/4)0%   (0/2)
get1 (int): long 100% (1/1)41%  (11/27)67%  (2/3)
get2 (int): long 100% (1/1)45%  (13/29)67%  (2/3)
LongLongList (): void 100% (1/1)100% (4/4)100% (2/2)
LongLongList (int): void 100% (1/1)100% (9/9)100% (3/3)
add (long, long): void 100% (1/1)100% (32/32)100% (7/7)
resize (int): void 100% (1/1)100% (19/19)100% (4/4)
size (): int 100% (1/1)100% (3/3)100% (1/1)

1/* =============================================================
2 * SmallSQL : a free Java DBMS library for the Java(tm) platform
3 * =============================================================
4 *
5 * (C) Copyright 2004-2006, by Volker Berlin.
6 *
7 * Project Info:  http://www.smallsql.de/
8 *
9 * This library is free software; you can redistribute it and/or modify it 
10 * under the terms of the GNU Lesser General Public License as published by 
11 * the Free Software Foundation; either version 2.1 of the License, or 
12 * (at your option) any later version.
13 *
14 * This library is distributed in the hope that it will be useful, but 
15 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
16 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 
17 * License for more details.
18 *
19 * You should have received a copy of the GNU Lesser General Public
20 * License along with this library; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, 
22 * USA.  
23 *
24 * [Java is a trademark or registered trademark of Sun Microsystems, Inc. 
25 * in the United States and other countries.]
26 *
27 * ---------------
28 * LongLongList.java
29 * ---------------
30 * Author: Volker Berlin
31 * 
32 */
33package smallsql.database;
34 
35/**
36 * A list liek a vector that save 2 long values on on one position.
37 * 
38 * @author Volker Berlin
39 */
40final class LongLongList {
41        private int size;
42        private long[] data;
43 
44        LongLongList(){
45                this(16);
46        }
47        LongLongList(int initialSize){
48                data = new long[initialSize*2];
49        }
50        
51        final int size(){
52                return size;
53        }
54 
55        final long get1(int idx){
56                if (idx >= size)
57                        throw new IndexOutOfBoundsException("Index: "+idx+", Size: "+size);
58                return data[idx << 1];
59        }
60        
61        final long get2(int idx){
62                if (idx >= size)
63                        throw new IndexOutOfBoundsException("Index: "+idx+", Size: "+size);
64                return data[(idx << 1) +1];
65        }
66        
67        final void add(long value1, long value2){
68                int size2 = size << 1;
69                if(size2 >= data.length ){
70                        resize(size2);
71                }
72                data[ size2   ] = value1;
73                data[ size2 +1] = value2;
74                size++;
75        }
76 
77        final void clear(){
78                size = 0;
79        }
80        
81        private final void resize(int newSize){
82                long[] dataNew = new long[newSize << 1];
83                System.arraycopy(data, 0, dataNew, 0, size << 1);
84                data = dataNew;                
85        }
86}

[all classes][smallsql.database]
EMMA 2.1.5320 (stable) (C) Vladimir Roubtsov