Class: ESI::CParser
- Inherits:
-
Object
- Object
- ESI::CParser
- Defined in:
- ext/esi/esi_parser.c
Direct Known Subclasses
Instance Method Summary collapse
- #depth ⇒ Object
- #depth=(depth) ⇒ Object
- #end_tag_handler ⇒ Object
- #esi_tag ⇒ Object
- #esi_tag=(esi_tag) ⇒ Object
- #finish ⇒ Object
- #flush ⇒ Object
- #output ⇒ Object
- #output<<(output) ⇒ Object
- #output=(output) ⇒ Object
- #output_handler ⇒ Object
-
#process(data) ⇒ Object
}else { printf( “rb_thread_schedulen” ); rb_thread_schedule(); }.
- #start_tag_handler ⇒ Object
Instance Method Details
#depth ⇒ Object
235 236 237 238 239 |
# File 'ext/esi/esi_parser.c', line 235
static
VALUE ESIParser_get_depth( VALUE self )
{
return rb_ivar_get( self, rb_intern("@depth") );
}
|
#depth=(depth) ⇒ Object
228 229 230 231 232 233 |
# File 'ext/esi/esi_parser.c', line 228
static
VALUE ESIParser_set_depth( VALUE self, VALUE depth )
{
rb_ivar_set( self, rb_intern("@depth"), depth );
return depth;
}
|
#end_tag_handler ⇒ Object
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'ext/esi/esi_parser.c', line 59
static
VALUE ESIParser_set_end_tag_cb( VALUE self )
{
ESIParser *parser;
if( !rb_block_given_p() ){
rb_raise(rb_eArgError, "Block expected. Call this method with a closure. { ... }");
}
Data_Get_Struct( self, ESIParser, parser );
rb_ivar_set( self, rb_intern("@end_tag_block"), rb_block_proc() );
return Qnil;
}
|
#esi_tag ⇒ Object
222 223 224 225 226 |
# File 'ext/esi/esi_parser.c', line 222
static
VALUE ESIParser_get_esi_tag( VALUE self )
{
return rb_ivar_get( self, rb_intern("@esi_tag") );
}
|
#esi_tag=(esi_tag) ⇒ Object
215 216 217 218 219 220 |
# File 'ext/esi/esi_parser.c', line 215
static
VALUE ESIParser_set_esi_tag( VALUE self, VALUE esi_tag )
{
rb_ivar_set( self, rb_intern("@esi_tag"), esi_tag );
return esi_tag;
}
|
#finish ⇒ Object
176 177 178 179 180 181 182 183 184 185 186 |
# File 'ext/esi/esi_parser.c', line 176
static
VALUE ESIParser_finish( VALUE self )
{
ESIParser *parser;
Data_Get_Struct( self, ESIParser, parser );
esi_parser_finish( parser );
return Qnil;
}
|
#flush ⇒ Object
164 165 166 167 168 169 170 171 172 173 174 |
# File 'ext/esi/esi_parser.c', line 164
static
VALUE ESIParser_flush( VALUE self )
{
ESIParser *parser;
Data_Get_Struct( self, ESIParser, parser );
esi_parser_flush_output( parser );
return Qnil;
}
|
#output ⇒ Object
248 249 250 251 252 |
# File 'ext/esi/esi_parser.c', line 248
static
VALUE ESIParser_get_output( VALUE self )
{
return rb_ivar_get( self, rb_intern("@output") );
}
|
#output<<(output) ⇒ Object
253 254 255 256 257 258 259 260 261 262 263 |
# File 'ext/esi/esi_parser.c', line 253
static
VALUE ESIParser_send_output( VALUE self, VALUE output )
{
ESIParser *parser;
Data_Get_Struct( self, ESIParser, parser );
esi_parser_default_output_cp( RSTRING_PTR(output), RSTRING_LEN(output), (void*)self );
return Qnil;
}
|
#output=(output) ⇒ Object
241 242 243 244 245 246 |
# File 'ext/esi/esi_parser.c', line 241
static
VALUE ESIParser_set_output( VALUE self, VALUE output )
{
rb_ivar_set( self, rb_intern("@output"), output );
return output;
}
|
#output_handler ⇒ Object
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'ext/esi/esi_parser.c', line 27
static
VALUE ESIParser_set_output_cb( VALUE self )
{
ESIParser *parser;
if( !rb_block_given_p() ){
rb_raise(rb_eArgError, "Block expected. Call this method with a closure. { ... }");
}
Data_Get_Struct( self, ESIParser, parser );
rb_ivar_set( self, rb_intern("@output"), rb_block_proc() );
return Qnil;
}
|
#process(data) ⇒ Object
}else {
printf( "rb_thread_schedule\n" );
rb_thread_schedule();
}
154 155 156 157 158 159 160 161 162 |
# File 'ext/esi/esi_parser.c', line 154
static
VALUE ESIParser_process( VALUE self, VALUE data )
{
ESIParser *parser;
Data_Get_Struct( self, ESIParser, parser );
return rb_int_new( esi_parser_execute( parser, RSTRING_PTR( data ), RSTRING_LEN( data ) ) );
}
|
#start_tag_handler ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'ext/esi/esi_parser.c', line 43
static
VALUE ESIParser_set_start_tag_cb( VALUE self )
{
ESIParser *parser;
if( !rb_block_given_p() ){
rb_raise(rb_eArgError, "Block expected. Call this method with a closure. { ... }");
}
Data_Get_Struct( self, ESIParser, parser );
rb_ivar_set( self, rb_intern("@start_tag_block"), rb_block_proc() );
return Qnil;
}
|