# All files / src utils.js

100% Statements 43/43
100% Branches 29/29
100% Functions 8/8
100% Lines 38/38

Press n or j to go to the next uncovered block, b, p or k for the previous block.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    611x

    1x
    1x
    1x
    1x
    1x
    1x
    1x

    1x
    60x

    1x
    60x
    55x

    1x
    6x
    6x
    3x
    5x
    3x

    1x
    6827x

    1x
    72x
    206x

    22x

    1x
    4x

    1x
    2x

    1x
    2115x
    2115x
    580x
    153x

    427x
    427x
    1661x

    1962x

     var Utils = {};

    Utils.CARET = "\\xmlClass{cursor}{\\hspace{0pt}}";
    Utils.TEMP_SMALL_CARET = "\\xmlClass{cursor}{\\hspace{0pt}}";
    Utils.TEMP_CARET = "\\xmlClass{cursor}{\\hspace{0pt}}";
    Utils.SMALL_CARET = "\\xmlClass{cursor}{\\hspace{0pt}}";
    Utils.SEL_CARET = "\\xmlClass{cursor}{\\hspace{0pt}}";
    Utils.SMALL_SEL_CARET = "\\xmlClass{cursor}{\\hspace{0pt}}";
    Utils.SEL_COLOR = "red";

    Utils.is_blank = function(n){
        return n.firstChild == null || n.firstChild.nodeValue == '';
    }

    Utils.get_length = function(n){
        if(Utils.is_blank(n) || n.nodeName == 'f') return 0
        return n.firstChild.nodeValue.length;
    }

    Utils.path_to = function(n){
        var name = n.nodeName;
        if(name == "m") return "guppy_loc_m";
        var ns = 0;
        for(var nn = n; nn != null; nn = nn.previousSibling) if(nn.nodeType == 1 && nn.nodeName == name) ns++;
        return Utils.path_to(n.parentNode)+"_"+name+""+ns;
    }

    Utils.is_text = function(nn){
        return nn.parentNode.hasAttribute("mode") && (nn.parentNode.getAttribute("mode") == "text" || nn.parentNode.getAttribute("mode") == "symbol");
    }

    Utils.is_char = function(nn){
        for(var n = nn.firstChild; n; n = n.nextSibling){
    	if(n.nodeName == "c" || n.nodeName == "l") return false;
        }
        return true;
    }

    Utils.is_symbol = function(nn){
        return nn.parentNode.getAttribute("mode") && nn.parentNode.getAttribute("mode") == "symbol";
    }

    Utils.is_utf8entry = function(nn){
        return nn.parentNode.getAttribute("utf8") && nn.parentNode.getAttribute("utf8") == "entry";
    }

    Utils.is_small = function(nn){
        var n = nn.parentNode;
        while(n != null && n.nodeName != 'm'){
            if(n.getAttribute("small") == "yes"){
                return true;
            }
            n = n.parentNode
            while(n != null && n.nodeName != 'c')
                n = n.parentNode;
        }
        return false;
    }

    export default Utils;