- Main Page
- Classes
- Files

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# node_negate Class Reference

`#include <node_impl.hpp>`

Inheritance diagram for node_negate:

List of all members.

## Public Member Functions
| node_negate (node operand)
| node_negate (std::istream &stream)
## Private Member Functions
virtual void | print_node (std::ostream &stream, int indent) const
virtual number | evaluate_node () const
virtual void | save_node (std::ostream &stream) const

## Detailed Description

Unary negation.

Definition at line 170 of file node_impl.hpp.

## Constructor & Destructor Documentation

node_negate::node_negate | ( | node | operand | ) |

Definition at line 412 of file node_impl.cpp.

    00413 : node_unary(operand)
    00414 {}

node_negate::node_negate | ( | std::istream & | stream | ) |

Definition at line 416 of file node_impl.cpp.

    00417 : node_unary(stream)
    00418 {}

## Member Function Documentation

void node_negate::print_node | ( | std::ostream & | stream,
|  | int | indent |
| ) |  |  | const`[private, virtual]`

Implements node_unary.

Definition at line 420 of file node_impl.cpp.

References node_unary::operand(), and node::print().

    00422 {
    00423   stream << std::setw(indent) << "" << "-\n";
    00424   operand().print(stream, indent + 2);
    00425 }

number node_negate::evaluate_node | ( |  | ) | const`[private, virtual]`

Implements node_unary.

Definition at line 427 of file node_impl.cpp.

References node_unary::evaluate_operand().

    00429 {
    00430   return -evaluate_operand();
    00431 }

void node_negate::save_node | ( | std::ostream & | stream | ) | const`[private, virtual]`

Implements node_unary.

Definition at line 433 of file node_impl.cpp.

References node_unary::operand(), and node::save().

    00435 {
    00436   stream << "negate ";
    00437   operand().save(stream);
    00438 }

The documentation for this class was generated from the following files:

- node_impl.hpp
- node_impl.cpp