本文整理汇总了C#中ISymbolWriter.DefineSequencePoints方法的典型用法代码示例。如果您正苦于以下问题:C# ISymbolWriter.DefineSequencePoints方法的具体用法?C# ISymbolWriter.DefineSequencePoints怎么用?C# ISymbolWriter.DefineSequencePoints使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ISymbolWriter
的用法示例。
在下文中一共展示了ISymbolWriter.DefineSequencePoints方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: EmitLineNumberInfo
internal void EmitLineNumberInfo(ISymbolWriter symWriter)
{
if (this.m_iLineNumberCount != 0)
{
int[] destinationArray = new int[this.m_iLineNumberCount];
Array.Copy(this.m_iOffsets, destinationArray, this.m_iLineNumberCount);
int[] numArray2 = new int[this.m_iLineNumberCount];
Array.Copy(this.m_iLines, numArray2, this.m_iLineNumberCount);
int[] numArray3 = new int[this.m_iLineNumberCount];
Array.Copy(this.m_iColumns, numArray3, this.m_iLineNumberCount);
int[] numArray4 = new int[this.m_iLineNumberCount];
Array.Copy(this.m_iEndLines, numArray4, this.m_iLineNumberCount);
int[] numArray5 = new int[this.m_iLineNumberCount];
Array.Copy(this.m_iEndColumns, numArray5, this.m_iLineNumberCount);
symWriter.DefineSequencePoints(this.m_document, destinationArray, numArray2, numArray3, numArray4, numArray5);
}
}
示例2: EmitLineNumberInfo
[System.Security.SecurityCritical] // auto-generated
#endif
internal void EmitLineNumberInfo(ISymbolWriter symWriter)
{
int[] iOffsetsTemp;
int[] iLinesTemp;
int[] iColumnsTemp;
int[] iEndLinesTemp;
int[] iEndColumnsTemp;
if (m_iLineNumberCount == 0)
return;
// reduce the array size to be exact
iOffsetsTemp = new int [m_iLineNumberCount];
Array.Copy(m_iOffsets, iOffsetsTemp, m_iLineNumberCount);
iLinesTemp = new int [m_iLineNumberCount];
Array.Copy(m_iLines, iLinesTemp, m_iLineNumberCount);
iColumnsTemp = new int [m_iLineNumberCount];
Array.Copy(m_iColumns, iColumnsTemp, m_iLineNumberCount);
iEndLinesTemp = new int [m_iLineNumberCount];
Array.Copy(m_iEndLines, iEndLinesTemp, m_iLineNumberCount);
iEndColumnsTemp = new int [m_iLineNumberCount];
Array.Copy(m_iEndColumns, iEndColumnsTemp, m_iLineNumberCount);
symWriter.DefineSequencePoints(m_document, iOffsetsTemp, iLinesTemp, iColumnsTemp, iEndLinesTemp, iEndColumnsTemp);
}
示例3: 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;
}
}