
Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: §wip/atl/HPROF/extracted
Source used for this grammar: Frédéric Jouault, HPROF 1.0, HPROF.ecore, 2009/09/09
LocatedElement, Profile, Method, ThreadAction, ThreadStart, ThreadEnd, Trace, StackTraceElement, Times, Time, Date, Day, Month, Boolean, Integer, String), 0 root (—), 2 top (LocatedElement, Boolean), 1 bottom (Double 2).[header], [threadActions], [traces], [times] 2, [methods], [fullyQualifiedName], [stackTraceElements], [obj], [name], [group], [id] 2, [threadId], [elements] 2, [method] 2, [fileName], [line], [trace] 2, [unit], [total], [date], [rank], [self], [accum], [count], [day], [month], [dayOfMonth], [hour], [minutes], [seconds], [year], [Monday], [Tuesday], [Wednesday], [Thursday], [Friday], [Saturday], [Sunday], [January], [February], [March], [April], [May], [June], [July], [August], [September], [October], [November], [December].LocatedElement ::= Profile
LocatedElement ::= Method
LocatedElement ::= ThreadAction
LocatedElement ::= Trace
LocatedElement ::= StackTraceElement
LocatedElement ::= Times
LocatedElement ::= Time
LocatedElement ::= Date
Profile ::= [header]::String [threadActions]::ThreadAction [traces]::Trace [times]::Times [methods]::Method
Method ::=
[fullyQualifiedName]::String [stackTraceElements]::StackTraceElementThreadAction ::= ThreadStart
ThreadAction ::= ThreadEnd
ThreadStart ::= [obj]::Integer [name]::String [group]::String
ThreadEnd ::= [id]::Integer
Trace ::= [id]::Integer [threadId]::Integer [elements]::StackTraceElement [times]::Time
StackTraceElement ::= [method]::Method [fileName]::String [line]::Integer [trace]::Trace
Times ::=
[unit]::String [total]::Integer [date]::Date [elements]::TimeTime ::= [rank]::Integer [self]::Double [accum]::Double [count]::Integer [trace]::Trace [method]::Method
Date ::= [day]::Day [month]::Month [dayOfMonth]::Integer [hour]::Integer [minutes]::Integer [seconds]::Integer [year]::Integer
Day ::= [Monday]::ε [Tuesday]::ε [Wednesday]::ε [Thursday]::ε [Friday]::ε [Saturday]::ε [Sunday]::ε
Month ::= [January]::ε [February]::ε [March]::ε [April]::ε [May]::ε [June]::ε [July]::ε [August]::ε [September]::ε [October]::ε [November]::ε [December]::ε
Boolean ::= "true" "false"
Integer ::= integer
String ::= string