<?xml version='1.0' encoding='ISO-8859-1'?>
<ast>
 <declarations>
  <instance accessibility="0" class="Synopsis.AST.Class" file="Parsers/Cxx/input/template.cc" language="C++" line="1" name="Object" type="struct">
   <declarations>
    <instance accessibility="1" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/template.cc" language="C++" line="3" name="Object.f" type="data member">
     <vtype>
      <instance class="Synopsis.Type.Base" language="C++" name="float"/>
     </vtype>
    </instance>
    <instance accessibility="1" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/template.cc" language="C++" line="4" name="Object.func()" realname="func" type="member function">
     <returnType>
      <instance class="Synopsis.Type.Base" language="C++" name="double"/>
     </returnType>
    </instance>
    <instance accessibility="1" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/template.cc" language="C++" line="5" name="Object.Object()" realname="Object" type="member function"/>
    <instance accessibility="1" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/template.cc" language="C++" line="6" name="Object.Object(const Object&amp;)" realname="Object" type="member function">
     <parameters>
      <instance class="Synopsis.AST.Parameter" identifier="" value="">
       <type>
        <instance class="Synopsis.Type.Modifier" language="C++">
         <alias>
          <instance class="Synopsis.Type.Declared" language="C++" name="Object">
           <declaration/>
          </instance>
         </alias>
         <postmod>
          &amp;
         </postmod>
         <premod>
          const
         </premod>
        </instance>
       </type>
      </instance>
     </parameters>
    </instance>
    <instance accessibility="1" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/template.cc" language="C++" line="7" name="Object.operator=(const Object&amp;)" realname="operator=" type="member function">
     <parameters>
      <instance class="Synopsis.AST.Parameter" identifier="" value="">
       <type>
        <instance class="Synopsis.Type.Modifier" language="C++">
         <alias/>
         <postmod>
          &amp;
         </postmod>
         <premod>
          const
         </premod>
        </instance>
       </type>
      </instance>
     </parameters>
     <returnType>
      <instance class="Synopsis.Type.Modifier" language="C++">
       <alias/>
       <postmod>
        &amp;
       </postmod>
      </instance>
     </returnType>
    </instance>
    <instance accessibility="1" class="Synopsis.AST.Builtin" file="Parsers/Cxx/input/template.cc" language="C++" line="7" name="EOS" type="EOS"/>
   </declarations>
  </instance>
  <instance accessibility="0" class="Synopsis.AST.Class" file="Parsers/Cxx/input/template.cc" language="C++" line="11" name="list" type="class">
   <template>
    <instance class="Synopsis.Type.Template" language="C++" name="list">
     <declaration/>
     <parameters>
      <instance class="Synopsis.AST.Parameter" identifier="" value="">
       <premodifier>
        typename
       </premodifier>
       <type>
        <instance class="Synopsis.Type.Dependent" language="C++" name="T"/>
       </type>
      </instance>
     </parameters>
    </instance>
   </template>
   <declarations>
    <instance accessibility="3" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/template.cc" language="C++" line="13" name="list.m_array" type="data member">
     <vtype>
      <instance class="Synopsis.Type.Modifier" language="C++">
       <alias/>
       <postmod>
        *
       </postmod>
      </instance>
     </vtype>
    </instance>
    <instance accessibility="3" class="Synopsis.AST.Variable" constr="0" file="Parsers/Cxx/input/template.cc" language="C++" line="14" name="list.m_size" type="data member">
     <vtype>
      <instance class="Synopsis.Type.Base" language="C++" name="int"/>
     </vtype>
    </instance>
    <instance accessibility="1" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/template.cc" language="C++" line="16" name="list.list()" realname="list" type="member function"/>
    <instance accessibility="1" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/template.cc" language="C++" line="17" name="list.list(T*)" realname="list" type="member function">
     <parameters>
      <instance class="Synopsis.AST.Parameter" identifier="" value="">
       <type>
        <instance class="Synopsis.Type.Modifier" language="C++">
         <alias/>
         <postmod>
          *
         </postmod>
        </instance>
       </type>
      </instance>
     </parameters>
    </instance>
    <instance accessibility="1" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/template.cc" language="C++" line="19" name="list.operator[](int)" realname="operator[]" type="member function">
     <parameters>
      <instance class="Synopsis.AST.Parameter" identifier="index" value="">
       <type/>
      </instance>
     </parameters>
     <returnType>
      <instance class="Synopsis.Type.Modifier" language="C++">
       <alias/>
       <postmod>
        &amp;
       </postmod>
      </instance>
     </returnType>
    </instance>
    <instance accessibility="1" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/template.cc" language="C++" line="20" name="list.size()" realname="size" type="member function">
     <returnType/>
    </instance>
    <instance accessibility="1" class="Synopsis.AST.Operation" file="Parsers/Cxx/input/template.cc" language="C++" line="22" name="list.replace(int,const T&amp;)" realname="replace" type="member function">
     <parameters>
      <instance class="Synopsis.AST.Parameter" identifier="index" value="">
       <type/>
      </instance>
      <instance class="Synopsis.AST.Parameter" identifier="with" value="">
       <type>
        <instance class="Synopsis.Type.Modifier" language="C++">
         <alias/>
         <postmod>
          &amp;
         </postmod>
         <premod>
          const
         </premod>
        </instance>
       </type>
      </instance>
     </parameters>
     <returnType>
      <instance class="Synopsis.Type.Base" language="C++" name="void"/>
     </returnType>
    </instance>
    <instance accessibility="1" class="Synopsis.AST.Builtin" file="Parsers/Cxx/input/template.cc" language="C++" line="22" name="EOS" type="EOS"/>
   </declarations>
  </instance>
  <instance accessibility="0" class="Synopsis.AST.Function" file="Parsers/Cxx/input/template.cc" language="C++" line="25" name="main()" realname="main" type="function">
   <returnType/>
  </instance>
 </declarations>
 <types>
  <instance class="Synopsis.Type.Declared" language="C++" name="EOS">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="Object">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="Object.Object()">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="Object.Object(const Object&amp;)">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="Object.f">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="Object.func()">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="Object.operator=(const Object&amp;)">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="list">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="list.list()">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="list.list(T*)">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="list.m_array">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="list.m_size">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="list.operator[](int)">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="list.replace(int,const T&amp;)">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="list.size()">
   <declaration/>
  </instance>
  <instance class="Synopsis.Type.Declared" language="C++" name="main()">
   <declaration/>
  </instance>
 </types>
 <files>
  <instance class="Synopsis.AST.SourceFile" filename="Parsers/Cxx/input/template.cc" is_main="1" language="C++">
   <declarations/>
   <macro_calls/>
  </instance>
 </files>
</ast>
