diff options
Diffstat (limited to 'main/src/addins/CBinding/Parser/CDocumentParser.cs')
-rwxr-xr-x | main/src/addins/CBinding/Parser/CDocumentParser.cs | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/main/src/addins/CBinding/Parser/CDocumentParser.cs b/main/src/addins/CBinding/Parser/CDocumentParser.cs index 0d13cfbbe7..82cea2c6a8 100755 --- a/main/src/addins/CBinding/Parser/CDocumentParser.cs +++ b/main/src/addins/CBinding/Parser/CDocumentParser.cs @@ -35,6 +35,7 @@ using MonoDevelop.Ide; using MonoDevelop.Ide.TypeSystem; using ICSharpCode.NRefactory.TypeSystem; using ICSharpCode.NRefactory.TypeSystem.Implementation; +using MonoDevelop.Core.Text; namespace CBinding.Parser { @@ -43,13 +44,15 @@ namespace CBinding.Parser /// </summary> public class CDocumentParser: TypeSystemParser { - public override ParsedDocument Parse (bool storeAst, string fileName, TextReader reader, Project project = null) + public override System.Threading.Tasks.Task<ParsedDocument> Parse (ParseOptions options, System.Threading.CancellationToken cancellationToken) { + var fileName = options.FileName; + var project = options.Project; var doc = new DefaultParsedDocument (fileName); doc.Flags |= ParsedDocumentFlags.NonSerializable; ProjectInformation pi = ProjectInformationManager.Instance.Get (project); - string content = reader.ReadToEnd (); + string content = options.Content.Text; string[] contentLines = content.Split (new string[]{Environment.NewLine}, StringSplitOptions.None); var globals = new DefaultUnresolvedTypeDefinition ("", GettextCatalog.GetString ("(Global Scope)")); @@ -58,7 +61,7 @@ namespace CBinding.Parser foreach (LanguageItem li in pi.Containers ()) { if (null == li.Parent && FilePath.Equals (li.File, fileName)) { var tmp = AddLanguageItem (pi, globals, li, contentLines) as IUnresolvedTypeDefinition; - if (null != tmp){ doc.TopLevelTypeDefinitions.Add (tmp); } + if (null != tmp){ /*doc.TopLevelTypeDefinitions.Add (tmp);*/ } } } @@ -70,8 +73,8 @@ namespace CBinding.Parser } } - doc.TopLevelTypeDefinitions.Add (globals); - return doc; + //doc.TopLevelTypeDefinitions.Add (globals); + return System.Threading.Tasks.Task.FromResult((ParsedDocument)doc); } /// <summary> |