示例#1
0
    public LocalVariableNameReader(MethodInfo m)
    {
        ISymbolReader symReader = SymUtil.GetSymbolReaderForFile(m.DeclaringType.Assembly.Location, null);
        ISymbolMethod met       = symReader.GetMethod(new SymbolToken(m.MetadataToken));

        VisitLocals(met.RootScope);
    }
示例#2
0
        /// <summary>
        /// Load the PDB given the parameters at the ctor and spew it out to the XmlWriter specified
        /// at the ctor.
        /// </summary>
        public void ReadPdbAndWriteToXml()
        {
            // Actually load the files
            ISymbolReader reader = SymUtil.GetSymbolReaderForFile(m_fileName, null);

            m_assembly = System.Reflection.Assembly.ReflectionOnlyLoadFrom(m_fileName);

            // Begin writing XML.
            m_writer.WriteStartDocument();
            m_writer.WriteComment("This is an XML file representing the PDB for '" + m_fileName + "'");
            m_writer.WriteStartElement("symbols");


            // Record what input file these symbols are for.
            m_writer.WriteAttributeString("file", m_fileName);

            WriteDocList(reader);
            WriteEntryPoint(reader);
            WriteAllMethods(reader);

            m_writer.WriteEndElement(); // "Symbols";
        }