class AutoC::List::Range
Public Instance Methods
render_interface(stream)
click to toggle source
# File lib/autoc/list.rb, line 387 def render_interface(stream) if public? render_type_description(stream) stream << %{ /** #{ingroup} @brief Opaque structure holding state of the list's range @since 2.0 */ } else stream << PRIVATE end stream << %{ typedef struct { #{iterable._node_p} front; /**< @private */ } #{signature}; } end
Private Instance Methods
configure()
click to toggle source
Calls superclass method
# File lib/autoc/list.rb, line 409 def configure super custom_create.configure do inline_code %{ assert(range); assert(iterable); range->front = iterable->front; } end empty.configure do inline_code %{ assert(range); return range->front == NULL; } end pop_front.configure do dependencies << empty inline_code %{ assert(range); assert(!#{empty.(range)}); range->front = range->front->next; } end view_front.configure do dependencies << empty inline_code %{ assert(range); assert(!#{empty.(range)}); return &range->front->element; } end end