Recognizing properties, methods and function names in Matlab code.
古いコメントを表示
I'm writing a global naming convention change utility for Matlab code. To this end, I would like to know the answers to the following:
In correctly written Matlab and excluding dynamic access:
1. Given a property name outside of its declaration in class, will it always be preceded by a dot?
2. Given a method name outside of its declaration in class, will it always be preceded by a dot?
3. Given a method name outside of its declaration in class, will it always be followed by zero or more whitespaces and an open parenthesis OR followed by an @ symbol?
4. Given a standalone function name will it always, in correctly (non-deprecated) written code, be followed by zero or more whitespaces and an open parenthesis OR be preceded by an @ symbol?
Thank you for any help.
回答 (1 件)
Bruno Luong
2022 年 4 月 16 日
0 投票
None of that is true. Some counter examples:
- set(obj, 'property', value)
- mymeth(obj, ...)
- obj.mymeth % no argument
- feval('myfun', arg1)
8 件のコメント
SK
2022 年 4 月 16 日
Bruno Luong
2022 年 4 月 16 日
編集済み: Bruno Luong
2022 年 4 月 16 日
"3 is bad form in my opinion"
it's your opinion. who use
alpha = pi();
insteade of
alpha = pi;
If you want your utility to work and robust, you cannot assume it only works on what you consider as good practice.
Bruno Luong
2022 年 4 月 16 日
編集済み: Bruno Luong
2022 年 4 月 16 日
Also would you have to know foo is property or method for this case?
bar = obj.foo(1);
Then all the structure fields use also dot syntax that can create confusion.
SK
2022 年 4 月 16 日
Bruno Luong
2022 年 4 月 16 日
Well as you migh guess this is accessing to the first element of a property.
SK
2022 年 4 月 16 日
SK
2022 年 4 月 16 日
カテゴリ
ヘルプ センター および File Exchange で Number Theory についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!