PslNode_ptr
PslNode_convert_from_node_ptr(
node_ptr expr
)
- The returned structure will still contain operators
in the SMV parser's domain
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
PslNode_convert_id(
PslNode_ptr id,
PslOpConvType type
)
- Converts an id to a different id type, for example a PSL id
to a SMV id
- Side Effects None
- Defined in
pslConv.c
node_ptr
PslNode_convert_psl_to_core(
PslNode_ptr expr
)
- This is the high fcuntion used at system level to convert
PSL expression to equivalent expressions that can
be managed at system level. Warning: the
resulting expression may have a different
structure, do not refer to its structure to report
errors to the user, use it internally intstead.
- Side Effects None
- Defined in
pslConv.c
node_ptr
PslNode_convert_to_node_ptr(
PslNode_ptr expr
)
- The returned structure will still contain operators
in the PSL parser's domain
- Side Effects None
- Defined in
pslNode.c
boolean
PslNode_is_handled_psl(
PslNode_ptr e
)
- Returns true iff given expression can be translated
into LTL.
- Side Effects None
- See Also
optional
- Defined in
pslNode.c
boolean
PslNode_is_ltl(
const PslNode_ptr expr
)
- Checks for a formula being an LTL formula
- Side Effects None
- See Also
optional
- Defined in
pslNode.c
boolean
PslNode_is_obe(
const PslNode_ptr expr
)
- Checks for a formula being an CTL formula
- Side Effects None
- See Also
optional
- Defined in
pslNode.c
boolean
PslNode_is_propositional(
const PslNode_ptr expr
)
- Checks for a formula being a propositional formula
- Side Effects None
- See Also
optional
- Defined in
pslNode.c
PslNode_ptr
PslNode_new_context(
PslNode_ptr ctx,
PslNode_ptr node
)
- Creates a psl node that represents a contestualized
node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
PslNode_pslltl2ltl(
PslNode_ptr expr,
PslOpConvType type
)
- Takes a PSL LTL expression and builds the corresponding
LTL expression. This ignores SERE that can be easily mapped to the
corresponding LTL expression. The parameter replicator_id_stack is
used to prevent ID duplication of nested forall (replicators).
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
PslNode_ptr
PslNode_pslobe2ctl(
PslNode_ptr expr,
PslOpConvType type
)
- Takes a PSL OBE expression and builds the corresponding
CTL expression.
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
PslNode_ptr
PslNode_remove_forall_replicators(
PslNode_ptr expr
)
- Takes a PSL expression and expands all forall constructs
contained in the expression. Visits the syntax tree of the expressions
and whenever it finds a forall construct it expands the expression in
its scope.
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
PslNode_ptr
PslNode_remove_sere(
PslNode_ptr e
)
- Converts the given expression (possibly containing sere)
into an equivalent LTL formula
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
PslOp
psl_conv_op(
PslOpConvType type,
PslOp op
)
- Converts the given operator into either a PSL operator, or
a SMV operator, depending on the value of 'type'
- Side Effects required
- See Also
PSL_OP_CONV
- Defined in
pslConv.c
static int
psl_expr_base_num_to_val(
char* base_num
)
- optional
- See Also
optional
- Defined in
pslExpr.c
static int
psl_expr_check_klass(
const PslExpr psl,
SyntaxClass expected
)
- optional
- See Also
optional
- Defined in
pslExpr.c
static int
psl_expr_is_boolean(
const PslExpr psl
)
- optional
- See Also
optional
- Defined in
pslExpr.c
static void
psl_expr_print_klass(
FILE* file,
SyntaxClass type
)
- optional
- Side Effects required
- See Also
optional
- Defined in
pslExpr.c
static void
psl_expr_require_klass(
const PslExpr psl,
SyntaxClass expected
)
- optional
- See Also
optional
- Defined in
pslExpr.c
PslNode_ptr
psl_new_node(
PslOp op,
PslNode_ptr left,
PslNode_ptr right
)
- WARNING: If this function is being called to build a
branch of the parse-tree from a branch coming from the parsing phase
(i.e. it is a token, and not a symbol), the token *must* be converted
to a PSL node by calling psl_conv_op(TOK2PSL, op)
- Side Effects None
- See Also
optional
- Defined in
pslNode.c
PslNode_ptr
psl_node_cons_get_element(
PslNode_ptr e
)
- Returns the currently pointed element of a list
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_cons_get_next(
PslNode_ptr e
)
- Returns the next element of a list
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_cons_reverse(
PslNode_ptr e
)
- Returns a new sequence containing the same
elements as 'e' but in reverse order
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_context_to_main_context(
PslNode_ptr context
)
- This function is used to build the internal structure of
the context (e.g. module instance name) from the parse tree. The
function is needed since with the grammar it is not possible/simple
to build directly the desired structure.
- Side Effects None
- Defined in
pslNode.c
static PslNode_ptr
psl_node_expand_next_event(
PslOp op,
PslNode_ptr f,
PslNode_ptr b,
PslOpConvType type
)
- During the conversion to LTL, this function is invoked
when the expansion of next_event family is required.
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_expand_replicator(
PslNode_ptr rep,
PslNode_ptr wff,
PslOp op
)
- Wff must not have been converted to smv yet when this
function is called. Each replicated expression wff will be joined
with the others by using the passed operator op. The result still
contains only psl tokens.
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
PslNode_ptr
psl_node_extended_next_get_condition(
PslNode_ptr next
)
- Returns the boolean condition of a next expression node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_extended_next_get_expr(
PslNode_ptr next
)
- Returns the FL expression of a next expression node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_extended_next_get_when(
PslNode_ptr next
)
- Returns the when component of a next expression node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_case_cond(
PslNode_ptr _case
)
- Returns the condition of the given case node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_case_next(
PslNode_ptr _case
)
- Returns the next case node of the given case.
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_case_then(
PslNode_ptr _case
)
- Returns the 'then' branch of the given case node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_ite_cond(
PslNode_ptr _ite
)
- Returns the condition of the given ITE node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_ite_else(
PslNode_ptr _ite
)
- Returns the 'else' branch of the given ITE node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_ite_then(
PslNode_ptr _ite
)
- Returns the 'then' branch of the given ITE node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_left(
PslNode_ptr n
)
- Returns the given expression's left branch
- Side Effects None
- Defined in
pslNode.c
PslOp
psl_node_get_op(
PslNode_ptr n
)
- Returns the given expression's top level operator
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_replicator_id(
PslNode_ptr _repl
)
- Given a replicator, returns the its ID
- Side Effects None
- Defined in
pslNode.c
PslOp
psl_node_get_replicator_join_op(
PslNode_ptr _repl
)
- Given a replicator, returns the operator joining each
replicated expression
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_replicator_normalized_value_set(
PslNode_ptr rep
)
- Given a replicator, returns its values set as a list
of the enumerated values
- Side Effects required
- See Also
optional
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_replicator_range(
PslNode_ptr _repl
)
- Given a replicator, returns its range
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_replicator_value_set(
PslNode_ptr _repl
)
- Given a replicator, returns the its values set.
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_get_right(
PslNode_ptr n
)
- Returns the given expression's right branch
- Side Effects None
- Defined in
pslNode.c
static PslNode_ptr
psl_node_insert_inside_holes(
PslNode_ptr e,
PslNode_ptr to_be_inserted,
boolean* inserted
)
- Service due to way concat_fusion expansion is implemented
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
boolean
psl_node_is_boolean_type(
PslNode_ptr expr
)
- Returns true if the given node is the PSL syntactic type
'boolean'
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_case(
PslNode_ptr _case
)
- Returns true if the given expression is a case expression
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_cons(
PslNode_ptr e
)
- Returns true if the given node is a list
- Side Effects None
- Defined in
pslNode.c
static boolean
psl_node_is_emptystar_free(
PslNode_ptr expr
)
- Returns true if the given expression is empty star-free
- Side Effects None
- Defined in
pslNode.c
static boolean
psl_node_is_equal(
PslNode_ptr e,
PslNode_ptr f
)
- To compare structures like {{a}} and {{{{a}}}} and check
whether the innermost {a}'s are actually the same node pointer
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_extended_next(
PslNode_ptr e
)
- Given a psl node returns true iff the expression belongs to
the next operators family.
- Side Effects None
- Defined in
pslNode.c
static boolean
psl_node_is_fl_op(
PslOp op
)
- Private service of PslNode_is_handled_psl
- Side Effects None
- See Also
PslNode_is_handled_psl
- Defined in
pslNode.c
static boolean
psl_node_is_handled_fl_op(
PslOp op
)
- Private service of PslNode_is_handled_psl
- Side Effects None
- See Also
PslNode_is_handled_psl
- Defined in
pslNode.c
static boolean
psl_node_is_handled_next(
PslNode_ptr next
)
- Private service of PslNode_is_handled_psl
- Side Effects None
- See Also
PslNode_is_handled_psl
- Defined in
pslNode.c
static boolean
psl_node_is_handled_sere(
PslNode_ptr e,
boolean toplevel
)
- Private service of PslNode_is_handled_psl
- Side Effects None
- See Also
PslNode_is_handled_psl
- Defined in
pslNode.c
boolean
psl_node_is_handled_star(
PslNode_ptr expr,
boolean toplevel
)
- precond: expr must be a repeated sere
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_id_equal(
PslNode_ptr _id1,
PslNode_ptr _id2
)
- Returns true if two ids are equal
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_id(
PslNode_ptr expr
)
- The top level operator of an ID can be DOT,
ATOM or ARRAY
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_infinite(
PslNode_ptr expr
)
- Returns true if the given node is the PSL syntactic value
'inf'
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_ite(
PslNode_ptr _ite
)
- Returns true if the given expression is If Then Else
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_leaf(
PslNode_ptr expr
)
- Returns true if the given node is a leaf, i.e. PSL_NULL, a
number, a boolean constant, or an atom.
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_num_equal(
PslNode_ptr _id1,
PslNode_ptr _id2
)
- Returns true if the given numbers are equal
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_number(
PslNode_ptr e
)
- Returns true if the given expression is an integer number
- Side Effects None
- Defined in
pslNode.c
static boolean
psl_node_is_obe_op(
PslOp op
)
- Private service of PslNode_is_handled_psl
- Side Effects None
- See Also
PslNode_is_handled_psl
- Defined in
pslNode.c
boolean
psl_node_is_propstar(
PslNode_ptr e
)
- Returns true if the given expression is a propositional
starred sere.
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_range(
PslNode_ptr expr
)
- Returns true if the given node is a range
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_repl_prop(
PslNode_ptr _prop
)
- Returns true if the given expression is a replicated
property
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_replicator(
PslNode_ptr _repl
)
- Returns true if the given expression represents a
replicator.
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_sere_compound_binary(
PslNode_ptr e
)
- Returns true if the given expression is a sere compound
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_sere(
PslNode_ptr expr
)
- A SERE can be in the form {a}, {a};{b}, {a}:{b},
{a}[*], {a}[+], {a}|{b}, {a}&{a}, {a}&&{b}
- Side Effects None
- Defined in
pslNode.c
static boolean
psl_node_is_star_free(
PslNode_ptr expr
)
- Returns true if the given sere is star-free
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_suffix_implication_strong(
PslNode_ptr expr
)
- Returns true if the given expression is a strong suffix
implication
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_suffix_implication_weak(
PslNode_ptr expr
)
- Returns true if the given expression is a weak suffix
implication
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_is_suffix_implication(
PslNode_ptr expr
)
- Returns true if the given expression is a suffix
implication
- Side Effects None
- Defined in
pslNode.c
static boolean
psl_node_is_unbound_star_free(
PslNode_ptr expr
)
- Returns true if the given sere doesn't contain any unbound
star
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_make_case(
PslNode_ptr _cond,
PslNode_ptr _then,
PslNode_ptr _next
)
- Maker for a CASE node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_make_cons_new(
PslNode_ptr elem,
PslNode_ptr next
)
- This gets the element to insert at top level, and
the list for next
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_make_cons(
PslNode_ptr elem,
PslNode_ptr next
)
- This gets the element to insert at top level, and
the list for next
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_make_extended_next(
PslOp op,
PslNode_ptr expr,
PslNode_ptr when,
PslNode_ptr condition
)
- Warning: the operator must be a symbol, not a token.
This means that psl_conv_op must be called to convert tokens before.
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_make_failure(
const char* msg,
FailureKind kind
)
- Maker for a FAILURE node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_make_false(
)
- Creates a new FALSE node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_make_number(
int value
)
- Maker for a NUMBER node
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_make_sere_compound(
PslNode_ptr seq1,
PslOp op,
PslNode_ptr seq2
)
- Warning: the operator must be a symbol, not a token.
This means that psl_conv_op must be called to convert tokens before.
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_make_true(
)
- Creates a new TRUE node
- Side Effects None
- Defined in
pslNode.c
int
psl_node_number_get_value(
PslNode_ptr e
)
- Returns the integer value associated with the given number
node.
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_prune(
PslNode_ptr tree,
PslNode_ptr branch
)
- Prunes aways the given branch from the given tree
- Side Effects None
- Defined in
pslNode.c
static PslNode_ptr
psl_node_pslltl2ltl(
PslNode_ptr expr,
PslOpConvType type,
NodeList_ptr replicator_id_stack
)
- Takes a PSL LTL expression and builds the corresponding
LTL expression. This ignores SERE that can be easily mapped to the
corresponding LTL expression. The parameter replicator_id_stack is
used to prevent ID duplication of nested forall (replicators).
type can be PSL2SMV or PSL2PSL
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_pslobe2ctl(
PslNode_ptr expr,
PslOpConvType type,
NodeList_ptr replicator_id_stack
)
- Private service for high level function PslNode_pslobe2ctl
- Side Effects required
- See Also
PslNode_pslobe2ctl
- Defined in
pslConv.c
PslNode_ptr
psl_node_range_get_high(
PslNode_ptr expr
)
- Returns the high bound of the given range
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_range_get_low(
PslNode_ptr expr
)
- Returns the low bound of the given range
- Side Effects None
- Defined in
pslNode.c
static PslNode_ptr
psl_node_remove_forall_replicators(
PslNode_ptr expr,
NodeList_ptr replicator_id_stack
)
- Private service for high level function
PslNode_remove_forall_replicators. In removing nested
forall it takes into accaount possible clashes on the
names of the bounded variables.
- Side Effects required
- See Also
PslNode_remove_forall_replicators
- Defined in
pslConv.c
static PslNode_ptr
psl_node_remove_suffix_implication(
PslNode_ptr e
)
- Resolves suffix implication
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
PslNode_ptr
psl_node_repl_prop_get_property(
PslNode_ptr _prop
)
- Given a replicated property, returns the node that contains
the property.
- Side Effects None
- See Also
psl_node_repl_prop_get_replicator
- Defined in
pslNode.c
PslNode_ptr
psl_node_repl_prop_get_replicator(
PslNode_ptr _prop
)
- Given a replicated property, returns the node that contains
the replicator.
- Side Effects None
- See Also
psl_node_repl_prop_get_property
- Defined in
pslNode.c
static PslNode_ptr
psl_node_sere_concat_fusion2ltl(
PslNode_ptr e,
PslNode_ptr phi
)
- This function assumes that expression is a concat/fusion
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_distrib_disj(
PslNode_ptr e,
boolean * modified
)
- Distributes the disjunction among SEREs
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_get_leftmost(
PslNode_ptr e
)
- Returns the leftmost element of e that is not a SERE
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_get_rightmost(
PslNode_ptr e
)
- Returns the rightmost element of e that is not a SERE
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
boolean
psl_node_sere_is_2ampersand(
PslNode_ptr e
)
- Returns true if the given expression is a sere in the form
{ s2 && s1 }
- Side Effects None
- Defined in
pslNode.c
static boolean
psl_node_sere_is_ampersand(
PslNode_ptr e
)
- Returns true if the given SERE is in the form {a} & {b}
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
boolean
psl_node_sere_is_concat_fusion_holes_free(
PslNode_ptr e
)
- [Returns true if there are no holes in the given
fusion/concat sere to be filled in.
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_sere_is_concat_fusion(
PslNode_ptr e
)
- Returns true if the given expression is a concat or fusion
sere.
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_sere_is_concat_holes_free(
PslNode_ptr e
)
- Returns true if there are no holes in the given concat sere
to be filled in.
- Side Effects None
- Defined in
pslNode.c
static boolean
psl_node_sere_is_disj(
PslNode_ptr e
)
- Returns true if the given expression is a disjunction of SEREs.
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
boolean
psl_node_sere_is_plus(
PslNode_ptr e
)
- Returns true if the given expression a plus repeated sere
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_sere_is_propositional(
PslNode_ptr e
)
- Returns true if the given sere contains a single
propositional expression
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_sere_is_repeated(
PslNode_ptr e
)
- Returns true if the given expr is a repeated sere
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_sere_is_standalone_plus(
PslNode_ptr e
)
- Returns true if the given repeated sere is in the form
[+]
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_sere_is_standalone_star(
PslNode_ptr e
)
- Returns true if the given expr is in the form [*],
with or without a counter.
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_sere_is_star_count(
PslNode_ptr e
)
- Returns true if the given starred repeated sere as also
a counter
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_sere_is_stareq(
PslNode_ptr e
)
- Returns true if the given expr is a starred-eq repeated sere
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_sere_is_starminusgt(
PslNode_ptr e
)
- Returns true if the given expr is a starred-minusgt repeated sere
- Side Effects None
- Defined in
pslNode.c
boolean
psl_node_sere_is_star(
PslNode_ptr e
)
- Returns true if the given expr is a starred repeated sere
- Side Effects None
- Defined in
pslNode.c
static PslNode_ptr
psl_node_sere_remove_2ampersand(
PslNode_ptr e,
boolean * modified
)
- Resolves {a} && {a}
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_remove_ampersand(
PslNode_ptr e,
boolean* modified
)
- Resolves {a}&{a}
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_remove_disj(
PslNode_ptr e
)
- This function assumes that expression is a disjunction
of concat/fusion
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_remove_fusion(
PslNode_ptr e,
boolean * modified
)
- Resolves {a}:{a}
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_remove_plus(
PslNode_ptr e,
boolean toplevel
)
- Resolve SERE [+]
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_remove_star_count(
PslNode_ptr e
)
- Resolves starred SEREs
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_remove_star(
PslNode_ptr e,
boolean toplevel,
boolean* modified
)
- Resolves starred SEREs
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_remove_trailing_plus(
PslNode_ptr e
)
- Resolves the last trailing standalone plus
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
static PslNode_ptr
psl_node_sere_remove_trailing_star(
PslNode_ptr e,
boolean* modified
)
- Resolves trailing standalone stars
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
PslNode_ptr
psl_node_sere_repeated_get_count(
PslNode_ptr e
)
- Returns the count associated to the repeated sere
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_sere_repeated_get_expr(
PslNode_ptr e
)
- Returns the repeated expression associated to the repeated
sere
- Side Effects None
- Defined in
pslNode.c
PslOp
psl_node_sere_repeated_get_op(
PslNode_ptr e
)
- Returns the count associated to the repeated sere
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_sere_star_get_count(
const PslNode_ptr e
)
- Returned value can be either a positive integer value, or
the constant PSL_EMPTYSTAR to represent an empty starred sere.
- Side Effects None
- Defined in
pslNode.c
static PslNode_ptr
psl_node_sere_translate(
PslNode_ptr e
)
- High-level service of exported function PslNode_remove_sere
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
void
psl_node_set_left(
PslNode_ptr n,
PslNode_ptr l
)
- Sets the given expression's left branch
- Side Effects None
- Defined in
pslNode.c
void
psl_node_set_right(
PslNode_ptr n,
PslNode_ptr r
)
- Sets the given expression's right branch
- Side Effects None
- Defined in
pslNode.c
static PslNode_ptr
psl_node_subst_id(
PslNode_ptr expr,
PslNode_ptr id,
PslNode_ptr v,
boolean is_top_level
)
- This is used to rename IDs occurring in the tree, when
the replicator 'foreach' statement is resolved
- Side Effects required
- See Also
optional
- Defined in
pslConv.c
PslNode_ptr
psl_node_suffix_implication_get_consequence(
PslNode_ptr e
)
- Returns the consequence of the given suffix implication
- Side Effects None
- Defined in
pslNode.c
PslNode_ptr
psl_node_suffix_implication_get_premise(
PslNode_ptr e
)
- Returns the premise of the given suffix implication
- Side Effects None
- Defined in
pslNode.c
(
)
- Define to optimize the convertion of next
- Defined in
pslConv.c
(
)
- This is used by the function that converts the operators, as
a shortcut for PSL_OP_CONV3(tok, X, X)
- Defined in
pslConv.c