aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Update/CheckForUpdatesRequest.cs
blob: f76e714a2b344bc5c06542e4ff9ea35fb8429a5c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;

namespace Tango.MachineStudio.Common.Update
{
    [DataContract]
    public class CheckForUpdatesRequest
    {
        [DataMember]
        public String Email { get; set; }

        [DataMember]
        public String Password { get; set; }

        [DataMember]
        public String Version { get; set; }
    }
}
an><ScriptVariable>(); SyntaxTree tree = CSharpSyntaxTree.ParseText(code); var root = (CompilationUnitSyntax)tree.GetRoot(); List<VariableDeclaratorSyntax> variables = new List<VariableDeclaratorSyntax>(); FillVariables(variables, root.Members[0]); variables = variables.Distinct().ToList(); foreach (var item in variables) { ScriptVariable v = new ScriptVariable(); v.Name = item.Identifier.ToString(); if (item.Initializer.Value.GetType() == typeof(ObjectCreationExpressionSyntax)) { v.Type = (item.Initializer.Value as ObjectCreationExpressionSyntax).Type.ToString(); } else if (item.Initializer.Value.GetType() == typeof(InvocationExpressionSyntax)) { v.Type = (((item.Initializer.Value as InvocationExpressionSyntax).Expression as MemberAccessExpressionSyntax).Name as GenericNameSyntax).TypeArgumentList.Arguments[0].ToString(); } vars.Add(v); } return vars; } private void FillVariables(List<VariableDeclaratorSyntax> variables, SyntaxNode node) { foreach (var item in node.DescendantNodes(x => true)) { if (item.GetType() == typeof(VariableDeclaratorSyntax)) { variables.Add(item as VariableDeclaratorSyntax); } else { FillVariables(variables, item); } } } } public class ScriptVariable { public String Name { get; set; } public String Type { get; set; } public override string ToString() { return String.Format("{0} : {1}", Type, Name); } } }