Beispiel #1
0
        private void FillManifestInitConf(LuaInvocationExpressionSyntax invocation)
        {
            LuaTableInitializerExpression confTable = new LuaTableInitializerExpression();

            if (mainEntryPoint_ != null)
            {
                LuaIdentifierNameSyntax methodName = new LuaIdentifierNameSyntax(mainEntryPoint_.Name);
                var methodTypeName = XmlMetaProvider.GetTypeName(mainEntryPoint_.ContainingType, null);
                var quote          = new LuaIdentifierNameSyntax(LuaSyntaxNode.Tokens.Quote);

                LuaCodeTemplateExpressionSyntax codeTemplate = new LuaCodeTemplateExpressionSyntax();
                codeTemplate.Expressions.Add(quote);
                codeTemplate.Expressions.Add(new LuaMemberAccessExpressionSyntax(methodTypeName, methodName));
                codeTemplate.Expressions.Add(quote);

                confTable.Items.Add(new LuaKeyValueTableItemSyntax(new LuaTableLiteralKeySyntax(methodName), codeTemplate));
            }
            if (confTable.Items.Count > 0)
            {
                invocation.AddArgument(confTable);
            }
        }
Beispiel #2
0
 private LuaExpressionSyntax GetTypeName(ISymbol symbol)
 {
     return(XmlMetaProvider.GetTypeName(symbol, this));
 }