private void BuildTypeParameters(INamedTypeSymbol typeSymbol, TypeDeclarationSyntax node, LuaTypeDeclarationSyntax typeDeclaration) {
   List<LuaParameterSyntax> typeParameters = new List<LuaParameterSyntax>();
   FillExternalTypeParameters(typeParameters, typeSymbol);
   if (node.TypeParameterList != null) {
     var parameterList = (LuaParameterListSyntax)node.TypeParameterList.Accept(this);
     typeParameters.AddRange(parameterList.Parameters);
   }
   typeDeclaration.AddTypeParameters(typeParameters);
 }