|
こんにちは、もとはしです。
> 「設定・ファイルタイプ別の設定...」の「アウトライン - 解析」ページにあ
> る「アウトライン解析の方法」を「関数一覧」にしたら出ないかと思うのですが、
> その辺どうでしょうか。
確かに「関数一覧」を選択した所、"import (" のような行は表示されませんでした。
確認不足で、失礼致しました。
> func (
> main() { ... }
> sub() { ... }
> )
> とか書いたらmainとsubの両方出さないといけないということで…。
確かにこの書き方も文法上は可能ですね。
> これは対応不可って制限にしたい所です。
この書き方は一般的ではないので、これを制約事項としても困る人はいないと
思います。
あと他にも関数ではないのに関数として表示される例をいくつか見つけましたので、
以下にご報告させて頂きたいと思います。
func main() {
f := func(s string) { // @関数リテラル(匿名関数)の例
fmt.Println(s)
}
cb, ok = f.(CallBackFunc) // A型アサーションの例
if !ok {
t.Errorf("UnmarshalJson() returned unexpected type:[%T]\n", msg)
}
value, ok = cmd.getValue() // Bメソッドコールの例
if !ok {
Println("cannot get value")
}
j = func2(100) // C単なる関数コール
str := `{}`
}
まず@に関しては、匿名の関数は関数一覧に表示されても役に立たないので、
できれば表示対象外として頂けると助かります。
AとBは、いずれも次行の if 文の条件式がカッコで括られていないのが
影響しているようです。
最後のCは、バッククォートで囲んだ文字列の中に "{}" が含まれている
ことが影響しているようです。
以上です。よろしくお願い致します。
|
|