kawigi.language
Class ExtendedVBLanguage

java.lang.Object
  |
  +--kawigi.language.LanguageContainer
        |
        +--kawigi.language.ExtendedVBLanguage
All Implemented Interfaces:
java.lang.Cloneable, com.topcoder.shared.netCommon.CustomSerializable, ExtendedLanguage, com.topcoder.shared.language.Language, java.io.Serializable

public class ExtendedVBLanguage
extends LanguageContainer

VisualBasic implementation of the ExtendedLanguage interface.

See Also:
Serialized Form

Field Summary
static kawigi.language.ExtendedVBLanguage EXTENDED_VB_LANGUAGE
          A singleton instance of the extended Visual Basic language, sort of like how TC does it.
 
Fields inherited from class kawigi.language.LanguageContainer
baselang
 
Constructor Summary
ExtendedVBLanguage()
          Creates a new instance of the ExtendedLanguage that uses TC's singleton VB language instance.
ExtendedVBLanguage(com.topcoder.shared.language.Language lang)
          Creates a new instance of the ExtendedLanguage that uses settings from the given TC Language.
 
Method Summary
 java.lang.String getCompileCommand(com.topcoder.shared.problem.ProblemComponent comp)
          Returns the command that should be used to compile the file.
 java.lang.String getFileName(com.topcoder.shared.problem.ProblemComponent comp)
          Returns the filename that the source file should be saved as.
 java.lang.String getRunCommand(com.topcoder.shared.problem.ProblemComponent comp, java.io.File cwd)
          Returns the command that should be used to run the program and test cases.
 java.lang.String getSkeleton(com.topcoder.shared.problem.ProblemComponent comp)
          Returns at a class and method declaration, with a main method that has testing code.
 java.lang.Class getViewClass()
          Returns the class of the VB implementation of a View
 
Methods inherited from class kawigi.language.LanguageContainer
customReadObject, customWriteObject, equals, getBaseLanguage, getId, getMethodSignature, getName, getPropertyClass
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EXTENDED_VB_LANGUAGE

public static final kawigi.language.ExtendedVBLanguage EXTENDED_VB_LANGUAGE
A singleton instance of the extended Visual Basic language, sort of like how TC does it.

Constructor Detail

ExtendedVBLanguage

public ExtendedVBLanguage(com.topcoder.shared.language.Language lang)
Creates a new instance of the ExtendedLanguage that uses settings from the given TC Language. This object will behave strangely if lang is not a VBLanguage instance.


ExtendedVBLanguage

public ExtendedVBLanguage()
Creates a new instance of the ExtendedLanguage that uses TC's singleton VB language instance.

Method Detail

getSkeleton

public java.lang.String getSkeleton(com.topcoder.shared.problem.ProblemComponent comp)
Returns at a class and method declaration, with a main method that has testing code. As some of my first Visual Basic code comes out of this method, I wouldn't be offended if someone else came and reimplemented it, but it at least seems to generate correct code, so we'll leave it at that for now.


getCompileCommand

public java.lang.String getCompileCommand(com.topcoder.shared.problem.ProblemComponent comp)
Returns the command that should be used to compile the file. Ideally, this won't be platform-specific, but realistically, some people use different compilers than others completely. It may be possible at some point to allow this to be configured. And how platform-independent is Microsoft Visual Basic .NET, anyways?


getRunCommand

public java.lang.String getRunCommand(com.topcoder.shared.problem.ProblemComponent comp,
                                      java.io.File cwd)
Returns the command that should be used to run the program and test cases. Again, some care will need to be taken to make this part platform-happy.


getFileName

public java.lang.String getFileName(com.topcoder.shared.problem.ProblemComponent comp)
Returns the filename that the source file should be saved as. You may assume that this is the actual filename used when creating the compile and run commands.


getViewClass

public java.lang.Class getViewClass()
Returns the class of the VB implementation of a View