예제 #1
0
 /// <summary>
 /// Writes a typescript function.
 /// </summary>
 /// <param name="tsFunction"></param>
 /// <param name="standaloneFunction"></param>
 public void WriteFunction(TypescriptFunction tsFunction, bool standaloneFunction)
 {
     WriteTypescriptFunctionSignature((TypescriptFunctionSignature)tsFunction, standaloneFunction);
     syntaxWriter.WriteOpeningBracket();
     WriteCode(tsFunction.MethodBody);
     syntaxWriter.WriteClosingBracket();
 }
예제 #2
0
        public void WriteFunctionWithMethodBody()
        {
            var expectedResult =
                @"function TestFunction(): void{
    var a = 1;
}
";
            var function = new TypescriptFunction
            {
                Name       = "TestFunction",
                MethodBody = new TypescriptCode
                {
                    "var a = 1;"
                }
            };

            AssertThatWritingFunctionGivesTheExpectedResult(expectedResult, function);
        }
예제 #3
0
        private static void AssertThatWritingFunctionGivesTheExpectedResult(string expectedResult, TypescriptFunction tsFunction)
        {
            var writer = new TypescriptWriter();

            writer.WriteFunction(tsFunction, true);
            var result = writer.ToString();

            result.ShouldBeEquivalentTo(expectedResult);
        }
예제 #4
0
 private void WriteTypescriptFunctionWithAccesabilty(TypescriptFunction tsFunction)
 {
     syntaxWriter.Write(tsFunction.Accesability.ToString());
     syntaxWriter.WriteSpace();
     WriteFunction(tsFunction);
 }
예제 #5
0
 /// <summary>
 /// Writes a typescript function as a standalone function
 /// </summary>
 /// <param name="tsFunction"></param>
 public void WriteFunctionStandAlone(TypescriptFunction tsFunction)
 {
     WriteFunction(tsFunction, true);//this allows us to use this method in match signatures that require 1 parameter
 }