Example #1
0
        public static void WriteImport(CodeTextBuilder code, ImportDirective import)
        {
            code.Write("import ");

            if (import.AsDefault != null)
            {
                code.Write(import.AsDefault.Name);
            }
            else if (import.AsNamespace != null)
            {
                code.Write($"* as {import.AsNamespace.Name}");
            }
            else if (import.AsTuple != null)
            {
                JavaScriptExpressionWriter.WriteTuple(code, import.AsTuple);
            }

            if (import.From != null)
            {
                code.Write($" from '{import.From.GetModulePath()}'");
            }
            else if (import.What != null)
            {
                code.Write($"'{import.What.GetModulePath()}'");
            }

            code.WriteLine(";");
        }
Example #2
0
        private static void WriteParameters(CodeTextBuilder code, MethodSignature signature)
        {
            code.WriteListStart(opener: "(", separator: ", ", closer: ") ");

            signature.Parameters.ForEach(parameter => {
                code.WriteListItem();

                if (parameter.Tuple != null)
                {
                    JavaScriptExpressionWriter.WriteTuple(code, parameter.Tuple);
                }
                else
                {
                    code.Write(parameter.Name);
                }
            });

            code.WriteListEnd();
        }