예제 #1
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="file">Clang File</param>
        /// <param name="line">Line</param>
        /// <param name="column">Column</param>
        /// <param name="offset">Offset</param>
        public ClangPhysicalLocation(ClangFile file, uint line, uint column, uint offset)
            : base(line, column)
        {
            this.File = file;

            this.Offset = offset;
        }
예제 #2
0
 /// <summary>
 /// Find Includes File
 /// </summary>
 /// <param name="file">Clang File</param>
 /// <param name="visitor">Managed Clang Cursor And Range Visitor Function</param>
 /// <returns>Find Result</returns>
 public FindResult FindIncludesInFile(ClangFile file, Func <object, ClangCursor, ClangSourceRange, VisitorResult> visitor)
 {
     return(LibClang.clang_findIncludesInFile(this.Handle, file.Handle, this.CreateNativeCursorAndRangeVisitor(visitor)));
 }
예제 #3
0
 /// <summary>
 /// Check File is Multiple Include Guarded
 /// </summary>
 /// <param name="file">Clang File</param>
 /// <returns>Check Result</returns>
 public bool IsFileMultipleIncludeGuarded(ClangFile file)
 {
     return(LibClang.clang_isFileMultipleIncludeGuarded(this.Handle, file.Handle).ToBool());
 }
예제 #4
0
 /// <summary>
 /// Get Clang Module for Clang File
 /// </summary>
 /// <param name="file">Clang File</param>
 /// <returns>Clang Module</returns>
 public ClangModule GetModuleForFile(ClangFile file)
 {
     return(LibClang.clang_Cursor_getModuleForFile(this.Handle, file.Handle).ToManaged <ClangModule>());
 }
예제 #5
0
 /// <summary>
 /// Get Skipped Clang Source Range List
 /// </summary>
 /// <param name="file">Clang File</param>
 /// <returns>Skipped Clang Source Range List</returns>
 public ClangSourceRangeList GetSkippedRanges(ClangFile file)
 {
     return(LibClang.clang_getSkippedRanges(this.Handle, file.Handle).ToManaged <ClangSourceRangeList>());
 }
예제 #6
0
 /// <summary>
 /// Get Clang Source Location
 /// </summary>
 /// <param name="file">Clang File</param>
 /// <param name="offset">Offset</param>
 /// <returns>Clang Source Location</returns>
 public ClangSourceLocation GetLocation(ClangFile file, uint offset)
 {
     return(LibClang.clang_getLocationForOffset(this.Handle, file.Handle, offset).ToManaged());
 }
예제 #7
0
 /// <summary>
 /// Get Clang Source Location
 /// </summary>
 /// <param name="file">Clang File</param>
 /// <param name="line">Line</param>
 /// <param name="column">Column</param>
 /// <returns>Clang Source Location</returns>
 public ClangSourceLocation GetLocation(ClangFile file, uint line, uint column)
 {
     return(LibClang.clang_getLocation(this.Handle, file.Handle, line, column).ToManaged());
 }
예제 #8
0
 /// <summary>
 /// Get File Contents
 /// </summary>
 /// <param name="file">Clang File</param>
 /// <returns>File Contents Byte Array</returns>
 public byte[] GetFileContents(ClangFile file)
 {
     return(LibClang.clang_getFileContents(this.Handle, file.Handle, out var size).ToByteArray(size));
 }