How exactly does "include =>" work?

Folks,

This is a simple question.

Say I have two contexts A & B:

[A]
exten => 101, blah
exten => 102, blah

[B]
include => A
exten => 103, blah
exten => 104, blah

In this case, is context [B] equivalent to the following context?

[C]
exten => 101, blah
exten => 102, blah
exten => 103, blah
exten => 104, blah

I am guessing this is not the case but I need to confirm. From the samples, it appears an “include =>” doesn’t do much by itself except to make the context available within the parent context. This allows the parent to invoke the included context by calling Gosub() function.

[B]
include => A
exten => 103, blah
exten => 104, blah
exten => _XXX, Gosub(A)

Is this right?

Thank you in advance for your help.

Regards,
Peter

The rules are given in extensions.conf.sample. It is not a simple textual substitution, but nor do you need to use Gosub. I think the details differe between versions.