Function inside a function

Hello, I'm having some problem with a function defined in terms of other functions: specificly I'm trying to parse a regular expresion with a CFG. The problem is that one of the functions, don't start where it should.
Is something like this:
function [D cad2]=Prod(cad1)
[D cad2]=Termin(cad1)
if ~isempty(cad2)
while strcmp(cad2(1),'.')
[E cad2]=Termin(cad2);
After I execute Termin, I want that the "function Prod" start in [E cad2]=Termin(cad2); not from the beginning.
Thanks.

Answers (2)

Walter Roberson
Walter Roberson on 21 Apr 2012
You cannot change where a function starts.
Perhaps you want to use "persistent", if you want to save state between calls to "Prod".
Daniel Shub
Daniel Shub on 22 Apr 2012
You could just recursively call the function Prod.

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Asked:

on 21 Apr 2012

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!