Function

IpuzEnumerationForeachDelimFunc

Declaration

void
(* IpuzEnumerationForeachDelimFunc) (
  IpuzEnumeration* enumeration,
  IpuzDeliminator delim,
  guint grid_offset,
  gboolean final_word,
  gpointer user_data
)

Description [src]

The function to be passed to ipuz_enumeration_foreach_delim().

grid_offset indicates what position within the clue the deliminator can be found. It includes both the borders and the cells in its count, with the inital left border starting at 0. For example, consider the enumeration "^4-4 3":

Enumeration "^4-4 3"

This function will be called in the following places:

  • At grid_offset=1 with delim=IPUZ_DELIMINATOR_CAPITALIZED on the “C” character
  • At grid_offset=8 with delim=IPUZ_DELIMINATOR_DASH between cells 4 and 5
  • At grid_offset=16 with delim=IPUZ_DELIMINATOR_WORD_BREAK betwen cells 8 and 9
  • At grid_offset=22 with delim=IPUZ_DELIMINATOR_WORD_BREAK and final_word set to TRUE

Note

The final IPUZ_DELIMINATOR_WORD_BREAK is implicit and shouldn’t be rendered in the puzzle. It is used to indicate the length of the final word, and is useful for continuations.

Parameters

enumeration

Type: IpuzEnumeration

The IpuzEnumeration to iterate through.

The data is owned by the caller of the function.
delim

Type: IpuzDeliminator

The next IpuzDeliminator being iterated.

grid_offset

Type: guint

The offset of delim within the grid.

final_word

Type: gboolean

Whether the deliminator marks the end of the final word.

user_data

Type: gpointer

Data to be passed to the function.

The argument can be NULL.
The data is owned by the caller of the function.