Future perfect
We use the future perfect simple (will/won't have + past participle) to talk about something that will be completed before a specific time in the future.
The guests are coming at 8 p.m. I'll have finished cooking by then.
On 9 October we'll have been married for 50 years.
Will you have gone to bed when I get back?
We can use phrases like by or by the time (meaning 'at some point before') and in or in a day's time / in two months' time / in five years' time etc. (meaning 'at the end of this period') to give the time period in which the action will be completed.