All files / vsl/generator LLVMAttribute.js

0% Statements 0/2
100% Branches 0/0
0% Functions 0/2
0% Lines 0/2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26                                                   
export default class LLVMAttribute {
    /**
     * An LLVM attribute
     */
    static attributes = {
        byValue: 'byval',
        noAlias: 'noalias',
        alwaysInline: 'alwaysInline',
        noInline: 'noinline',
        noRecurse: 'norecurse',
        noUnwind: 'nounwind'
    }
    
    /**
     * Creates an attribute list.
     * 
     * @param {string[]} names - names of the attributes
     */
    constructor(names) {
        this.names = names;
    }
    
    generate() {
        return this.named.join(" ")
    }
}