Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

define generic functions #45

Open
nasser opened this issue May 13, 2019 · 0 comments
Open

define generic functions #45

nasser opened this issue May 13, 2019 · 0 comments
Labels
enhancement generics Support for CLR generics in MAGIC

Comments

@nasser
Copy link
Owner

nasser commented May 13, 2019

(defn foo [^:T t]
  (let [lst (new List (type-args T))]
    (.Add lst t)
    lst))

(foo 90) ;; => List<long>

should compile to something along the lines of

using System;
using System.Collections.Generic;

public class foo_function {
    public List<T> invoke_magic<T>(T t) {
        var lst = new List<T>();
        lst.Add(t);
        return lst;
    }
    
    public object invoke_clojureclr(object t)
    {
        return invoke_magic(t);
    }
}
@nasser nasser added the generics Support for CLR generics in MAGIC label Jul 30, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement generics Support for CLR generics in MAGIC
Projects
None yet
Development

No branches or pull requests

1 participant