Beispiel #1
0
        private class_members get_class_member(ICSharpCode.NRefactory.Ast.INode node)
        {
            class_members cmem = new class_members();

            if (node is ICSharpCode.NRefactory.Ast.FieldDeclaration)
            {
                ICSharpCode.NRefactory.Ast.FieldDeclaration fld = node as ICSharpCode.NRefactory.Ast.FieldDeclaration;
                cmem.access_mod = get_access_modifier(fld.Modifier);
                //if ((fld.Modifier & ICSharpCode.NRefactory.Ast.Modifiers.Const) == ICSharpCode.NRefactory.Ast.Modifiers.Const)
                //cmem.members.AddRange(get_const_declaration(fld));
                //else
                cmem.members.AddRange(get_field_declaration(fld));
            }
            else if (node is ICSharpCode.NRefactory.Ast.ConstructorDeclaration)
            {
                ICSharpCode.NRefactory.Ast.ConstructorDeclaration meth = node as ICSharpCode.NRefactory.Ast.ConstructorDeclaration;
                cmem.access_mod = get_access_modifier(meth.Modifier);
                cmem.members.Add(get_constructor_declaration(meth));
            }
            else if (node is ICSharpCode.NRefactory.Ast.MethodDeclaration)
            {
                ICSharpCode.NRefactory.Ast.MethodDeclaration meth = node as ICSharpCode.NRefactory.Ast.MethodDeclaration;
                cmem.access_mod = get_access_modifier(meth.Modifier);
                if (!meth.Body.IsNull)
                {
                    cmem.members.Add(get_method_declaration(meth));
                }
                else
                {
                    cmem.members.Add(get_method_header(meth));
                }
            }
            return(cmem);

            /*else if (node is ICSharpCode.NRefactory.Ast.EventDeclaration)
             * {
             *      ICSharpCode.NRefactory.Ast.EventDeclaration meth = node as ICSharpCode.NRefactory.Ast.EventDeclaration;
             *      cmem.access_mod = get_access_modifier(meth.Modifier);
             *      cmem.members.Add(get_event_declaration(meth));
             * }*/
        }
Beispiel #2
0
 private SourceContext get_source_context(ICSharpCode.NRefactory.Ast.INode node)
 {
     return(new SourceContext(node.StartLocation.Line, node.StartLocation.Column, node.EndLocation.Line, node.EndLocation.Column));
 }