Understanding state machine example

I re-read wildbill's explanation on the other page. I think I get it now...

NextAction is the time in millis when the next state change will occur. All your state changes are time based, so we just check on every iteration of loop to see whether that time has been passed. If so, we call ChangeState to set up what to do next.

  static int PulseLength=0;  
  if(millis()>NextAction)    
    PulseLength=ChangeState();

So PulseLength=ChangeState(); is the function call. There are no parameters passed to it.