ITS
per_opentype.c File Reference
#include <asn_internal.h>
#include <per_support.h>
#include <constr_TYPE.h>
#include <per_opentype.h>
Include dependency graph for per_opentype.c:

Go to the source code of this file.

Classes

struct  uper_ugot_key
 

Macros

#define UPDRESTOREPD
 

Typedefs

typedef struct uper_ugot_key uper_ugot_key
 

Functions

static int uper_ugot_refill (asn_per_data_t *pd)
 
static int per_skip_bits (asn_per_data_t *pd, int skip_nbits)
 
static asn_dec_rval_t uper_sot_suck (asn_codec_ctx_t *, asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd)
 
int uper_open_type_put (asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void *sptr, asn_per_outp_t *po)
 
static asn_dec_rval_t uper_open_type_get_simple (asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd)
 
static asn_dec_rval_t GCC_NOTUSED uper_open_type_get_complex (asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd)
 
asn_dec_rval_t uper_open_type_get (asn_codec_ctx_t *ctx, asn_TYPE_descriptor_t *td, asn_per_constraints_t *constraints, void **sptr, asn_per_data_t *pd)
 
int uper_open_type_skip (asn_codec_ctx_t *ctx, asn_per_data_t *pd)
 

Macro Definition Documentation

◆ UPDRESTOREPD

#define UPDRESTOREPD
Value:
do { \
/* buffer and nboff are valid, preserve them. */ \
pd->nbits = arg.oldpd.nbits - (pd->moved - arg.ot_moved); \
pd->moved = arg.oldpd.moved + (pd->moved - arg.ot_moved); \
pd->refill = arg.oldpd.refill; \
pd->refill_key = arg.oldpd.refill_key; \
} while(0)

Referenced by uper_open_type_get_complex().

Typedef Documentation

◆ uper_ugot_key

typedef struct uper_ugot_key uper_ugot_key

Function Documentation

◆ per_skip_bits()

static int per_skip_bits ( asn_per_data_t pd,
int  skip_nbits 
)
static

Definition at line 359 of file per_opentype.c.

References per_get_few_bits().

Referenced by uper_open_type_get_complex().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uper_open_type_get()

asn_dec_rval_t uper_open_type_get ( asn_codec_ctx_t ctx,
asn_TYPE_descriptor_t td,
asn_per_constraints_t constraints,
void **  sptr,
asn_per_data_t pd 
)

Definition at line 245 of file per_opentype.c.

References uper_open_type_get_simple().

Referenced by CHOICE_decode_uper(), SEQUENCE_decode_uper(), and uper_open_type_skip().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uper_open_type_get_complex()

◆ uper_open_type_get_simple()

static asn_dec_rval_t uper_open_type_get_simple ( asn_codec_ctx_t ctx,
asn_TYPE_descriptor_t td,
asn_per_constraints_t constraints,
void **  sptr,
asn_per_data_t pd 
)
static

Definition at line 57 of file per_opentype.c.

References _ASN_DECODE_FAILED, _ASN_DECODE_STARVED, _ASN_STACK_OVERFLOW_CHECK(), ASN_DEBUG(), ASN_DEBUG_INDENT_ADD, asn_per_data_s::buffer, asn_dec_rval_s::code, FREEMEM, asn_TYPE_descriptor_s::name, asn_per_data_s::nbits, asn_per_data_s::nboff, per_get_few_bits(), per_get_many_bits(), RC_FAIL, RC_OK, REALLOC, asn_TYPE_descriptor_s::uper_decoder, and uper_get_length().

Referenced by uper_open_type_get().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uper_open_type_put()

int uper_open_type_put ( asn_TYPE_descriptor_t td,
asn_per_constraints_t constraints,
void *  sptr,
asn_per_outp_t po 
)

Definition at line 26 of file per_opentype.c.

References ASN_DEBUG(), FREEMEM, asn_TYPE_descriptor_s::name, per_put_many_bits(), uper_encode_to_new_buffer(), and uper_put_length().

Referenced by CHOICE_encode_uper(), and SEQUENCE_handle_extensions().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uper_open_type_skip()

int uper_open_type_skip ( asn_codec_ctx_t ctx,
asn_per_data_t pd 
)

Definition at line 252 of file per_opentype.c.

References asn_dec_rval_s::code, asn_TYPE_descriptor_s::name, RC_OK, asn_TYPE_descriptor_s::uper_decoder, uper_open_type_get(), and uper_sot_suck().

Referenced by SEQUENCE_decode_uper().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uper_sot_suck()

static asn_dec_rval_t uper_sot_suck ( asn_codec_ctx_t ctx,
asn_TYPE_descriptor_t td,
asn_per_constraints_t constraints,
void **  sptr,
asn_per_data_t pd 
)
static

Definition at line 271 of file per_opentype.c.

References asn_dec_rval_s::code, asn_dec_rval_s::consumed, asn_per_data_s::moved, per_get_few_bits(), and RC_OK.

Referenced by uper_open_type_skip().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ uper_ugot_refill()

static int uper_ugot_refill ( asn_per_data_t pd)
static

Definition at line 289 of file per_opentype.c.

References ASN_DEBUG(), asn_per_data_s::buffer, asn_per_data_s::moved, asn_per_data_s::nbits, asn_per_data_s::nboff, uper_ugot_key::oldpd, uper_ugot_key::ot_moved, per_data_string(), per_get_few_bits(), asn_per_data_s::refill, asn_per_data_s::refill_key, uper_ugot_key::repeat, uper_ugot_key::unclaimed, and uper_get_length().

Referenced by uper_open_type_get_complex().

Here is the call graph for this function:
Here is the caller graph for this function: