| 1776 | return nil |
| 1777 | } |
| 1778 | func (m *UnaryNode) Equal(n Node) bool { |
| 1779 | if m == nil && n == nil { |
| 1780 | return true |
| 1781 | } |
| 1782 | if m == nil && n != nil { |
| 1783 | return false |
| 1784 | } |
| 1785 | if m != nil && n == nil { |
| 1786 | return false |
| 1787 | } |
| 1788 | if nt, ok := n.(*UnaryNode); ok { |
| 1789 | if nt.Operator.T != m.Operator.T { |
| 1790 | return false |
| 1791 | } |
| 1792 | if m.Arg == nil && nt.Arg != nil { |
| 1793 | return false |
| 1794 | } |
| 1795 | if m.Arg != nil && nt.Arg == nil { |
| 1796 | return false |
| 1797 | } |
| 1798 | return m.Arg.Equal(nt.Arg) |
| 1799 | } |
| 1800 | return false |
| 1801 | } |
| 1802 | |
| 1803 | // Include nodes |
| 1804 | // |