3 def nextheader(text,index)
4 header = text[index+1..text.size].find{|i| i =~ /\.S(S|H)/}
8 grouptext = open("SampleGroup.3","r").readlines.reverse
10 fd = grouptext.index(grouptext.find{|i| i =~ /SampleFunction/})
11 fdheader = nextheader(grouptext,fd)
13 restofthetext = grouptext[fd+1..grouptext.size]
15 fl = restofthetext.index(restofthetext.find{|i| i =~ /SampleFunction/})
16 flheader = nextheader(restofthetext,fl)
18 dd = grouptext.index(grouptext.find{|i| i =~ /long group document/})
19 ddheader = nextheader(grouptext,dd)
22 structext = open("SampleStructure.3","r").readlines.reverse
24 fieldd = structext.index(structext.find{|i| i =~ /SampleField/})
25 fielddheader = nextheader(structext,fieldd)
27 restofstructext = structext[fieldd+1..structext.size]
29 fieldl = restofstructext.index(restofstructext.find{|i| i =~ /SampleField/})
30 fieldlheader = nextheader(restofstructext, fieldl)
32 print fdheader, flheader, ddheader, fielddheader, fieldlheader