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

# getablexprsupport(3)

gives the expression's support.

## NAME

getablexprsupport - gives the expression's support.

## SYNOPSYS

```
#include "abl101.h"
 void ∗getablexprsupport( Expr, Mode )
  chain_list ∗Expr;
  int         Mode;
```

## PARAMETERS

- *Expr*

  Expression.

- *Mode*

  The returned support's mode.

## DESCRIPTION

**getablexprsupport** gives the support of *Expr*. if *Mode* is ABL\_SUPPORT\_CHAIN the support is returned using *chain\_list* else it is returned using *ptype\_list*. The support must be freed using the *freechain* or *freeptype* functions.\

## RETURN VALUE

**getablexprsupport** returns a pointer to a *chain\_list* or a *ptype\_list*.

## EXAMPLE

```
#include "abl101.h"
  chain_list ∗Expr;
  ptype_list ∗Support;
  ptype_list ∗ScanSupport;
  Expr = createablbinexpr( ABL_AND,
                           createablatom( "a" ),
                           createablatom( "b" ) );
  Support = getablexprsupport( Expr, ABL_SUPPORT_PTYPE );
  /* displays a b */
  for ( ScanSupport  = Support;
        ScanSupport != (ptype_list ∗)0;
        ScanSupport  = ScanSupport->NEXT )
  {
    printf( "%s ", (char *)ScanSupport->DATA );
  }
  freeptype( Support );
```

## SEE ALSO

[**abl**(1)](/abl/1.md)
