本文整理汇总了C#中ISymbolWriter.DefineLocalVariable方法的典型用法代码示例。如果您正苦于以下问题:C# ISymbolWriter.DefineLocalVariable方法的具体用法?C# ISymbolWriter.DefineLocalVariable怎么用?C# ISymbolWriter.DefineLocalVariable使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ISymbolWriter
的用法示例。
在下文中一共展示了ISymbolWriter.DefineLocalVariable方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: EmitLocalSymInfo
internal virtual void EmitLocalSymInfo(ISymbolWriter symWriter)
{
int num;
for (num = 0; num < this.m_iLocalSymCount; num++)
{
symWriter.DefineLocalVariable(this.m_strName[num], FieldAttributes.PrivateScope, this.m_ubSignature[num], SymAddressKind.ILOffset, this.m_iLocalSlot[num], 0, 0, this.m_iStartOffset[num], this.m_iEndOffset[num]);
}
for (num = 0; num < this.m_iNameSpaceCount; num++)
{
symWriter.UsingNamespace(this.m_namespace[num]);
}
}
示例2: GenerateDebugInfo
internal void GenerateDebugInfo (ISymbolWriter symbolWriter)
{
if (sequencePointLists != null) {
SequencePointList first = (SequencePointList) sequencePointLists [0];
SequencePointList last = (SequencePointList) sequencePointLists [sequencePointLists.Count - 1];
symbolWriter.SetMethodSourceRange (first.Document, first.StartLine, first.StartColumn, last.Document, last.EndLine, last.EndColumn);
foreach (SequencePointList list in sequencePointLists)
symbolWriter.DefineSequencePoints (list.Document, list.GetOffsets(), list.GetLines(), list.GetColumns(), list.GetEndLines(), list.GetEndColumns());
if (locals != null) {
foreach (LocalBuilder local in locals) {
if (local.Name != null && local.Name.Length > 0) {
SignatureHelper sighelper = SignatureHelper.GetLocalVarSigHelper (module as ModuleBuilder);
sighelper.AddArgument (local.LocalType);
byte[] signature = sighelper.GetSignature ();
symbolWriter.DefineLocalVariable (local.Name, FieldAttributes.Public, signature, SymAddressKind.ILOffset, local.position, 0, 0, local.StartOffset, local.EndOffset);
}
}
}
sequencePointLists = null;
}
}
示例3: EmitLocalSymInfo
internal virtual void EmitLocalSymInfo(ISymbolWriter symWriter)
{
int i;
for (i = 0; i < m_iLocalSymCount; i ++)
{
symWriter.DefineLocalVariable(
m_strName[i],
FieldAttributes.PrivateScope,
m_ubSignature[i],
SymAddressKind.ILOffset,
m_iLocalSlot[i],
0, // addr2 is not used yet
0, // addr3 is not used
m_iStartOffset[i],
m_iEndOffset[i]);
}
for (i = 0; i < m_iNameSpaceCount; i ++)
{
symWriter.UsingNamespace(m_namespace[i]);
}
}