NativeScript / NativeScript/ios

Metadata generator fails to generate proper types and does not add method to runtime

Aperta
#201 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
JavaScript
Stelle
150
Fork
43
Merge medio
3g 10h
PR unite (30g)
22

Descrizione

Since always, we are facing a small problem in couchbase plugin API. There is a certain method that is not parsed properly by metadata generator for a strange reason.

This is the definition of method in obj-c:

#pragma mark - Aggregate operators:

/** 
 Creates a between expression that evaluates whether or not the current expression is
 between the given expressions inclusively.
 
 @param expression1 The inclusive lower bound expression.
 @param expression2 The inclusive upper bound expression.
 @return The between expression.
 */
- (CBLQueryExpression*) between: (CBLQueryExpression*)expression1 and: (CBLQueryExpression*)expression2;

This is the typing that generator creates: https://github.com/triniwiz/nativescript-plugins/blob/master/packages/nativescript-couchbase/typings/objc!CouchbaseLite.d.ts#L1965
You'll notice it's missing and argument label.

Also, this method doesn't exist in runtime at all even if one tries to call between or betweenAnd.

There is also a valid method that happens to be named andExpression and I'm wondering if generator gets confused:
https://github.com/triniwiz/nativescript-plugins/blob/master/packages/nativescript-couchbase/typings/objc!CouchbaseLite.d.ts#L1963

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Confronta la dichiarazione Objective-C nell’issue con la dichiarazione generata in typings/objc!CouchbaseLite.d.ts#L1965 e con la voce andExpression vicina a L1963. Traccia i percorsi di metadata-generator e runtime per questo metodo; il lavoro è completato quando il tipo generato conserva l’etichetta dell’argomento and e il metodo è disponibile a runtime.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript, objective-c
Ambito
mobile, tooling
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.