W pytona:Jakie polecenie użyć do introspekcji instancji w scala REPL?
>>> s = "abc"
>>> dir(s)
['__add__', '__class__', '__contains__', '__delattr__', ...
istnieje sposób równoważny - tj dir funkcja() - w tym celu z przypadków w REPL scala?
W pytona:Jakie polecenie użyć do introspekcji instancji w scala REPL?
>>> s = "abc"
>>> dir(s)
['__add__', '__class__', '__contains__', '__delattr__', ...
istnieje sposób równoważny - tj dir funkcja() - w tym celu z przypadków w REPL scala?
Po naciśnięciu tabulatora-klawisz REPL pokazuje metody, które można zadzwonić na obiekcie:
scala> val s = "abc"
s: java.lang.String = abc
scala> s.<tab>
+ asInstanceOf charAt
codePointAt codePointBefore codePointCount
compareTo compareToIgnoreCase concat
contains contentEquals endsWith
equalsIgnoreCase getBytes getChars
indexOf intern isEmpty
isInstanceOf lastIndexOf length
matches offsetByCodePoints regionMatches
replace replaceAll replaceFirst
split startsWith subSequence
substring toCharArray toLowerCase
toString toUpperCase trim
Aby uzyskać więcej informacji na temat REPL wyglądać here.
Dlaczego tab-completion jest bardziej odpowiedni jako pomoc w ciągu REPL (i to pokazuje parametry też, kiedy już napisane nazwę metody!), Odpowiednik techniczny dir
jest:
s.getClass.getMethods
Nie całkiem, ponieważ dir() dostanie wszystko, włączając w to zmienne składowe itp. –
@Mike To jest dyskusja, ponieważ Scala nie ma zmiennych członkowskich z wyjątkiem artefaktów implementacji. Wszystko, co można wykorzystać w obiekcie Scala, jest dostępne jako metoda. –
Czy potrzebujesz czegoś lepszego niż uzupełnianie kart? – Debilski
@Debilski, tak, jeśli f.e. używasz czegoś innego niż czysty terminal. Na przykład. SublimeREPL – Ufos