Class: Object::Syck::Seq
Instance Attribute Summary
Attributes inherited from Node
#emitter, #kind, #resolver, #type_id, #value
Instance Method Summary collapse
-
#add(val) ⇒ Object
YAML::Syck::Seq.add.
-
#initialize(type_id, val, style) ⇒ Object
constructor
YAML::Syck::Seq.initialize.
-
#style=(style) ⇒ Object
YAML::Syck::Seq.style=.
-
#value=(val) ⇒ Object
YAML::Syck::Seq.value=.
Methods inherited from Node
Constructor Details
#initialize(type_id, val, style) ⇒ Object
YAML::Syck::Seq.initialize
1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 |
# File 'ext/syck/rubyext.c', line 1699
VALUE
syck_seq_initialize(VALUE self, VALUE type_id, VALUE val, VALUE style)
{
SyckNode *node;
TypedData_Get_Struct( self, SyckNode, &syck_node_type, node );
rb_iv_set( self, "@kind", sym_seq );
rb_funcall( self, s_type_id_set, 1, type_id );
rb_funcall( self, s_value_set, 1, val );
rb_funcall( self, s_style_set, 1, style );
return self;
}
|
Instance Method Details
#add(val) ⇒ Object
YAML::Syck::Seq.add
1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 |
# File 'ext/syck/rubyext.c', line 1738
VALUE
syck_seq_add_m(VALUE self, VALUE val)
{
SyckNode *node;
VALUE emitter = rb_ivar_get( self, s_emitter );
TypedData_Get_Struct( self, SyckNode, &syck_node_type, node );
if ( rb_respond_to( emitter, s_node_export ) ) {
val = rb_funcall( emitter, s_node_export, 1, val );
}
syck_seq_add( node, val );
rb_ary_push( rb_ivar_get( self, s_value ), val );
return self;
}
|
#style=(style) ⇒ Object
YAML::Syck::Seq.style=
1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 |
# File 'ext/syck/rubyext.c', line 1757
VALUE
syck_seq_style_set(VALUE self, VALUE style)
{
SyckNode *node;
TypedData_Get_Struct( self, SyckNode, &syck_node_type, node );
if ( style == sym_inline )
{
node->data.list->style = seq_inline;
}
else
{
node->data.list->style = seq_none;
}
rb_iv_set( self, "@style", style );
return self;
}
|
#value=(val) ⇒ Object
YAML::Syck::Seq.value=
1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 |
# File 'ext/syck/rubyext.c', line 1715
VALUE
syck_seq_value_set(VALUE self, VALUE val)
{
SyckNode *node;
TypedData_Get_Struct( self, SyckNode, &syck_node_type, node );
val = rb_check_array_type( val );
if ( !NIL_P( val ) ) {
int i;
syck_seq_empty( node );
for ( i = 0; i < RARRAY_LEN( val ); i++ )
{
syck_seq_add( node, rb_ary_entry(val, i) );
}
}
rb_iv_set( self, "@value", val );
return val;
}
|