<commit_before>"use strict";
/**
 * Copyright (c) 2012, <NAME> <EMAIL>, http://graphicore.de
 * 
 * You should have received a copy of the MIT License along with this program.
 * If not, see http://www.opensource.org/licenses/mit-license.php
 * 
 * This is a port of glifLib.GLIFPointPen defined in
 * robofab/branches/ufo3k/Lib/ufoLib/gliflib.py
 * 
 */ 
 
define(
    [
        'ufojs',
        'ufojs/errors',
        'ufojs/xml/main',
        'AbstractPointPen',
        'ufojs/ufoLib/validators',
        './constants'
    ],
    function(
        main,
        errors,
        xml,
        AbstractPointPen,
        validators,
        constants
    ) 
{
    //shortcuts
    var enhance = main.enhance,
        isNumber = main.isNumber,
        assert = errors.assert,
        GlifLibError = errors.GlifLib,
        identifierValidator = validators.identifierValidator,
        transformationInfo = constants.transformationInfo;
    
    /*constructor*/
    
    /**
     * Helper class using the PointPen protocol to write the <outline>
     * part of .glif files.
     */
    function GLIFPointPen(
        element /* DOM Element*/,
        identifiers /* dict optional */,
        formatVersion /*default 2*/
    ) {
        this.document = element.ownerDocument;
        this.element = element;
        this.formatVersion = formatVersion === undefined ? 2 : formatVersion;
        this.identifiers = identifiers || {};
        
        this.prevPointTypes = [];
        this.prevOffCurveCount = 0;
        this._currentPath = null;
    }
    
    /*inheritance*/
    GLIFPointPen.prototype = new AbstractPointPen();
    <commit_msg>better inheritance<commit_after>"use strict";
/**
 * Copyright (c) 2012, <NAME> <EMAIL>, http://graphicore.de
 * 
 * You should have received a copy of the MIT License along with this program.
 * If not, see http://www.opensource.org/licenses/mit-license.php
 * 
 * This is a port of glifLib.GLIFPointPen defined in
 * robofab/branches/ufo3k/Lib/ufoLib/gliflib.py
 * 
 */ 
 
define(
    [
        'ufojs',
        'ufojs/errors',
        'ufojs/xml/main',
        'AbstractPointPen',
        'ufojs/ufoLib/validators',
        './constants'
    ],
    function(
        main,
        errors,
        xml,
        AbstractPointPen,
        validators,
        constants
    ) 
{
    //shortcuts
    var enhance = main.enhance,
        isNumber = main.isNumber,
        assert = errors.assert,
        GlifLibError = errors.GlifLib,
        identifierValidator = validators.identifierValidator,
        transformationInfo = constants.transformationInfo;
    
    /*constructor*/
    
    /**
     * Helper class using the PointPen protocol to write the <outline>
     * part of .glif files.
     */
    function GLIFPointPen(
        element /* DOM Element*/,
        identifiers /* dict optional */,
        formatVersion /*default 2*/
    ) {
        this.document = element.ownerDocument;
        this.element = element;
        this.formatVersion = formatVersion === undefined ? 2 : formatVersion;
        this.identifiers = identifiers || {};
        
        this.prevPointTypes = [];
        this.prevOffCurveCount = 0;
        this._currentPath = null;
    }
    
    /*inheritance*/
    GLIFPointPen.prototype = Object.create(AbstractPointPen.prototype);
    
{'fraction_non_alphanumeric': 0.1094316807738815, 'fraction_numerical': 0.0048367593712212815, 'mean_word_length': 2.061054579093432, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 4}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7130513', 'n_tokens_mistral': 985, 'n_tokens_neox': 964, 'n_words': 218}