public void Syntax()
{
IEntryActionSyntax<int, int> s = null;
Action a = () =>
{
s
.ExecuteOnEntry(() => { })
.ExecuteOnEntry((int i) => { })
.ExecuteOnEntryParametrized(p => { }, 4)
.ExecuteOnEntryParametrized(p => { }, "test")
.ExecuteOnExit(() => { })
.ExecuteOnExit((string st) => { })
.ExecuteOnExitParametrized(p => { }, 4)
.ExecuteOnExitParametrized(p => { }, "test")
.On(3)
.If(() => true).Goto(4).Execute(() => { }).Execute((int i) => { })
.If(() => true).Goto(4)
.If(() => true).Execute(() => { }).Execute((int i) => { })
.If<string>(this.AGuard).Execute(() => { }).Execute((int i) => { })
.Otherwise().Goto(4)
.On(5)
.If(() => true).Execute(() => { })
.Otherwise()
.On(2)
.If<int>(i => i != 0).Goto(7)
.Otherwise().Goto(7)
.On(1)
.If(() => true).Goto(7).Execute(() => { }).Execute<string>(argument => { })
.On(1)
.If(() => true).Execute(() => { })
.Otherwise().Execute(() => { }).Execute((int i) => { })
.On(4)
.Goto(5).Execute(() => { }).Execute<string>(argument => { })
.On(5)
.Execute(() => { }).Execute((int i) => { })
.On(7)
.Goto(4)
.On(8)
.On(9);
};
}