Home page de
Michel Casabianca

Actualité
oBlog
oNo Apple
oDebian sur Zotac Nano CI320
oDebian sur Acer C720P
oUn an avec un Raspberry Pi
oLes interfaces du GO
oParseurs YAML pour Go
oIntroduction à YAML
oNotes Formation Perl
oUtiliser le module Ruby MySQL
oUtiliser le module Ruby DBI
oScripts Python avec DB-API

Outils
oBabel
oBee
oTâches Ant
oInstalleur Java
oVisual SQL

MacOSX
oViewCVS sous MacOSX
oEmacs sous Panther

Conférences
oOutils J2EE Open Source
oDév. XML en Java sous Linux
oOutils de dév. Java sous Linux

Articles XML
oIntroduction à XML
oIntroduction à XSLT
oDéveloppement XML en Java
oGénérer des sites web avec Ant
oDTD Ant
oProject X

Articles Java
oTips CodeGuide
oKFM et Jars
oMails en Java
oJava et préprocesseur
oJava et images
oThreads
oÉvénements
oAstuces

Jeux
oAwele
oAtomX
oCore Warrior
oSolitaire
oSpiceWars
oTangram
oTaquin

Simulations
oJeu de la vie
oFourmi de Langton
oTri du couvain
oPiste de chasse

Graphisme
oFractales
oImages 3D
oPowered by ...
oEcce Duke
oTIE

À propos
oDe l'auteur
oDe ce site


Powered by

Powered by Debian
Version PDF  

Les interfaces du GO

Michel Casabianca - michel.casabianca@gmail.com

En assistant à la dotGo, où le buzzword était clairement l'interface, je me suis demandé où l'on pouvait se procurer la liste de toutes les interfaces définies dans le langage. J'ai cherché et n'ai trouvé cette information nulle part.

Je me suis donc décidé à écrire un petit programme qui :

  • Télécharge le tarball des sources d'une version donnée.
  • Parse les fichiers sources pour en extraire les interfaces ainsi que le numéro de ligne où elles sont définies.
  • Affiche sur la console la liste de ces interfaces sous la forme d'un tableau markdown.

Le projet se trouve sur Github : https://github.com/c4s4/gointerfaces.

Voici le résultat :

Interface Package 1.0.3 1.1.2 1.2.2 1.3.3 1.4.2
AEAD crypto/cipher - - source source source
Addr net source source source source source
Auth net/smtp source source source source source
BinaryMarshaler encoding - - source source source
BinaryUnmarshaler encoding - - source source source
Block crypto/cipher source source source source source
BlockMode crypto/cipher source source source source source
ByteOrder encoding/binary source source source source source
ByteReader io source source source source source
ByteScanner io source source source source source
ByteWriter io - source source source source
ClientCodec net/rpc source source source source source
ClientSessionCache crypto/tls - - - source source
CloseNotifier net/http - source source source source
Closer io source source source source source
Color image/color source source source source source
ColumnConverter database/sql/driver source source source source source
Conn net source source source source source
Conn database/sql/driver source source source source source
CookieJar net/http source source source source source
Curve crypto/elliptic source source source source source
Decl go/ast source source source source source
Drawer image/draw - - source source source
Driver database/sql/driver source source source source source
Error runtime source source source source source
Error net source source source source source
Execer database/sql/driver source source source source source
Expr go/ast source source source source source
File mime/multipart source source source source source
File net/http source source source source source
FileInfo os source source source source source
FileSystem net/http source source source source source
Flusher net/http source source source source source
Formatter fmt source source source source source
Generator testing/quick source source source source source
Getter flag - - source source source
GoStringer fmt source source source source source
GobDecoder encoding/gob source source source source source
GobEncoder encoding/gob source source source source source
Handler net/http source source source source source
Hash hash source source source source source
Hash32 hash source source source source source
Hash64 hash source source source source source
Hijacker net/http source source source source source
Image image/draw source source source source source
Image image source source source source source
Interface container/heap source source source source source
Interface sort source source source source source
Listener net source source source source source
Load debug/macho source source source source source
Locker sync source source source source source
Marshaler encoding/xml - - source source source
Marshaler encoding/json source source source source source
MarshalerAttr encoding/xml - - source source source
Model image/color source source source source source
Node go/ast source source source source source
Node text/template/parse source source source source source
PacketConn net source source source source source
PalettedImage image source source source source source
PublicSuffixList net/http/cookiejar - source source source source
Quantizer image/draw - - source source source
Queryer database/sql/driver - source source source source
ReadCloser io source source source source source
ReadSeeker io source source source source source
ReadWriteCloser io source source source source source
ReadWriteSeeker io source source source source source
ReadWriter io source source source source source
Reader io source source source source source
Reader image/jpeg source source source source source
Reader compress/flate source source source source source
ReaderAt io source source source source source
ReaderFrom io source source source source source
Resetter compress/zlib - - - - source
Resetter compress/flate - - - - source
ResponseWriter net/http source source source source source
Result database/sql/driver source source source source source
Result database/sql source source source source source
RoundTripper net/http source source source source source
RoutingMessage syscall source source source source source
Rows database/sql/driver source source source source source
RuneReader io source source source source source
RuneScanner io source source source source source
ScanState fmt source source source source source
Scanner database/sql source source source source source
Scanner fmt source source source source source
Seeker io source source source source source
ServerCodec net/rpc source source source source source
Signal os source source source source source
Signer crypto - - - - source
SignerOpts crypto - - - - source
Sockaddr syscall source source source source source
Source math/rand source source source source source
State fmt source source source source source
Stmt database/sql/driver source source source source source
Stmt go/ast source source source source source
Stream crypto/cipher source source source source source
Stringer fmt source source source source source
TB testing - - source source source
TextMarshaler encoding - - source source source
TextUnmarshaler encoding - - source source source
Tx database/sql/driver source source source source source
Type debug/dwarf source source source source source
Type reflect source source source source source
Unmarshaler encoding/json source source source source source
Unmarshaler encoding/xml - - source source source
UnmarshalerAttr encoding/xml - - source source source
Value flag source source source source source
ValueConverter database/sql/driver source source source source source
Valuer database/sql/driver source source source source source
Var expvar source source source source source
Visitor go/ast source source source source source
WriteCloser io source source source source source
WriteSeeker io source source source source source
Writer io source source source source source
WriterAt io source source source source source
WriterTo io source source source source source

On pourra trouver une discussion sur ces interfaces dans l'article suivant (en anglais) : http://mwholt.blogspot.fr/2014/08/maximizing-use-of-interfaces-in-go.html.

Enjoy!



Dernière mise à jour :  2014-10-28