module CAS::C_PLUGIN
Constants
- C_DEFINES
- C_LOCAL_LIBRARIES
- C_STD_LIBRARIES
Public Class Methods
write_header(op, name)
click to toggle source
# File lib/Mr.CAS/c.rb, line 47 def self.write_header(op, name) <<-TO_HEADER #ifndef #{name}_HEADER #define #{name}_HEADER // Standard Libraries #{ CAS::C_PLUGIN::C_STD_LIBRARIES.map { |e| "#include <#{e}>" }.join("\n") } // Local Libraries #{ CAS::C_PLUGIN::C_LOCAL_LIBRARIES.map { |e| "#include <#{e}>" }.join("\n") } // Definitions #{ CAS::C_PLUGIN::C_DEFINES.map { |k, v| "#define #{k} #{v}" }.join("\n") } // Function double #{name}(#{ op.args.map { |x| "double #{x.name}"}.join(", ") }); #endif // #{name}_HEADER TO_HEADER end
write_source(op, name)
click to toggle source
# File lib/Mr.CAS/c.rb, line 68 def self.write_source(op, name) <<-TO_SOURCE #include "#{name}.h" double #{name}(#{ op.args.map { |x| "double #{x.name}"}.join(", ") }) { return #{op.to_c}; } TO_SOURCE end