本文整理汇总了PHP中Estado::setTransicion方法的典型用法代码示例。如果您正苦于以下问题:PHP Estado::setTransicion方法的具体用法?PHP Estado::setTransicion怎么用?PHP Estado::setTransicion使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Estado
的用法示例。
在下文中一共展示了Estado::setTransicion方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: kleene
function kleene()
{
// Extrae un elemento del arreglo de operandos
if (empty($this->operandos)) {
return false;
}
$A = array_pop($this->operandos);
// Crea 2 nuevos estados q0 y q1
$q0 = new Estado($this->siguiente_ID++);
$q1 = new Estado($this->siguiente_ID++);
// Desde q0 crea una transición vacia a q1
$q0->setTransicion('ε', $q1);
// Desde q0 crea una transicion vacia al estado inicial de $A
$q0->setTransicion('ε', $A->getEstado(0));
// Crea una transicion vacía desde el estado final de $A a q1
$A->getEstado($A->getTotalEstados() - 1)->setTransicion('ε', $q1);
// Crea una transición vacía desde el estado final de $A al estado inicial de $A
$A->getEstado($A->getTotalEstados() - 1)->setTransicion('ε', $A->getEstado(0));
// Se agrega en $A el estado q0 al inicio
$A->setEstadoInicio($q0);
// Se agrega en $A el estado q1 al final
$A->setEstado($q1);
if (!in_array('ε', $A->getSimbolos())) {
$A->setSimbolo('ε');
}
// Se guarda el resultado $A en el stack de operandos
$this->operandos[] = $A;
return true;
}