Package org.jostraca

Source Code of org.jostraca.DefaultPropertySets

/*
* Name:    DefaultPropertySets
* Authors: Richard Rodger
*
* Copyright (c) 2002-2004 Richard Rodger
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published
* by the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
*/


// package
package org.jostraca;


// import
import org.jostraca.util.PropertySet;
import org.jostraca.util.PropertySetManager;
import org.jostraca.util.OrderedPropertySetManager;

import java.util.Vector;
import java.util.Hashtable;



/**
*  Default Jostraca configuration. Used if conf files cannot be found.
*/
public class DefaultPropertySets {

  // public methods

  public static final OrderedPropertySetManager makeStandardOrder() {
    Vector names = new Vector();
    names.addElement( Service.CONF_system   );
    names.addElement( Service.CONF_lang     );
    names.addElement( Service.CONF_local    );
    names.addElement( Service.CONF_template );
    names.addElement( Service.CONF_cmdline  );
    names.addElement( Service.CONF_override  );

    Hashtable   defps = new Hashtable();
    defps.put( Service.CONF_system,   new PropertySet() );
    defps.put( Service.CONF_lang,     new PropertySet() );
    defps.put( Service.CONF_local,    new PropertySet() );
    defps.put( Service.CONF_template, new PropertySet() );
    defps.put( Service.CONF_cmdline,  new PropertySet() );
    defps.put( Service.CONF_override, new PropertySet() );

    return new OrderedPropertySetManager( names, defps );
  }


  public static final PropertySetManager makeLang() {
    Hashtable defps = new Hashtable();
    defps.put( "java",   makeLangPS_java()   );
    defps.put( "perl",   makeLangPS_perl()   );
    defps.put( "python", makeLangPS_python() );
    defps.put( "ruby",   makeLangPS_ruby()   );
    defps.put( "c",      makeLangPS_c()      );
    defps.put( "rebol",  makeLangPS_rebol()  );
    defps.put( "jython", makeLangPS_jython() );
    defps.put( "javascript", makeLangPS_javascript() );
    return new PropertySetManager( defps );
  }

  public static final PropertySet makeSystemPropertySet() {
    PropertySet ps = new PropertySet();
   
    ps.set( "parse.SectionMarker", "!" );
   
    ps.set( "java.implements", "" );
   
    ps.set( "lang.TemplateInsertTransforms", "$<jostraca.standard.TemplateInsertTransforms>" );
   
    ps.set( "parse.OpenOuterChar", "<" );
   
    ps.set( "lang.FalseString", "false" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.jscript", "$<jostraca.TemplateScript.CanonicalName.javascript>" );
   
    ps.set( "jostraca.regexp.SubmatchAnyWhiteSpaceAnyCharsAtEnd", "(\\s*.*)$" );
   
    ps.set( "main.WorkFolder", ".jostraca" );
   
    ps.set( "main.FileNameRoot", "GeneratedFile" );
   
    ps.set( "parse.regexp.OpenOuterChar", "$<parse.OpenOuterChar>" );
   
    ps.set( "main.CodeWriterTransform.script", "AppendNewLineTransform" );
   
    ps.set( "jostraca.regexp.AnyWhiteSpaceAtStart", "^\\s*" );
   
    ps.set( "jostraca.regexp.IsExpression", "$<jostraca.regexp.AnyWhiteSpaceAtStart>$<parse.regexp.ExpressionMarker>" );
   
    ps.set( "jostraca.regexp.IsDirective", "$<jostraca.regexp.AnyWhiteSpaceAtStart>$<parse.regexp.DirectiveMarker>" );
   
    ps.set( "parse.OpenInnerChar", "%" );
   
    ps.set( "lang.section.all.Modifiers", "BlockIndenter" );
   
    ps.set( "jostraca.system.pathSeparator", "" );
   
    ps.set( "main.FullMetaPath", "no" );
   
    ps.set( "parse.regexp.OpenInnerChar", "$<parse.OpenInnerChar>" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.jy", "$<jostraca.TemplateScript.CanonicalName.jython>" );
   
    ps.set( "main.SaveCodeWriter", "yes" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.jv", "$<jostraca.TemplateScript.CanonicalName.java>" );
   
    ps.set( "parse.regexp.SectionMarker", "$<parse.SectionMarker>" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.js", "$<jostraca.TemplateScript.CanonicalName.javascript>" );
   
    ps.set( "jostraca.standard.TemplateScriptTransforms", "AppendNewLineTransform" );
   
    ps.set( "lang.InsertPrefix", "_insert(" );
   
    ps.set( "lang.CommentLineSuffix", "" );
   
    ps.set( "main.TemplatePath", "$<main.DefaultTemplatePath>" );
   
    ps.set( "java.extends", "" );
   
    ps.set( "lang.TrueString", "true" );
   
    ps.set( "main.TemplateScript", "" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.javascript", "javascript" );
   
    ps.set( "main.EnableMeta", "yes" );
   
    ps.set( "main.CodeWriter.argument.name.MetaPropFile", "p=" );
   
    ps.set( "main.ExternalCompilerOptions", "" );
   
    ps.set( "jostraca.Location", ".." );
   
    ps.set( "parse.Directives", "$<jostraca.standard.Directives>, InsertSectionDirective, ReplaceDirective, ReplaceRegExpDirective" );
   
    ps.set( "main.DumpPropertySet", "no" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.perl", "perl" );
   
    ps.set( "java.CodeWriter.extends", "$<java.extends>" );
   
    ps.set( "jostraca.standard.TemplateDirectiveTransforms", "" );
   
    ps.set( "main.ExecuteCodeWriter", "" );
   
    ps.set( "main.CodeWriterTransform.expr", "ExpressionElementTransform, AppendNewLineTransform" );
   
    ps.set( "main.ExternalControllerOptions", "" );
   
    ps.set( "main.OutputLang", "" );
   
    ps.set( "main.CodeWriter.argument.name.OutputFolder", "o=" );
   
    ps.set( "lang.InsertSuffix", ");" );
   
    ps.set( "jostraca.template.path", "" );
   
    ps.set( "main.CodeWriterTransform.insert-section", "InsertSectionTransform" );
   
    ps.set( "main.FileNamePrefix", "" );
   
    ps.set( "lang.StringEscapeTransform", "JavaStringEscapeTransform" );
   
    ps.set( "jostraca.system.fileSeparator", "" );
   
    ps.set( "main.BackupPrefix", "-" );
   
    ps.set( "parse.regexp.ExpressionMarker", "$<parse.ExpressionMarker>" );
   
    ps.set( "jostraca.RegExpProvider", "org.jostraca.util.GnuRegExpProvider" );
   
    ps.set( "main.CodeWriter.argument.name.BackupFolder", "b=" );
   
    ps.set( "jostraca.regexp.template.IncludeDirective", "$<parse.regexp.OpenOuterChar>$<parse.regexp.OpenInnerChar>\\s*$<parse.regexp.DirectiveMarker>\\s*include\\s+(\".+?\"|[^ ]+)\\s*([a-z- ]*)\\s*$<parse.regexp.CloseInnerChar>$<parse.regexp.CloseOuterChar>" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.rebol", "rebol" );
   
    ps.set( "parse.CloseOuterChar", ">" );
   
    ps.set( "jostraca.MakeBackup", "" );
   
    ps.set( "main.CompileCodeWriter", "" );
   
    ps.set( "java.ClassPathPrefix", "" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.jython", "jython" );
   
    ps.set( "jostraca.template.name", "" );
   
    ps.set( "main.IncludeBase", "" );
   
    ps.set( "jostraca.ConfigFolder", "$<jostraca.Location>/conf" );
   
    ps.set( "main.FileNameSuffix", ".java" );
   
    ps.set( "lang.CodeWriterTransforms", "SimpleIndentTransform" );
   
    ps.set( "jostraca.standard.Directives", "SectionDirective, InitDirective, OneLineDirective, CollapseWhiteSpaceDirective" );
   
    ps.set( "main.BackupFolder", "$<main.WorkFolder>" );
   
    ps.set( "parse.CloseInnerChar", "%" );
   
    ps.set( "jostraca.regexp.template.IncludeBlockDirective", "$<parse.regexp.OpenOuterChar>$<parse.regexp.OpenInnerChar>\\s*$<parse.regexp.DirectiveMarker>\\s*include-block\\s+[\\\"']?(.+?)[\\\"']?\\s+/(.+?)/\\s*$<parse.regexp.CloseInnerChar>$<parse.regexp.CloseOuterChar>" );
   
    ps.set( "fs", "$<jostraca.system.fileSeparator>" );
   
    ps.set( "parse.regexp.DeclarationMarker", "$<parse.DeclarationMarker>" );
   
    ps.set( "main.BackupSuffix", "-backup.txt" );
   
    ps.set( "main.OutputFolder", "." );
   
    ps.set( "main.CodeWriterIsController", "no" );
   
    ps.set( "main.ExternalCompiler", "javac" );
   
    ps.set( "lang.TextQuote", "\"" );
   
    ps.set( "java.package", "" );
   
    ps.set( "jostraca.standard.TemplateInsertTransforms", "$<lang.StringEscapeTransform>, TextElementTransform, AppendNewLineTransform" );
   
    ps.set( "jostraca.regexp.SubmatchDirectiveName", "([a-zA-Z/_|\\.-][0-9a-zA-Z/_|\\.-]*)" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.rb", "$<jostraca.TemplateScript.CanonicalName.ruby>" );
   
    ps.set( "lang.CommentBlockPrefix", "/*" );
   
    ps.set( "main.CodeWriterTransform.text", "$<lang.StringEscapeTransform>, TextElementTransform, AppendNewLineTransform" );
   
    ps.set( "jostraca.standard.TemplateExpressionTransforms", "ExpressionElementTransform, AppendNewLineTransform" );
   
    ps.set( "main.DefaultTemplateScript", "java" );
   
    ps.set( "jostraca.strict.version", "yes" );
   
    ps.set( "parse.regexp.DirectiveMarker", "$<parse.DirectiveMarker>" );
   
    ps.set( "jostraca.regexp.AnyWhiteSpace", "\\s*" );
   
    ps.set( "java.ClassPathSuffix", "" );
   
    ps.set( "main.CodeWriter.throwExceptions", "no" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.ecmascript", "$<jostraca.TemplateScript.CanonicalName.javascript>" );
   
    ps.set( "jostraca.FormatFolder", "$<jostraca.Location>/format" );
   
    ps.set( "main.MakeBackup", "yes" );
   
    ps.set( "java.CodeWriter.package", "$<java.package>" );
   
    ps.set( "main.MetaFolder", "$<main.WorkFolder>" );
   
    ps.set( "main.process.Controller", "org.jostraca.process.InternalJavaController" );
   
    ps.set( "lang.TemplateScriptTransforms", "$<jostraca.standard.TemplateScriptTransforms>" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.py", "$<jostraca.TemplateScript.CanonicalName.python>" );
   
    ps.set( "java.ClassPath", "" );
   
    ps.set( "main.CodeWriter", "" );
   
    ps.set( "ps", "$<jostraca.system.pathSeparator>" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.pl", "$<jostraca.TemplateScript.CanonicalName.perl>" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.java", "java" );
   
    ps.set( "jostraca.regexp.MatchDirective", "$<jostraca.regexp.AnyWhiteSpaceAtStart>$<parse.regexp.DirectiveMarker>$<jostraca.regexp.AnyWhiteSpace>$<jostraca.regexp.SubmatchDirectiveName>$<jostraca.regexp.SubmatchAnyWhiteSpaceAnyCharsAtEnd>" );
   
    ps.set( "jostraca.regexp.MatchExpression", "$<jostraca.regexp.AnyWhiteSpaceAtStart>$<parse.regexp.ExpressionMarker>$<jostraca.regexp.SubmatchAnyWhiteSpaceAnyCharsAtEnd>" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "lang.CommentBlockSuffix", "*/" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.r", "$<jostraca.TemplateScript.CanonicalName.rebol>" );
   
    ps.set( "main.CodeWriterPrefix", "" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "o", "$<~parse.OpenOuterChar>$<~parse.OpenInnerChar>" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.c", "c" );
   
    ps.set( "lang.HasExecutable", "true" );
   
    ps.set( "c", "$<~parse.CloseInnerChar>$<~parse.CloseOuterChar>" );
   
    ps.set( "main.TemplateParser", "org.jostraca.BasicTemplateParser" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.ruby", "ruby" );
   
    ps.set( "parse.regexp.CloseOuterChar", "$<parse.CloseOuterChar>" );
   
    ps.set( "parse.DeclarationMarker", "!" );
   
    ps.set( "lang.TemplateDirectiveTransforms", "$<jostraca.standard.TemplateDirectiveTransforms>" );
   
    ps.set( "java.ClassFolder", "" );
   
    ps.set( "jostraca.properties.modifiers", "org.jostraca.util.PrefixOperatorPSM" );
   
    ps.set( "main.CodeWriterSuffix", ".java" );
   
    ps.set( "main.ShowDocumentation", "no" );
   
    ps.set( "jostraca.version", "0.3" );
   
    ps.set( "jostraca.template.folder", "" );
   
    ps.set( "parse.DirectiveMarker", "@" );
   
    ps.set( "main.CodeWriterOptions", "" );
   
    ps.set( "parse.regexp.CloseInnerChar", "$<parse.CloseInnerChar>" );
   
    ps.set( "jostraca.regexp.template.ConfDirective", "$<parse.regexp.OpenOuterChar>$<parse.regexp.OpenInnerChar>\\s*$<parse.regexp.DirectiveMarker>\\s*conf\\s+(.+?)\\s*$<parse.regexp.CloseInnerChar>$<parse.regexp.CloseOuterChar>" );
   
    ps.set( "main.CodeWriterFormat", "BasicJavaWriterFormat.jwf" );
   
    ps.set( "main.DumpTemplate", "no" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Compiler,Controller" );
   
    ps.set( "jostraca.standard.TemplateTextTransforms", "" );
   
    ps.set( "main.CodeWriter.argument.ControlPrefix", "jsa:" );
   
    ps.set( "parse.ExpressionMarker", "=" );
   
    ps.set( "jostraca.regexp.MatchSectionName", "$<jostraca.regexp.AnyWhiteSpaceAtStart>$<jostraca.regexp.SubmatchSectionName>$<parse.regexp.SectionMarker>$<jostraca.regexp.SubmatchAnyWhiteSpaceAnyCharsAtEnd>" );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "jostraca.LocalConfigFileName", "local.conf" );
   
    ps.set( "jostraca.regexp.template.IncludeBaseDirective", "$<parse.regexp.OpenOuterChar>$<parse.regexp.OpenInnerChar>\\s*$<parse.regexp.DirectiveMarker>\\s*include-base\\s+[\\\"']?(.+?)[\\\"']?\\s*$<parse.regexp.CloseInnerChar>$<parse.regexp.CloseOuterChar>" );
   
    ps.set( "jostraca.regexp.MatchDeclaration", "$<jostraca.regexp.AnyWhiteSpaceAtStart>$<parse.regexp.DeclarationMarker>$<jostraca.regexp.SubmatchAnyWhiteSpaceAnyCharsAtEnd>" );
   
    ps.set( "lang.TemplateExpressionTransforms", "$<jostraca.standard.TemplateExpressionTransforms>" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "main.ExternalController", "java" );
   
    ps.set( "main.DefaultTemplatePath", "$<jostraca.Location>/templates/src" );
   
    ps.set( "main.CodeWriter.argument.name.NoBackup", "B" );
   
    ps.set( "jostraca.regexp.SubmatchSectionName", "([a-zA-Z_\\.-][0-9a-zA-Z_\\.-]*)" );
   
    ps.set( "jostraca.TemplateScript.CanonicalName.python", "python" );
   
    ps.set( "main.process.Compiler", "org.jostraca.process.JavaCompiler" );
   
    ps.set( "lang.CommentLinePrefix", "//" );
   
    ps.set( "lang.TemplateTextTransforms", "$<jostraca.standard.TemplateTextTransforms>" );
   
    ps.set( "java.CodeWriter.implements", "$<java.implements>" );
   
    return ps;
  }




  // private methods

  private static final PropertySet makeLangPS_java() {
    PropertySet ps = new PropertySet();
   
    return ps;
  }

  private static final PropertySet makeLangPS_perl() {
    PropertySet ps = new PropertySet();
   
    ps.set( "lang.InsertPrefix", "$self->_insert( " );
   
    ps.set( "main.CodeWriterFormat", "BasicPerlWriterFormat.jwf" );
   
    ps.set( "main.process.Controller", "org.jostraca.process.GenericController" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "main.CodeWriterSuffix", ".pl" );
   
    ps.set( "main.ExternalCompilerOptions", "-c" );
   
    ps.set( "main.CodeWriterController", "org.jostraca.BasicPerlCodeWriterController" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "main.CompileCodeWriter", "no" );
   
    ps.set( "lang.FalseString", "0" );
   
    ps.set( "lang.StringEscapeTransform", "PerlStringEscapeTransform" );
   
    ps.set( "main.ExternalController", "perl" );
   
    ps.set( "lang.TrueString", "1" );
   
    ps.set( "main.process.Compiler", "org.jostraca.process.GenericCompiler" );
   
    ps.set( "lang.HasExecutable", "false" );
   
    ps.set( "main.ExternalCompiler", "perl" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Compiler,Controller" );
   
    ps.set( "main.CodeWriterCompiler", "org.jostraca.BasicPerlCodeWriterCompiler" );
   
    ps.set( "main.FullMetaPath", "yes" );
   
    ps.set( "main.ExternalControllerOptions", "" );
   
    return ps;
  }

  private static final PropertySet makeLangPS_python() {
    PropertySet ps = new PropertySet();
   
    ps.set( "lang.InsertPrefix", "_py_insert(self, " );
   
    ps.set( "main.CodeWriterFormat", "BasicPythonWriterFormat.jwf" );
   
    ps.set( "main.ExecuteCodeWriter", "yes" );
   
    ps.set( "lang.section.all.Modifiers", "PythonIndenter, BlockIndenter" );
   
    ps.set( "main.process.Controller", "org.jostraca.process.GenericController" );
   
    ps.set( "python.nonStatementLineRegExp", "^[ \t]*(#.*)?$" );
   
    ps.set( "lang.NameValueList.nameQuote", "\"" );
   
    ps.set( "lang.TemplateScriptTransforms", "AppendNewLineTransform" );
   
    ps.set( "python.controlFlowRegExp", ":[ \t]*(#.*)?$" );
   
    ps.set( "lang.InsertSuffix", " )" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "main.CodeWriterSuffix", ".py" );
   
    ps.set( "main.ExternalCompilerOptions", "" );
   
    ps.set( "main.CodeWriterController", "org.jostraca.BasicCodeWriterController" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "main.CompileCodeWriter", "no" );
   
    ps.set( "lang.FalseString", "0" );
   
    ps.set( "lang.NameValueList.pairSeparator", "," );
   
    ps.set( "lang.StringEscapeTransform", "CStringEscapeTransform" );
   
    ps.set( "main.ExternalController", "python" );
   
    ps.set( "lang.TrueString", "1" );
   
    ps.set( "lang.HasExecutable", "false" );
   
    ps.set( "lang.CodeWriterTransforms", "" );
   
    ps.set( "python.standardIndent", "  " );
   
    ps.set( "main.ExternalCompiler", "" );
   
    ps.set( "python.tabAsSpaces", "        " );
   
    ps.set( "lang.NameValueList.itemSeparator", ":" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Controller" );
   
    ps.set( "lang.NameValueList.valueQuote", "\"" );
   
    ps.set( "main.CodeWriterCompiler", "org.jostraca.BasicCodeWriterCompiler" );
   
    ps.set( "main.FullMetaPath", "yes" );
   
    ps.set( "main.ExternalControllerOptions", "" );
   
    return ps;
  }

  private static final PropertySet makeLangPS_ruby() {
    PropertySet ps = new PropertySet();
   
    ps.set( "main.process.Controller", "org.jostraca.process.GenericController" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "lang.CodeWriterTransforms", "" );
   
    ps.set( "main.ExecuteCodeWriter", "yes" );
   
    ps.set( "main.CodeWriterController", "org.jostraca.BasicCodeWriterController" );
   
    ps.set( "lang.HasExecutable", "false" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Controller" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "main.ExternalControllerOptions", "" );
   
    ps.set( "main.CodeWriterFormat", "BasicRubyWriterFormat.jwf" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "main.CodeWriterSuffix", ".rb" );
   
    ps.set( "main.ExternalController", "ruby" );
   
    ps.set( "main.CodeWriterCompiler", "org.jostraca.BasicCodeWriterCompiler" );
   
    ps.set( "main.ExternalCompiler", "ruby" );
   
    ps.set( "main.ExternalCompilerOptions", "-c" );
   
    return ps;
  }

  private static final PropertySet makeLangPS_c() {
    PropertySet ps = new PropertySet();
   
    ps.set( "main.CodeWriterFormat", "BasicCWriterFormat.jwf" );
   
    ps.set( "main.ExecuteCodeWriter", "yes" );
   
    ps.set( "main.CodeWriterIsController", "yes" );
   
    ps.set( "main.process.Controller", "org.jostraca.process.CController" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "main.CodeWriterSuffix", ".c" );
   
    ps.set( "main.ExternalCompilerOptions", "-o $<main.WorkFolder>$<fs>$<main.CodeWriter>" );
   
    ps.set( "main.CodeWriterController", "org.jostraca.BasicCCodeWriterController" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "lang.FalseString", "0" );
   
    ps.set( "main.ExternalController", "$<main.WorkFolder>$<fs>$<main.CodeWriter>" );
   
    ps.set( "lang.StringEscapeTransform", "CStringEscapeTransform" );
   
    ps.set( "main.process.Compiler", "org.jostraca.process.GenericCompiler" );
   
    ps.set( "lang.TrueString", "1" );
   
    ps.set( "lang.HasExecutable", "true" );
   
    ps.set( "main.ExternalCompiler", "gcc" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Compiler,Controller" );
   
    ps.set( "main.CodeWriterCompiler", "org.jostraca.BasicCCodeWriterCompiler" );
   
    ps.set( "main.ExternalControllerOptions", "" );
   
    return ps;
  }

  private static final PropertySet makeLangPS_rebol() {
    PropertySet ps = new PropertySet();
   
    ps.set( "lang.InsertPrefix", "_insert " );
   
    ps.set( "main.CodeWriterFormat", "BasicRebolWriterFormat.jwf" );
   
    ps.set( "main.ExecuteCodeWriter", "yes" );
   
    ps.set( "main.process.Controller", "org.jostraca.process.RebolController" );
   
    ps.set( "lang.NameValueList.nameQuote", "\"" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "lang.InsertSuffix", "" );
   
    ps.set( "main.FileNameSuffix", ".r" );
   
    ps.set( "main.CodeWriterSuffix", ".r" );
   
    ps.set( "main.ExternalCompilerOptions", "" );
   
    ps.set( "main.CodeWriterController", "org.jostraca.BasicCodeWriterController" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "main.CompileCodeWriter", "no" );
   
    ps.set( "lang.FalseString", "false" );
   
    ps.set( "lang.NameValueList.pairSeparator", " " );
   
    ps.set( "main.ExternalController", "rebol" );
   
    ps.set( "lang.StringEscapeTransform", "RebolStringEscapeTransform" );
   
    ps.set( "lang.TrueString", "true" );
   
    ps.set( "lang.HasExecutable", "false" );
   
    ps.set( "lang.CodeWriterTransforms", "" );
   
    ps.set( "main.ExternalCompiler", "" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "lang.NameValueList.itemSeparator", " " );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Controller" );
   
    ps.set( "lang.NameValueList.valueQuote", "\"" );
   
    ps.set( "main.CodeWriterCompiler", "org.jostraca.BasicCodeWriterCompiler" );
   
    ps.set( "main.FullMetaPath", "yes" );
   
    ps.set( "main.ExternalControllerOptions", "-swq" );
   
    return ps;
  }

  private static final PropertySet makeLangPS_jython() {
    PropertySet ps = new PropertySet();
   
    ps.set( "lang.InsertPrefix", "_py_insert(self, " );
   
    ps.set( "main.CodeWriterFormat", "BasicJythonWriterFormat.jwf" );
   
    ps.set( "main.ExecuteCodeWriter", "yes" );
   
    ps.set( "lang.section.all.Modifiers", "PythonIndenter, BlockIndenter" );
   
    ps.set( "main.process.Controller", "org.jostraca.process.InternalJythonController" );
   
    ps.set( "python.nonStatementLineRegExp", "^[ \t]*(#.*)?$" );
   
    ps.set( "lang.NameValueList.nameQuote", "\"" );
   
    ps.set( "lang.TemplateScriptTransforms", "AppendNewLineTransform" );
   
    ps.set( "python.controlFlowRegExp", ":[ \t]*(#.*)?$" );
   
    ps.set( "lang.InsertSuffix", " )" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "main.CodeWriterSuffix", ".py" );
   
    ps.set( "main.ExternalCompilerOptions", "" );
   
    ps.set( "main.CodeWriterController", "org.jostraca.BasicCodeWriterController" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "main.CompileCodeWriter", "no" );
   
    ps.set( "lang.FalseString", "0" );
   
    ps.set( "lang.NameValueList.pairSeparator", "," );
   
    ps.set( "lang.StringEscapeTransform", "CStringEscapeTransform" );
   
    ps.set( "main.ExternalController", "jython" );
   
    ps.set( "jython.fixWindowsBatchFileName", "yes" );
   
    ps.set( "lang.TrueString", "1" );
   
    ps.set( "lang.HasExecutable", "false" );
   
    ps.set( "lang.CodeWriterTransforms", "" );
   
    ps.set( "python.standardIndent", "  " );
   
    ps.set( "main.ExternalCompiler", "" );
   
    ps.set( "python.tabAsSpaces", "        " );
   
    ps.set( "lang.NameValueList.itemSeparator", ":" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Controller" );
   
    ps.set( "lang.NameValueList.valueQuote", "\"" );
   
    ps.set( "main.CodeWriterCompiler", "org.jostraca.BasicCodeWriterCompiler" );
   
    ps.set( "main.FullMetaPath", "yes" );
   
    ps.set( "main.ExternalControllerOptions", "" );
   
    return ps;
  }

  private static final PropertySet makeLangPS_javascript() {
    PropertySet ps = new PropertySet();
   
    ps.set( "main.process.Controller", "org.jostraca.process.JavaScriptController" );
   
    ps.set( "main.CompileCodeWriter", "no" );
   
    ps.set( "main.process.Preparer", "org.jostraca.process.GenericPreparer" );
   
    ps.set( "lang.HasExecutable", "false" );
   
    ps.set( "lang.StringEscapeTransform", "JavaStringEscapeTransform" );
   
    ps.set( "main.ProcessStages", "Preparer,Parser,Merger,Saver,Controller" );
   
    ps.set( "lang.TrueString", "true" );
   
    ps.set( "main.process.Parser", "org.jostraca.process.GenericParser" );
   
    ps.set( "lang.InsertPrefix", "self._insert( " );
   
    ps.set( "main.CodeWriterFormat", "BasicJavaScriptWriterFormat.jwf" );
   
    ps.set( "main.process.Saver", "org.jostraca.process.GenericSaver" );
   
    ps.set( "main.process.Merger", "org.jostraca.process.GenericMerger" );
   
    ps.set( "main.CodeWriterSuffix", ".js" );
   
    ps.set( "main.process.Compiler", "org.jostraca.process.GenericCompiler" );
   
    ps.set( "lang.FalseString", "false" );
   
    ps.set( "main.SaveCodeWriter", "no" );
   
    return ps;
  }

}

TOP

Related Classes of org.jostraca.DefaultPropertySets

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.