---
name: "createablunaryexpr"
section: "3"
platform: "linux"
package: "alliance"
version: "5.1.1-3"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/createablunaryexpr"
---

# createablunaryexpr(3)

creates an unary operator expression.

## NAME

createablunaryexpr - creates an unary operator expression.

## SYNOPSYS

```
#include "abl101.h"
chain_list ∗createablunaryexpr( Oper, Expr )
  long        Oper;
  chain_list ∗Expr;
```

## PARAMETERS

- *Oper*

  The unary operator number.

- *Expr*

  Expression.

## DESCRIPTION

**createablunaryexpr** creates the unary operator expression *Operator* *Expr*. **createablbinexpr** combines eventualy the operator of *Expr* with *Operator*. The expression pointer *Expr* MUSTN'T be used after  the call to this function.\

## RETURN VALUE

**createablunaryexpr** returns a pointer to the new operator expression.

## ERRORS

**"ablcreate: bad operator xx !",**

*Operator* must be defined and must be a unary operator.

## EXAMPLE

```
#include "abl101.h"
   chain_list ∗ExprA;
   chain_list ∗ExprB;
   chain_list ∗ExprAorB;
   chain_list ∗ExprAnorB;
   ExprA = createablatom( "a" );
   ExprB = createablatom( "b" );
   ExprAorB  = createablbinexpr( ABL_OR, ExprA, ExprB );
   ExprAnorB = createablunaryexpr( ABL_NOT, ExprAorB );
```

## SEE ALSO

[**abl**(1)](/abl/1.md) **[createablatom(3)](/createablatom/3.md),** **[createabloper(3)](/createabloper/3.md),** **[createablnotexpr(3)](/createablnotexpr/3.md),** **[createablbinexpr(3)](/createablbinexpr/3.md),** **[createablxorbinexpr(3)](/createablxorbinexpr/3.md),** **[addablhexpr(3)](/addablhexpr/3.md),** **[addablqexpr(3)](/addablqexpr/3.md).**
