[umbrello] [Bug 375223] C# importer doesn't support properties

Oliver Kellogg bugzilla_noreply at kde.org
Sat Feb 12 13:44:34 GMT 2022


https://bugs.kde.org/show_bug.cgi?id=375223

Oliver Kellogg <okellogg at users.sourceforge.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED
   Version Fixed In|                            |2.33.80 (KDE releases
                   |                            |22.03.80)
      Latest Commit|                            |https://invent.kde.org/sdk/
                   |                            |umbrello/commit/47e8a38a28f
                   |                            |02bbafd437fb4038e055249d444
                   |                            |1b

--- Comment #1 from Oliver Kellogg <okellogg at users.sourceforge.net> ---
Git commit 47e8a38a28f02bbafd437fb4038e055249d4441b by Oliver Kellogg.
Committed on 12/02/2022 at 13:44.
Pushed by okellogg into branch 'master'.

Finalize "C#: Windows Forms classes are not imported" and fix "C# importer
doesn't support properties"

umbrello/codeimport/csharp/csharpimport.{h,cpp}
- Reimplement function preprocess(QString&); from NativeImportBase,
  currently only to discard preprocessor lines.
  Reason: If we don't do this then preprocessor lines are forwarded to
  the m_source token stream which creates problems on parsing.

umbrello/codeimport/csharp/csharpimport.cpp
- Cosmetic change in function joinTypename: Use lookAhead() in place of
  m_source[m_srcIndex + 1].
- In function resolveClass first call
    findObject(className, currentScope())
  and if this returns non null then return the found object.
- In function parseStmt :
  - Before testing isTypeDeclaration(keyword), while
    isClassModifier(keyword) returns true assign advance() to keyword.
  - Simplify if-statement testing isTypeDeclaration(keyword), use
    `keyword' in place of nextKeyword.
  - Remove handling of keyword "#", this is obsoleted by reimplementing
    preprocess(QString&).
  - Before expecting `keyword' to be a type name advance over possible
    modifiers using isCommonModifier(keyword).
  - In handling of nextToken "(", do not try resolving the return type
    if it is "void". In this case set typeName empty to avoid creation
    of a bogus type for "void".
  - Before handling a data member declaration add handling of nextToken
    "{" (property).
Related: bug 449268
FIXED-IN:2.33.80 (KDE releases 22.03.80)

M  +72   -44   umbrello/codeimport/csharp/csharpimport.cpp
M  +4    -2    umbrello/codeimport/csharp/csharpimport.h

https://invent.kde.org/sdk/umbrello/commit/47e8a38a28f02bbafd437fb4038e055249d4441b

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the umbrello-devel mailing list