Пример #1
0
 internal SpanDebugInfoExpression(SymbolDocumentInfo document, int startLine, int startColumn, int endLine, int endColumn)
     : base(document)
 {
     _startLine   = startLine;
     _startColumn = startColumn;
     _endLine     = endLine;
     _endColumn   = endColumn;
 }
Пример #2
0
        /// <summary>
        /// Creates a <see cref="DebugInfoExpression"/> with the specified span.
        /// </summary>
        /// <param name="document">The <see cref="SymbolDocumentInfo"/> that represents the source file.</param>
        /// <param name="startLine">The start line of this <see cref="DebugInfoExpression" />. Must be greater than 0.</param>
        /// <param name="startColumn">The start column of this <see cref="DebugInfoExpression" />. Must be greater than 0.</param>
        /// <param name="endLine">The end line of this <see cref="DebugInfoExpression" />. Must be greater or equal than the start line.</param>
        /// <param name="endColumn">The end column of this <see cref="DebugInfoExpression" />. If the end line is the same as the start line, it must be greater or equal than the start column. In any case, must be greater than 0.</param>
        /// <returns>An instance of <see cref="DebugInfoExpression"/>.</returns>
        public static DebugInfoExpression DebugInfo(SymbolDocumentInfo document, int startLine, int startColumn, int endLine, int endColumn)
        {
            ContractUtils.RequiresNotNull(document, "document");
            if (startLine == 0xfeefee && startColumn == 0 && endLine == 0xfeefee && endColumn == 0)
            {
                return(new ClearDebugInfoExpression(document));
            }

            ValidateSpan(startLine, startColumn, endLine, endColumn);
            return(new SpanDebugInfoExpression(document, startLine, startColumn, endLine, endColumn));
        }
Пример #3
0
 internal DebugInfoExpression(SymbolDocumentInfo document)
 {
     _document = document;
 }
Пример #4
0
        /// <summary>
        /// Creates a <see cref="DebugInfoExpression"/> for clearing a sequence point.
        /// </summary>
        /// <param name="document">The <see cref="SymbolDocumentInfo"/> that represents the source file.</param>
        /// <returns>An instance of <see cref="DebugInfoExpression"/> for clearning a sequence point.</returns>
        public static DebugInfoExpression ClearDebugInfo(SymbolDocumentInfo document)
        {
            ContractUtils.RequiresNotNull(document, "document");

            return(new ClearDebugInfoExpression(document));
        }
Пример #5
0
 internal ClearDebugInfoExpression(SymbolDocumentInfo document)
     : base(document)
 {
 }