def p_parametro_arr(t):
    'Parametro : Tipos iden LACCESO'
    t[0] = Atributo(t[1], t[2], t.slice[2].lineno,
                    find_column(input, t.slice[2]), t[3])
    concat(
        '''<TR><TD>Parametro : Tipos iden LACCESO</TD><TD>t[0]=Atributo(t[1],t[2],t.slice[2].lineno,find_column(input,t.slice[2]),t[3])</TD></TR>'''
    )
def p_parametro_id(t):
    'Parametro : Tipos iden'
    t[0] = Atributo(t[1], t[2], t.slice[2].lineno,
                    find_column(input, t.slice[2]))
    concat(
        '''<TR><TD>Parametro : Tipos iden</TD><TD>t[0]=Atributo(t[1],t[2],t.slice[2].lineno,find_column(input,t.slice[2]))</TD></TR>'''
    )
def p_atributo_arr2(t):
    'ItemsStruct2 : iden LACCESO'
    t[0] = Atributo(None, t[1], t.slice[1].lineno,
                    find_column(input, t.slice[1]), t[2], True)
    concat(
        '''<TR><TD>ItemsStruct2 -> iden LACCESO</TD><TD> t[0]=Atributo(None,t[1],t.slice[1].lineno,find_column(input,t.slice[1]),t[2],True)</TD></TR>'''
    )
def p_atributo_arr_vacio(t):
    'ItemsStruct : iden cor1 cor2'
    if type(t[-1]) == str: tipo = t[-3]
    else: tipo = t[-1]
    t[0] = Atributo(tipo, t[1], t.slice[1].lineno,
                    find_column(input, t.slice[1]), [], True)
    concat(
        '''<TR><TD>ItemsStruct -> iden LACCESO</TD><TD>    if type(t[-1]) == str:tipo=t[-3],br>
    else:tipo=t[-1]<br>
    t[0]=Atributo(tipo,t[1],t.slice[1].lineno,find_column(input,t.slice[1]),t[2],True)</TD></TR>'''
    )
def p_atributo_id(t):
    'ItemsStruct : iden'
    if type(t[-1]) == str: tipo = t[-3]
    else: tipo = t[-1]
    t[0] = Atributo(tipo, t[1], t.slice[1].lineno,
                    find_column(input, t.slice[1]))
    concat(
        '''<TR><TD>ItemsStruct -> iden</TD><TD>     if type(t[-1]) == str:tipo=t[-3]<br>
    else:tipo=t[-1]<br>
    t[0]=Atributo(tipo,t[1],t.slice[1].lineno,find_column(input,t.slice[1]))</TD></TR>'''
    )