File tree Expand file tree Collapse file tree 2 files changed +31
-1
lines changed Expand file tree Collapse file tree 2 files changed +31
-1
lines changed Original file line number Diff line number Diff line change @@ -1685,7 +1685,7 @@ def finalize_vars(self):
1685
1685
1686
1686
elif nestedTypedef :
1687
1687
var ["fundamental" ] = is_fundamental (nestedTypedef )
1688
- if not var ["fundamental" ]:
1688
+ if not var ["fundamental" ] and "method" in var :
1689
1689
var ["raw_type" ] = var ["method" ]["path" ] + "::" + tag
1690
1690
1691
1691
else :
Original file line number Diff line number Diff line change @@ -3838,5 +3838,35 @@ def test_fn(self):
3838
3838
)
3839
3839
3840
3840
3841
+ class NestedTypedef (unittest .TestCase ):
3842
+ def setUp (self ):
3843
+ self .cppHeader = CppHeaderParser .CppHeader (
3844
+ """
3845
+ template <class SomeType> class A {
3846
+ public:
3847
+ typedef B <SomeType> C;
3848
+
3849
+ A();
3850
+
3851
+ protected:
3852
+ C aCInstance;
3853
+ };
3854
+ """ ,
3855
+ "string" ,
3856
+ )
3857
+
3858
+ def test_fn (self ):
3859
+ c = self .cppHeader .classes ["A" ]
3860
+ self .assertEqual ("A" , c ["name" ])
3861
+
3862
+ self .assertEqual (0 , len (c ["properties" ]["public" ]))
3863
+ self .assertEqual (1 , len (c ["properties" ]["protected" ]))
3864
+ self .assertEqual (0 , len (c ["properties" ]["private" ]))
3865
+
3866
+ c = c ["properties" ]["protected" ][0 ]
3867
+ self .assertEqual (c ["name" ], "aCInstance" )
3868
+ self .assertEqual (c ["type" ], "C" )
3869
+
3870
+
3841
3871
if __name__ == "__main__" :
3842
3872
unittest .main ()
You can’t perform that action at this time.
0 commit comments