<commit_before>/**
 * ResolveCompiler.java
 * ---------------------------------
 * Copyright (c) 2016
 * RESOLVE Software Research Group
 * School of Computing
 * Clemson University
 * All rights reserved.
 * ---------------------------------
 * This file is subject to the terms and conditions defined in
 * file 'LICENSE.txt', which is part of this source code package.
 */
package edu.clemson.cs.rsrg.init;

import edu.clemson.cs.r2jt.archiving.Archiver;
import edu.clemson.cs.r2jt.congruenceclassprover.CongruenceClassProver;
import edu.clemson.cs.r2jt.rewriteprover.AlgebraicProver;
import edu.clemson.cs.r2jt.rewriteprover.Prover;
import edu.clemson.cs.r2jt.rewriteprover.ProverListener;
import edu.clemson.cs.r2jt.translation.CTranslator;
import edu.clemson.cs.r2jt.translation.JavaTranslator;
import edu.clemson.cs.r2jt.vcgeneration.VCGenerator;
import edu.clemson.cs.rsrg.statushandling.StdErrHandler;
import edu.clemson.cs.rsrg.statushandling.StatusHandler;
import edu.clemson.cs.rsrg.statushandling.exception.CompilerException;
import edu.clemson.cs.rsrg.statushandling.exception.FlagDependencyException;
import edu.clemson.cs.rsrg.statushandling.exception.MiscErrorException;
import edu.clemson.cs.rsrg.init.file.ModuleType;
import edu.clemson.cs.rsrg.init.file.ResolveFile;
import edu.clemson.cs.rsrg.init.flag.Flag;
import edu.clemson.cs.rsrg.init.flag.FlagDependencies;
import edu.clemson.cs.rsrg.misc.Utilities;
import edu.clemson.cs.rsrg.typeandpopulate.symboltables.MathSymbolTableBuilder;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.*;

/**
 * <p>This class takes care of all argument processing and creates
 * a <code>CompileEnvironment</code> for the current job.</p>
 *
 * @author <NAME>
 * @author <NAME>
 * @version 1.0
 */
public class ResolveCompiler {

    // ===========================================================
    // Member Fields
    // ===========================================================

    /**
     * <p>This stores all the arguments received by the RESOLVE
     * compiler.</p>
     */
    private final String[] myCompilerArgs;

    /**
     * <p>This indicates the current compiler version.</p>
     */
    private final String myCompilerVersion = "Summer 2016";

    /**
     * <p>This stores all the file names specified in the argument
     * list.</p>
     */
    private final List<String> myArgumentFileList;

    // ===========================================================
    // Flag Strings
    // ===========================================================

    private static final String FLAG_DESC_DEBUG =
            "Print debugging statements from the compiler output.";
    private static final String FLAG_DESC_EXPORT_AST =
            "exports the AST for the target file as a .dot file that can be viewed in Graphviz";
    private static final String FLAG_DESC_WORKSPACE_DIR =
            "Changes the workspace directory path.";
    private static final String FLAG_SECTION_GENERAL = "General";
    private static final String FLAG_SECTION_NAME = "Output";

    private static final String[] WORKSPACE_DIR_ARG_NAME = { "Path" };

    // ===========================================================
    // Flags
    // ===========================================================<commit_msg>This is actually a Fall 2016 build<commit_after>/**
 * ResolveCompiler.java
 * ---------------------------------
 * Copyright (c) 2016
 * RESOLVE Software Research Group
 * School of Computing
 * Clemson University
 * All rights reserved.
 * ---------------------------------
 * This file is subject to the terms and conditions defined in
 * file 'LICENSE.txt', which is part of this source code package.
 */
package edu.clemson.cs.rsrg.init;

import edu.clemson.cs.r2jt.archiving.Archiver;
import edu.clemson.cs.r2jt.congruenceclassprover.CongruenceClassProver;
import edu.clemson.cs.r2jt.rewriteprover.AlgebraicProver;
import edu.clemson.cs.r2jt.rewriteprover.Prover;
import edu.clemson.cs.r2jt.rewriteprover.ProverListener;
import edu.clemson.cs.r2jt.translation.CTranslator;
import edu.clemson.cs.r2jt.translation.JavaTranslator;
import edu.clemson.cs.r2jt.vcgeneration.VCGenerator;
import edu.clemson.cs.rsrg.statushandling.StdErrHandler;
import edu.clemson.cs.rsrg.statushandling.StatusHandler;
import edu.clemson.cs.rsrg.statushandling.exception.CompilerException;
import edu.clemson.cs.rsrg.statushandling.exception.FlagDependencyException;
import edu.clemson.cs.rsrg.statushandling.exception.MiscErrorException;
import edu.clemson.cs.rsrg.init.file.ModuleType;
import edu.clemson.cs.rsrg.init.file.ResolveFile;
import edu.clemson.cs.rsrg.init.flag.Flag;
import edu.clemson.cs.rsrg.init.flag.FlagDependencies;
import edu.clemson.cs.rsrg.misc.Utilities;
import edu.clemson.cs.rsrg.typeandpopulate.symboltables.MathSymbolTableBuilder;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.*;

/**
 * <p>This class takes care of all argument processing and creates
 * a <code>CompileEnvironment</code> for the current job.</p>
 *
 * @author <NAME>
 * @author <NAME>
 * @version 1.0
 */
public class ResolveCompiler {

    // ===========================================================
    // Member Fields
    // ===========================================================

    /**
     * <p>This stores all the arguments received by the RESOLVE
     * compiler.</p>
     */
    private final String[] myCompilerArgs;

    /**
     * <p>This indicates the current compiler version.</p>
     */
    private final String myCompilerVersion = "Fall 2016";

    /**
     * <p>This stores all the file names specified in the argument
     * list.</p>
     */
    private final List<String> myArgumentFileList;

    // ===========================================================
    // Flag Strings
    // ===========================================================

    private static final String FLAG_DESC_DEBUG =
            "Print debugging statements from the compiler output.";
    private static final String FLAG_DESC_EXPORT_AST =
            "exports the AST for the target file as a .dot file that can be viewed in Graphviz";
    private static final String FLAG_DESC_WORKSPACE_DIR =
            "Changes the workspace directory path.";
    private static final String FLAG_SECTION_GENERAL = "General";
    private static final String FLAG_SECTION_NAME = "Output";

    private static final String[] WORKSPACE_DIR_ARG_NAME = { "Path" };

    // ===========================================================
    // Flags
    // ===========================================================
{'fraction_non_alphanumeric': 0.21445710857828434, 'fraction_numerical': 0.00599880023995201, 'mean_word_length': 3.811688311688312, 'pattern_counts': {'":': 0, '<': 29, '<?xml version=': 0, '>': 29, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, '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': '5215257', 'n_tokens_mistral': 2025, 'n_tokens_neox': 1913, 'n_words': 444}