In Files

  • rdoc/dot/dot.rb

Files

Class/Module Index [+]

Quicksearch

DOT::DOTNode

node element

Public Class Methods

new( params = {}, option_list = NODE_OPTS ) click to toggle source
 
               # File rdoc/dot/dot.rb, line 140
def initialize( params = {}, option_list = NODE_OPTS )
    super( params, option_list )
    @ports = params['ports'] ? params['ports'] : []
end
            

Public Instance Methods

<<( thing ) click to toggle source
 
               # File rdoc/dot/dot.rb, line 149
def << ( thing )
    @ports << thing
end
            
each_port() click to toggle source
 
               # File rdoc/dot/dot.rb, line 145
def each_port
    @ports.each{ |i| yield i }
end
            
pop() click to toggle source
 
               # File rdoc/dot/dot.rb, line 157
def pop
    @ports.pop
end
            
push( thing ) click to toggle source
 
               # File rdoc/dot/dot.rb, line 153
def push ( thing )
    @ports.push( thing )
end
            
to_s( t = '' ) click to toggle source
 
               # File rdoc/dot/dot.rb, line 161
def to_s( t = '' )

    label = @options['shape'] != 'record' && @ports.length == 0 ?
        @options['label'] ?
            t + $tab + "label = \"#{@options['label']}\"\n" :
            '' :
        t + $tab + 'label = "' + " \\\n" +
        t + $tab2 + "#{@options['label']}| \\\n" +
        @ports.collect{ |i|
            t + $tab2 + i.to_s
        }.join( "| \\\n" ) + " \\\n" +
        t + $tab + '"' + "\n"

    t + "#{@name} [\n" +
    @options.to_a.collect{ |i|
        i[1] && i[0] != 'label' ?
            t + $tab + "#{i[0]} = #{i[1]}" : nil
    }.compact.join( ",\n" ) + ( label != '' ? ",\n" : "\n" ) +
    label +
    t + "]\n"
end