EMMA Coverage Report (generated Mon Nov 29 14:43:38 PST 2010)
[all classes][com.jeantessier.text]

COVERAGE SUMMARY FOR SOURCE FILE [Hex.java]

nameclass, %method, %block, %line, %
Hex.java100% (1/1)92%  (11/12)98%  (141/144)94%  (34/36)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class Hex100% (1/1)92%  (11/12)98%  (141/144)94%  (34/36)
Hex (): void 0%   (0/1)0%   (0/3)0%   (0/2)
print (PrintStream, byte []): void 100% (1/1)100% (20/20)100% (3/3)
print (PrintStream, byte): void 100% (1/1)100% (17/17)100% (5/5)
print (PrintStream, int): void 100% (1/1)100% (5/5)100% (2/2)
print (PrintWriter, byte []): void 100% (1/1)100% (20/20)100% (3/3)
print (PrintWriter, byte): void 100% (1/1)100% (17/17)100% (5/5)
print (PrintWriter, int): void 100% (1/1)100% (5/5)100% (2/2)
toHexChar (int): String 100% (1/1)100% (4/4)100% (1/1)
toString (byte []): String 100% (1/1)100% (10/10)100% (3/3)
toString (byte [], StringBuffer): void 100% (1/1)100% (20/20)100% (3/3)
toString (byte, StringBuffer): void 100% (1/1)100% (17/17)100% (5/5)
toString (int, StringBuffer): void 100% (1/1)100% (6/6)100% (2/2)

1/*
2 *  Copyright (c) 2001-2009, Jean Tessier
3 *  All rights reserved.
4 *  
5 *  Redistribution and use in source and binary forms, with or without
6 *  modification, are permitted provided that the following conditions
7 *  are met:
8 *  
9 *      * Redistributions of source code must retain the above copyright
10 *        notice, this list of conditions and the following disclaimer.
11 *  
12 *      * Redistributions in binary form must reproduce the above copyright
13 *        notice, this list of conditions and the following disclaimer in the
14 *        documentation and/or other materials provided with the distribution.
15 *  
16 *      * Neither the name of Jean Tessier nor the names of his contributors
17 *        may be used to endorse or promote products derived from this software
18 *        without specific prior written permission.
19 *  
20 *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 *  A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR
24 *  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 *  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27 *  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28 *  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29 *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30 *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 */
32 
33package com.jeantessier.text;
34 
35import java.io.*;
36 
37public final class Hex {
38    private Hex() {
39        // Do nothing
40    }
41 
42    public static void print(PrintStream out, byte[] bytes) {
43        for (byte b : bytes) {
44            print(out, b);
45        }
46    }
47 
48    public static void print(PrintWriter out, byte[] bytes) {
49        for (byte b : bytes) {
50            print(out, b);
51        }
52    }
53 
54    public static void print(PrintStream out, byte b) {
55        int highBits = (b & 0xF0) >> 4;
56        int lowBits  = (b & 0x0F);
57 
58        print(out, highBits);
59        print(out, lowBits);
60    }
61 
62    public static void print(PrintWriter out, byte b) {
63        int highBits = (b & 0xF0) >> 4;
64        int lowBits  = (b & 0x0F);
65 
66        print(out, highBits);
67        print(out, lowBits);
68    }
69 
70    public static void print(PrintStream out, int n) {
71        out.print(toHexChar(n));
72    }
73 
74    public static void print(PrintWriter out, int n) {
75        out.print(toHexChar(n));
76    }
77 
78    public static String toString(byte[] bytes) {
79        StringBuffer result = new StringBuffer();
80        toString(bytes, result);
81        return result.toString();
82    }
83 
84    private static void toString(byte[] bytes, StringBuffer buffer) {
85        for (byte b : bytes) {
86            toString(b, buffer);
87        }
88    }
89 
90    public static void toString(byte b, StringBuffer buffer) {
91        int highBits = (b & 0xF0) >> 4;
92        int lowBits  = (b & 0x0F);
93 
94        toString(highBits, buffer);
95        toString(lowBits, buffer);
96    }
97 
98    private static void toString(int n, StringBuffer buffer) {
99        buffer.append(toHexChar(n));
100    }
101 
102    public static String toHexChar(int n) {
103        return Integer.toHexString(n).toUpperCase();
104    }
105}

[all classes][com.jeantessier.text]
EMMA 2.0.5312 (C) Vladimir Roubtsov