# func/rb_*.pas から funcint.pas, funcimp.pas を作成します。
# 現在の実装では funcimp.pas は常に空です。

def parse(line)
  line.chomp!

  case line
  when /^procedure\s+/, /^function\s+/
    $finterface.print line, $extern
  else
    $finterface.print line
  end
  $finterface.print "\n"
end

$extern = " cdecl; external RubyDLL;"

$finterface = open('funcint.pas', 'w')
$fimplement = open('funcimp.pas', 'w')

Dir.glob('func/rb_*.pas').each{|entry|
  print "found #{entry}\n"
  open(entry){|f|
    while line = f.gets
      parse line
    end
  }
}

$fimplement.close
$finterface.close

