code: public void parse(IVdmSourceUnit file)
  	{
  
  		ParseResult result;
  		try
  		{
  			LexLocation.resetLocations();
  			result = startParse(file, FileUtility.makeString(FileUtility.getContent(file.getFile())), file.getFile().getCharset());
  			setFileMarkers(file.getFile(), result);
  			if (result != null && result.getAst() != null)
  			{
  				file.reconcile(result.getAst(), result.hasParseErrors());
  			}
  
  		} catch (CoreException e)
  		{
  			if (VdmCore.DEBUG)
  			{
  				VdmCore.log("AbstractParserParticipant:parse IVdmSourceUnit", e);
  			}
  		}
  	}
docs: Parses a file and updates file markers and the AstManager with the result