public ControleLivre InsereSimbolo(bool _bApos, LocalInsereSimbolo _lIS, ControleLivre _controle, params CodigosInterpretaveis[] _arrayCI)
        {
            ListaSimbolo _lstSB = new ListaSimbolo();

            /// Insere o array de CodigosInterpretaveis em uma lista de simbolos para facilitar a manipulacao
            _lstSB.InsertAllWithClearBefore(_arrayCI);

            switch (_lIS)
            {
            case LocalInsereSimbolo.INDEFINIDO:
                _controle = InsereSimboloIndefinido(_bApos, _controle, _lstSB);
                break;

            case LocalInsereSimbolo.SIMBOLOS:
                _controle = Insere2Simbolo(_bApos, _controle, _lstSB);
                break;

            case LocalInsereSimbolo.SAIDA:
                _controle = Insere2Saida(_bApos, _controle, _lstSB);
                break;
            }
            return(_controle);
        }
 public ControleLivre InsereSimbolo(LocalInsereSimbolo _lIS, ControleLivre _controle, params CodigosInterpretaveis[] _arrayCI)
 {
     return(InsereSimbolo(true, _lIS, _controle, _arrayCI));
 }