JP2017516210A - 動的に生成されたパターンベースクラスの構造識別 - Google Patents
動的に生成されたパターンベースクラスの構造識別 Download PDFInfo
- Publication number
- JP2017516210A JP2017516210A JP2016564078A JP2016564078A JP2017516210A JP 2017516210 A JP2017516210 A JP 2017516210A JP 2016564078 A JP2016564078 A JP 2016564078A JP 2016564078 A JP2016564078 A JP 2016564078A JP 2017516210 A JP2017516210 A JP 2017516210A
- Authority
- JP
- Japan
- Prior art keywords
- generator function
- class
- parameters
- description
- executing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/4492—Inheritance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/43—Checking; Contextual analysis
- G06F8/436—Semantic checking
- G06F8/437—Type checking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
- G06F9/449—Object-oriented method invocation or resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4498—Finite state machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45516—Runtime code conversion or optimisation
Abstract
Description
本発明は概してソフトウェア開発に関し、より具体的には、一例としてプラットフォームに依存しないオブジェクト指向プログラミング言語などの様々なプログラミング言語のうちのいずれかにおける言語開発の様々な局面に関する。
動的に生成されたパターンインスタンス化クラスの構造識別は、ランタイム環境においてクラスが記述される方法を拡張するように、構造記述を用いて利用され得る。名前のみによってクラスを記述し、かつその名前を用いてそのクラスを(たとえばデスク上のクラスファイルに)特定する代わりに、クラスを、コードジェネレータ関数と場合によってはいくつかの引数との組合せと称してもよい。換言すると、いくつかの実施形態では、クラスは、ジェネレータ関数を指定する構造記述と、場合によってはそのジェネレータ関数への1つ以上のパラメータとによって記述され得る。構造記述は、いくつかの実施形態では、クラス名が用いられ得る事実上いずれの状況についてもクラス名と考えられ得る(たとえばクラス名の代わりに用いられ得る)(たとえば、引数型、戻り値型、フィールドタイプ、スーパータイプ、instanceof、またはキャスト演算子のオペランドなど)。
Java(登録商標)TMプログラミング言語などのプラットフォームに依存しないオブジェクト指向言語を用いて、クラスの構造記述を用いて動的に生成されたパターンインスタンス化生成クラスの構造識別などの様々な特徴をサポートするためのソフトウェア開発に対する改良の様々な実施形態が本明細書に記載される。
いくつかの実施形態によれば、動的に生成されたパターンインスタンス化クラスの構造識別は、ランタイム環境においてクラスが記述されるやり方を拡張するように構造記述を用いて利用され得る。名前によってのみクラスを記述し、その名前を用いてクラスを(たとえばディスク上のクラスファイルにおいて)見つける代わりに、クラスを、コードジェネレータ関数といくつかの静的引数との組合せと称してもよい。換言すると、いくつかの実施形態では、ジェネレータ関数を指定する構造記述と、場合によってはそのジェネレータ関数への1つ以上のパラメータとによってクラスを記述してもよい。構造記述は、いくつかの実施形態では、クラス名が用いられる事実上いずれの状況についてもクラス名と考えられ得る(たとえばクラス名として使用され得る)。
・特殊化(たとえば、List<T>をT=intに特殊化すること)
・インターフェイスIについてのダイナミックプロキシ
・その方法はIの背景にあるインスタンスに権限を委任し得る、インターフェイスIについての転送プロキシ
・指定されたコンポーネント型を有するタプル型
・指定された引数を有する関数型および戻り値型
を含み得る。
コンスタントプール:
包括的な特殊化
構造記述を用いるのに好適な変形の1つの例は、包括的な特殊化を実施することを含み得る。構造記述を用いて特殊化を実施する際、ジェネレータ関数は、(部分的にまたは全体的に)特殊化されることになるクラスおよび特殊化に用いられることになる特殊化された型の引数を引数として取り得る。たとえば、List<T>がT=intにより特殊化されると指定する構造記述は、特殊化ルールに従って注釈された署名および命令を変更し、ほかのすべては変更しないことによってクラスList<T>を変形した結果であるクラスを生成し得る。
構造記述を用いるのに好適な変形の別の例は、いくつかの実施形態によれば、1つ以上のインターフェイスのためのダイナミックプロキシを実施することを含み得る。たとえば、ジェネレータ関数は、プロキシへの一組のインターフェイスを引数として取ってもよく、それらのインターフェイスをすべて実施するクラスを生成してもよく、そのメソッドは、結果として生じるクラスのコンストラクタに送られる呼出しハンドラに急送される。したがって、一実施形態によれば、ダイナミックプロキシの生成を指定する構造記述は、ダイナミックプロキシジェネレータ関数の識別を含んでもよく、パラメータとして1つ以上のインターフェイス型を指定してもよい。
同様に、いくつかの実施形態によれば、構造記述を用いて1つ以上のインターフェイスのための転送プロキシを実施してもよい。たとえば、ジェネレータ関数はプロキシへの一組のインターフェイスをパラメータとして取ってもよく、(たとえば、Corba、またはEnterprise Java Beans、またはRemote Method Invocationなどとの使用のために)ネットワークまたはリモートプロキシクラスを実施するようにこれらのインターフェイスをすべて実施するクラスを生成してもよい。
構造記述を用いるのに好適な変形の別の例は、いくつかの実施形態によれば、指定されたコンポーネント型を有するタプル型を含み得る。たとえば、フィールドの型を引数として取り、その特定のTupleを表わすクラスを出力し、指定された型の要素を有するTupleジェネレータ関数が提供され得る。
構造記述を用いるのに好適な変形の別の例は、縮小プロキシを含み得る。たとえば、クラスCはインターフェイスIを実施してもよい。クラスCは何らかの他のメソッドに送られ得るが、インターフェイスIのメソッドのみが可視であることが望ましい場合がある(つまりCが何らかの他の型にダウンキャストされることが望ましくない場合がある)。
加えて、いくつかの実施形態では、コンパイル時間においてクラスが内観され得る。たとえば、「class Foo extends List<int>」の時、List<int>が動的に生成され、コンパイラは次いでList<int>の要素を識別するためにジェネレータを実行しなければならない場合があり、コンパイル決定を下すためにそれを使用する。同じクラスは、その後のランタイムで再度特殊化されてもよい。
生成されたクラスは、「見苦しい」(たとえば複雑な)名前を有する(または名前を有さない)場合がある。しかしながら、ユーザはこのクラスに対して反映させたい場合がある。したがって、いくつかの実施形態では、生成された(たとえば複雑な、または「見苦しい」)名前を、コンパイル型の静的な型システムの反映図に再度接続してもよい。さらに、クラスがたとえばGenerated$List$$23$T=intなどの、より複雑な名前を実際に有する場合であっても、生成されたクラスの名前の人間が読取り可能な(たとえば人にやさしい)記述が復元され得る。
Claims (20)
- プログラム命令を格納する非一時的なコンピュータ読取可能記憶媒体であって、前記プログラム命令は、計算装置上で実行されると、前記計算装置に、
構造記述を含むクラス名をクラスファイルにおいて識別することを行わせ、前記構造記述は、ジェネレータ関数を識別する情報と、前記ジェネレータ関数についての1つ以上のパラメータとを含み、さらに前記計算装置に、
前記ジェネレータ関数を実行することを行わせ、前記実行することは、前記1つ以上のパラメータを前記ジェネレータ関数に入力として提供することを含み、さらに前記計算装置に、
前記クラス名に対応するクラスを生成することを行わせ、前記生成することは、前記実行することからの結果に少なくとも部分的に基づく、非一時的なコンピュータ読取可能記憶媒体。 - 前記識別すること、前記実行すること、および前記生成することは、プラットフォームに依存しないオブジェクト指向言語のコンパイラによってコンパイル時間に行なわれる、請求項1に記載の非一時的なコンピュータ読取可能記憶媒体。
- 前記識別すること、前記実行すること、および前記生成することは、プラットフォームに依存しないオブジェクト指向ランタイム環境において行なわれる、請求項1に記載の非一時的なコンピュータ読取可能記憶媒体。
- 前記実行することは、ランタイムライブラリから前記ジェネレータ関数をローディングすることを含む、請求項1に記載の非一時的なコンピュータ読取可能記憶媒体。
- 前記1つ以上のパラメータのうちの1つは、別の構造記述を含み、前記別の構造記述は、別のジェネレータ関数を識別する情報と前記別のジェネレータ関数についての1つ以上の他のパラメータとを含み、前記実行することはさらに、
前記別のジェネレータ関数を実行することを含み、前記別のジェネレータ関数を実行することは、前記1つ以上の他のパラメータを前記別のジェネレータ関数に入力として提供することを含み、前記実行することはさらに、
前記ジェネレータ関数に入力として前記別のジェネレータ関数を実行することからの結果を提供することを含む、請求項1に記載の非一時的なコンピュータ読取可能記憶媒体。 - 前記構造記述は、前記1つ以上のパラメータのうちの少なくとも1つに適用されるべき特殊化動作を指定し、前記ジェネレータ関数を実行することは、前記指定された特殊化動作を前記少なくとも1つのパラメータに適用することをさらに含む、請求項1に記載の非一時的なコンピュータ読取可能記憶媒体。
- 別の構造記述を識別することをさらに含み、前記別の構造記述は、別のジェネレータ関数を識別する情報と前記別のジェネレータ関数についての1つ以上の他のパラメータとを含み、さらに、
前記構造記述と前記別の構造記述との比較、および前記1つ以上のパラメータと前記1つ以上の他のパラメータとの間の比較に少なくとも部分的に基づいて、前記構造記述および前記別の構造記述が2つの等価クラスを表わすかどうか判定することを含む、請求項1に記載の非一時的なコンピュータ読取可能記憶媒体。 - 1つ以上の計算装置上で実施されるコンパイラまたはプラットフォームに依存しないオブジェクト指向ランタイム環境によって、クラスファイルにおけるクラス名を識別することを含み、前記クラス名は構造記述を含み、前記構造記述は、前記ジェネレータ関数を識別する情報と前記ジェネレータ関数についての1つ以上のパラメータとを含み、さらに、
前記コンパイラまたは前記プラットフォームに依存しないオブジェクト指向ランタイム環境によって前記ジェネレータ関数を実行することを含み、前記実行することは、前記ジェネレータ関数に入力として前記1つ以上のパラメータを提供することを含み、さらに、
前記コンパイラまたは前記プラットフォームに依存しないオブジェクト指向ランタイム環境によって、前記クラス名に対応するクラスを生成することを含み、前記生成することは、前記実行することによる結果に少なくとも部分的に基づく、方法。 - 前記識別すること、前記実行すること、および前記生成することは、前記コンパイラによってコンパイル時間に行なわれ、前記クラスファイルは、プラットフォームに依存しないオブジェクト指向言語に基づく、請求項8に記載の方法。
- 前記識別すること、前記実行すること、および前記生成することは、プラットフォームに依存しないオブジェクト指向ランタイム環境において行なわれる、請求項8に記載の方法。
- 前記実行することは、ランタイムライブラリから前記ジェネレータ関数をローディングすることを含む、請求項8に記載の方法。
- 前記1つ以上のパラメータのうちの1つは別の構造記述を含み、前記別の構造記述は、別のジェネレータ関数を識別する情報と前記別のジェネレータ関数についての1つ以上の他のパラメータとを含み、前記実行することはさらに、
前記コンパイラまたは前記プラットフォームに依存しないオブジェクト指向ランタイム環境によって、前記別のジェネレータ関数を実行することを含み、前記別のジェネレータ関数を実行することは、前記1つ以上の他のパラメータを前記別のジェネレータ関数に入力として提供することを含み、さらに、
前記コンパイラまたは前記プラットフォームに依存しないオブジェクト指向ランタイム環境によって、前記別のジェネレータ関数を実行することからの結果を前記ジェネレータ関数に入力として提供することを含む、請求項8に記載の方法。 - 前記構造記述は、前記1つ以上のパラメータのうちの少なくとも1つに適用されることになる特殊化動作を指定し、
前記ジェネレータ関数を実行することは、前記コンパイラまたは前記プラットフォームに依存しないオブジェクト指向ランタイム環境によって、前記指定された特殊化動作を前記少なくとも1つのパラメータに適用することをさらに含む、請求項8に記載の方法。 - 前記コンパイラまたは前記プラットフォームに依存しないオブジェクト指向ランタイム環境によって、別の構造記述を識別することをさらに含み、前記別の構造記述は、別のジェネレータ関数を識別する情報と前記別のジェネレータ関数についての1つ以上の他のパラメータとを含み、さらに、
前記構造記述と前記別の構造記述との比較、および前記1つ以上のパラメータと前記1つ以上の他のパラメータとの間の比較に少なくとも部分的に基づいて、前記構造記述および前記別の構造記述が2つの等価なクラスを表わすかどうかを、前記コンパイラまたは前記プラットフォームに依存しないオブジェクト指向ランタイム環境によって判定することを含む、請求項8に記載の方法。 - 計算装置であって、
プロセッサと、
プログラム命令を含むメモリとを備え、前記プログラム命令は、前記プロセッサ上で実行されると、前記プロセッサに、
構造記述を含むクラス名をクラスファイルにおいて識別させ、前記構造記述は、ジェネレータ関数を識別する情報と前記ジェネレータ関数についての1つ以上のパラメータとを含み、さらに前記プロセッサに、
前記ジェネレータ関数を実行させ、前記ジェネレータ関数を実行するために、前記プログラム命令は、さらに前記プロセッサに、前記1つ以上のパラメータを前記ジェネレータ関数に入力として提供させ、
前記ジェネレータ関数の実行の結果に少なくとも部分的に基づいて、前記クラス名に対応するクラスを生成させる、計算装置。 - 前記プログラム命令は、プラットフォームに依存しないオブジェクト指向言語のためのコンパイラを実施するようにプロセッサ上で実行可能であり、前記コンパイラは、前記識別すること、前記実行すること、および前記生成することをコンパイル時間において行なうように構成される、請求項15に記載の計算装置。
- 前記プログラム命令は、プラットフォームに依存しないオブジェクト指向ランタイム環境を実施するように前記プロセッサ上で実行可能であり、前記識別すること、前記実行すること、および前記生成することは、前記プラットフォームに依存しないオブジェクト指向ランタイム環境のランタイムにおいて行なわれる、請求項15に記載の計算装置。
- 前記1つ以上のパラメータのうちの1つは別の構造記述を含み、前記別の構造記述は、別のジェネレータ関数を識別する情報と前記別のジェネレータ関数についての1つ以上の他のパラメータとを含み、前記ジェネレータ関数を実行するために、前記プログラム命令は、さらに前記プロセッサに、
前記別のジェネレータ関数を実行させ、前記別のジェネレータ関数を実行するために、前記プログラム命令は、さらに前記プロセッサに、前記1つ以上の他のパラメータを前記別のジェネレータ関数に入力として提供させ、
前記別のジェネレータ関数を実行することからの結果を前記ジェネレータ関数に入力として提供させる、請求項15に記載の計算装置。 - 前記構造記述は、前記1つ以上のパラメータのうちの少なくとも1つに適用されることになる特殊化動作を指定し、
前記ジェネレータ関数を実行するために、前記プログラム命令は、さらに前記プロセッサに、前記指定された特殊化動作を前記少なくとも1つのパラメータに適用させる、請求項15に記載の計算装置。 - 前記プログラム命令は、さらに前記プロセッサに、
別の構造記述を識別させ、前記別の構造記述は、別のジェネレータ関数を識別する情報と前記別のジェネレータ関数についての1つ以上の他のパラメータとを含み、さらに、
前記構造記述と前記別の構造記述との比較、および前記1つ以上のパラメータと前記1つ以上の他のパラメータとの間の比較に少なくとも部分的に基づいて、前記構造記述および前記別の構造記述が2つの等価なクラスを表わすかどうかを判定させる、請求項15に記載の計算装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461982802P | 2014-04-22 | 2014-04-22 | |
US61/982,802 | 2014-04-22 | ||
US14/660,177 | 2015-03-17 | ||
US14/660,177 US9772828B2 (en) | 2014-04-22 | 2015-03-17 | Structural identification of dynamically generated, pattern-instantiation, generated classes |
PCT/US2015/026966 WO2015164439A1 (en) | 2014-04-22 | 2015-04-22 | Structural identification of dynamically-generated, pattern-based classes |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2017516210A true JP2017516210A (ja) | 2017-06-15 |
JP2017516210A5 JP2017516210A5 (ja) | 2018-05-31 |
JP6592009B2 JP6592009B2 (ja) | 2019-10-16 |
Family
ID=53059453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016564078A Active JP6592009B2 (ja) | 2014-04-22 | 2015-04-22 | 動的に生成されたパターンベースクラスの構造識別 |
Country Status (6)
Country | Link |
---|---|
US (9) | US9910680B2 (ja) |
EP (5) | EP3134808B1 (ja) |
JP (1) | JP6592009B2 (ja) |
CN (6) | CN106233251B (ja) |
BR (1) | BR112016024522B1 (ja) |
WO (5) | WO2015164436A1 (ja) |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9910680B2 (en) | 2014-04-22 | 2018-03-06 | Oracle International Corporation | Decomposing a generic class into layers |
US9792094B2 (en) * | 2014-09-04 | 2017-10-17 | Home Box Office, Inc. | Factory identification system |
JP6621470B2 (ja) | 2014-09-25 | 2019-12-18 | オラクル・インターナショナル・コーポレイション | 分散コンピューティング環境において実行可能コードの動的配置をサポートするシステムおよび方法 |
US9575750B2 (en) * | 2014-12-11 | 2017-02-21 | Successfactors, Inc. | Generic annotation seeker |
US9921859B2 (en) * | 2014-12-12 | 2018-03-20 | The Regents Of The University Of Michigan | Runtime compiler environment with dynamic co-located code execution |
US10146515B1 (en) * | 2015-03-10 | 2018-12-04 | Twitter, Inc. | Live code updates |
US9594904B1 (en) * | 2015-04-23 | 2017-03-14 | Fireeye, Inc. | Detecting malware based on reflection |
US10129361B2 (en) * | 2015-07-01 | 2018-11-13 | Oracle International Corporation | System and method for multi-version remote function execution control in a distributed computing environment |
US9471285B1 (en) * | 2015-07-09 | 2016-10-18 | Synopsys, Inc. | Identifying software components in a software codebase |
US10120661B2 (en) * | 2015-07-16 | 2018-11-06 | Sugarcrm Inc. | Multi-flavored software execution from a singular code base |
US10055208B2 (en) * | 2015-08-09 | 2018-08-21 | Oracle International Corporation | Extending a virtual machine instruction set architecture |
US10083014B2 (en) * | 2015-09-08 | 2018-09-25 | Oracle International Corporation | Generating dynamic modular proxies |
US10466975B2 (en) | 2015-10-23 | 2019-11-05 | Oracle International Corporation | Execution of parameterized classes on legacy virtual machines to generate instantiation metadata |
US9904543B2 (en) * | 2015-10-26 | 2018-02-27 | Hewlett-Packard Development Company, L.P. | Setting a build indicator to enable or disable a feature |
US10853380B1 (en) | 2016-07-31 | 2020-12-01 | Splunk Inc. | Framework for displaying interactive visualizations of event data |
US10459939B1 (en) | 2016-07-31 | 2019-10-29 | Splunk Inc. | Parallel coordinates chart visualization for machine data search and analysis system |
US10459938B1 (en) | 2016-07-31 | 2019-10-29 | Splunk Inc. | Punchcard chart visualization for machine data search and analysis system |
US11037342B1 (en) * | 2016-07-31 | 2021-06-15 | Splunk Inc. | Visualization modules for use within a framework for displaying interactive visualizations of event data |
US10861202B1 (en) | 2016-07-31 | 2020-12-08 | Splunk Inc. | Sankey graph visualization for machine data search and analysis system |
US20180074797A1 (en) * | 2016-09-09 | 2018-03-15 | Hewlett Packard Enterprise Development Lp | Transform a data object in a meta model based on a generic type |
US10083029B2 (en) * | 2016-11-09 | 2018-09-25 | Red Hat, Inc. | Detect application defects by correlating contracts in application dependencies |
KR102471221B1 (ko) * | 2016-11-14 | 2022-11-28 | 삼성에스디에스 주식회사 | 애플리케이션 변환 장치 및 방법 |
US10228957B2 (en) * | 2017-01-20 | 2019-03-12 | International Business Machines Corporation | Online method handle deduplication |
US10417036B2 (en) * | 2017-02-24 | 2019-09-17 | Oracle International Corporation | Evaluation techniques for fast access to structured, semi-structured and unstructured data using a virtual machine that provides support for dynamic code generation |
US10572275B2 (en) | 2017-06-15 | 2020-02-25 | Microsoft Technology Licensing, Llc | Compatible dictionary layout |
US11360976B2 (en) | 2017-08-31 | 2022-06-14 | Oracle International Corporation | Deployment of javascript and typescript stored procedures and user-defined functions into database management systems |
US11662719B2 (en) * | 2017-09-29 | 2023-05-30 | Rockwell Automation Technologies, Inc. | Classification modeling for monitoring, diagnostics optimization and control |
WO2019071601A1 (zh) * | 2017-10-09 | 2019-04-18 | 华为技术有限公司 | 一种类卸载方法及电子设备 |
CN110119274A (zh) * | 2018-02-05 | 2019-08-13 | 北京智明星通科技股份有限公司 | 一种数据编译的方法、装置以及电子终端、计算机可读存储介质 |
CN108446113B (zh) * | 2018-03-28 | 2021-06-15 | 武汉斗鱼网络科技有限公司 | 类名称获取方法、装置及电子设备 |
CN110347372B (zh) * | 2018-04-08 | 2022-07-05 | 福建省天奕网络科技有限公司 | 一种遍历数据的方法及终端 |
CN109117142B (zh) * | 2018-07-19 | 2020-11-24 | 北京理工大学 | 一种基于变量关联树的基本类型重构方法 |
US11425002B1 (en) * | 2018-11-26 | 2022-08-23 | Amazon Technologies, Inc. | Infrastructure managing framework for serverless architecture |
CN114153521A (zh) * | 2019-03-25 | 2022-03-08 | 华为技术有限公司 | 类加载方法和装置 |
US11068543B2 (en) * | 2019-06-11 | 2021-07-20 | Dell Products L.P. | Component and object management of information handling systems |
US11030066B2 (en) * | 2019-10-30 | 2021-06-08 | EMC IP Holding Company LLC | Dynamic application decomposition for execution in a computing environment |
US20210405982A1 (en) * | 2020-06-25 | 2021-12-30 | Red Hat, Inc. | Bytecode transformations using virtual artifacts |
CN111857662B (zh) * | 2020-07-15 | 2023-06-30 | 曹蕤 | 基于map和接口来描述对象特定构成的程序设计方法 |
US20220134222A1 (en) * | 2020-11-03 | 2022-05-05 | Nvidia Corporation | Delta propagation in cloud-centric platforms for collaboration and connectivity |
CN114706619A (zh) * | 2020-12-16 | 2022-07-05 | 武汉斗鱼鱼乐网络科技有限公司 | 配置信息的处理方法、装置、电子设备及存储介质 |
US20220300352A1 (en) | 2021-03-19 | 2022-09-22 | Oracle International Corporation | Determining a resolution state of an anchor constant associated with an application programming interface (api) point |
US11947931B2 (en) * | 2021-10-12 | 2024-04-02 | Sap Se | Generic factory class |
US20240045669A1 (en) * | 2022-08-08 | 2024-02-08 | Capital One Services, Llc | Computer-based systems configured to decouple delivery of product configuration changes associated with continuous integration/continuous delivery programming pipelines and methods of use thereof |
Family Cites Families (126)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5421016A (en) * | 1991-12-12 | 1995-05-30 | International Business Machines Corporation | System and method for dynamically invoking object methods from an application designed for static method invocation |
WO1994005289A1 (en) | 1992-09-09 | 1994-03-17 | Vanderbilt University | Method and compositions for maintaining glomerular filtration rate while inhibition extracellular matrix accumulation |
US6378003B1 (en) * | 1993-04-05 | 2002-04-23 | International Business Machines Corporation | Method and system for deriving metaclasses in an object oriented system |
US5379432A (en) * | 1993-07-19 | 1995-01-03 | Taligent, Inc. | Object-oriented interface for a procedural operating system |
US5628016A (en) | 1994-06-15 | 1997-05-06 | Borland International, Inc. | Systems and methods and implementing exception handling using exception registration records stored in stack memory |
US5630131A (en) * | 1994-11-14 | 1997-05-13 | Object Technology Licensing Corp. | Method and apparatus for importing and exporting archive files for a graphical user interface |
US6360360B1 (en) | 1996-02-08 | 2002-03-19 | International Business Machines Corporation | Object-oriented compiler mechanism for automatically selecting among multiple implementations of objects |
US5940616A (en) * | 1996-05-31 | 1999-08-17 | International Business Machines Corporation | Tracker class for object-oriented programming environments |
US6067577A (en) * | 1996-09-30 | 2000-05-23 | Apple Computer, Inc. | Dynamic method resolution for native methods in a dynamic object-oriented programming language |
US5923878A (en) | 1996-11-13 | 1999-07-13 | Sun Microsystems, Inc. | System, method and apparatus of directly executing an architecture-independent binary program |
US6513152B1 (en) * | 1997-07-23 | 2003-01-28 | International Business Machines Corporation | Object oriented framework mechanism for customization of object oriented frameworks |
US6230314B1 (en) * | 1997-10-02 | 2001-05-08 | International Business Machines Corporation | Method and device for program transformation using class hierarchy transformation based upon type constraint analysis |
US5966702A (en) * | 1997-10-31 | 1999-10-12 | Sun Microsystems, Inc. | Method and apparatus for pre-processing and packaging class files |
US6279008B1 (en) | 1998-06-29 | 2001-08-21 | Sun Microsystems, Inc. | Integrated graphical user interface method and apparatus for mapping between objects and databases |
US6138269A (en) * | 1998-05-20 | 2000-10-24 | Sun Microsystems, Inc. | Determining the actual class of an object at run time |
US6018628A (en) * | 1998-06-16 | 2000-01-25 | Sun Microsystems, Inc. | Method of implementing parameterized types to be compatible with existing unparameterized libraries |
US6769124B1 (en) * | 1998-07-22 | 2004-07-27 | Cisco Technology, Inc. | Persistent storage of information objects |
US6226788B1 (en) * | 1998-07-22 | 2001-05-01 | Cisco Technology, Inc. | Extensible network management system |
US8418131B2 (en) * | 1998-11-25 | 2013-04-09 | Helmut Emmelmann | Interactive server side components |
AU5025600A (en) * | 1999-05-17 | 2000-12-05 | Foxboro Company, The | Process control configuration system with parameterized objects |
US7089530B1 (en) * | 1999-05-17 | 2006-08-08 | Invensys Systems, Inc. | Process control configuration system with connection validation and configuration |
US6484313B1 (en) * | 1999-06-30 | 2002-11-19 | Microsoft Corporation | Compiling and persisting of intermediate language code |
US6560774B1 (en) * | 1999-09-01 | 2003-05-06 | Microsoft Corporation | Verifier to check intermediate language |
US6484276B1 (en) * | 1999-10-25 | 2002-11-19 | Lucent Technologies Inc. | Method and apparatus for providing extensible object-oriented fault injection |
US6907546B1 (en) | 2000-03-27 | 2005-06-14 | Accenture Llp | Language-driven interface for an automated testing framework |
US7334216B2 (en) * | 2000-04-04 | 2008-02-19 | Sosy, Inc. | Method and apparatus for automatic generation of information system user interfaces |
US6901588B1 (en) * | 2000-04-17 | 2005-05-31 | Codemesh, Inc. | Sharing components between programming languages by use of polymorphic proxy |
AU2001259108A1 (en) * | 2000-04-21 | 2001-11-07 | Togethersoft Corporation | Methods and systems for generating source code for object-oriented elements |
US7577834B1 (en) * | 2000-05-09 | 2009-08-18 | Sun Microsystems, Inc. | Message authentication using message gates in a distributed computing environment |
GB0011954D0 (en) * | 2000-05-17 | 2000-07-05 | Univ Surrey | Protocol stacks |
JP4662657B2 (ja) * | 2000-07-10 | 2011-03-30 | マイクロソフト コーポレーション | 統一データ型システムおよび方法 |
DE60011479T2 (de) * | 2000-08-02 | 2005-06-09 | Philipp Kutter | Xml-roboter |
US6701501B2 (en) * | 2000-10-16 | 2004-03-02 | Simon Joshua Waters | Structured algorithmic programming language approach to system design |
US6968540B2 (en) * | 2000-10-25 | 2005-11-22 | Opnet Technologies Inc. | Software instrumentation method and apparatus |
WO2002037261A2 (en) | 2000-11-03 | 2002-05-10 | Wilde Technologies Limited | A software development process |
US6757890B1 (en) | 2000-12-28 | 2004-06-29 | Sun Microsystems, Inc. | Methods and apparatus for enabling local Java object allocation and collection |
US7277836B2 (en) * | 2000-12-29 | 2007-10-02 | Exxonmobil Upstream Research Company | Computer system and method having a facility network architecture |
US7761270B2 (en) * | 2000-12-29 | 2010-07-20 | Exxonmobil Upstream Research Co. | Computer system and method having a facility management logic architecture |
US7243346B1 (en) * | 2001-05-21 | 2007-07-10 | Microsoft Corporation | Customized library management system |
US7162716B2 (en) | 2001-06-08 | 2007-01-09 | Nvidia Corporation | Software emulator for optimizing application-programmable vertex processing |
US7117489B2 (en) | 2001-06-20 | 2006-10-03 | Sun Microsystems, Inc. | Optional attribute generator for customized Java programming environments |
US7149734B2 (en) * | 2001-07-06 | 2006-12-12 | Logic Library, Inc. | Managing reusable software assets |
US7017162B2 (en) * | 2001-07-10 | 2006-03-21 | Microsoft Corporation | Application program interface for network software platform |
US7853933B2 (en) * | 2001-09-29 | 2010-12-14 | Siebel Systems, Inc. | Computing system and method to perform compile-time extension for world wide web application |
US6948156B2 (en) | 2001-10-24 | 2005-09-20 | Sun Microsystems, Inc. | Type checking in java computing environments |
US6961933B2 (en) | 2001-10-24 | 2005-11-01 | Sun Microsystems, Inc. | Representation of Java data types in virtual machines |
US7353502B2 (en) | 2002-07-03 | 2008-04-01 | The Mathworks, Inc. | System and method for creation of software components |
US7127709B2 (en) * | 2002-09-25 | 2006-10-24 | Microsoft Corporation | System and method for jointly managing dynamically generated code and data |
US8032860B2 (en) * | 2003-02-26 | 2011-10-04 | Oracle International Corporation | Methods for type-independent source code editing |
US20040221228A1 (en) | 2003-04-30 | 2004-11-04 | International Business Machines Corporation | Method and apparatus for domain specialization in a document type definition |
US7496892B2 (en) * | 2003-05-06 | 2009-02-24 | Andrew Nuss | Polymorphic regular expressions |
US7380242B2 (en) | 2003-05-14 | 2008-05-27 | Mainsoft Israel Ltd. | Compiler and software product for compiling intermediate language bytecodes into Java bytecodes |
US7240327B2 (en) * | 2003-06-04 | 2007-07-03 | Sap Ag | Cross-platform development for devices with heterogeneous capabilities |
US7219330B2 (en) * | 2003-06-26 | 2007-05-15 | Microsoft Corporation | Extensible metadata |
US7707566B2 (en) * | 2003-06-26 | 2010-04-27 | Microsoft Corporation | Software development infrastructure |
US7086041B2 (en) * | 2003-06-27 | 2006-08-01 | Microsoft Corporation | Extensible type system for representing and checking consistency of program components during the process of compilation |
US7634763B2 (en) * | 2003-07-15 | 2009-12-15 | Microsoft Corporation | Extensible multi-language compilation |
US7890928B2 (en) * | 2003-07-26 | 2011-02-15 | Pilla Gurumurty Patrudu | Mechanism and system for representing and processing rules |
US20050055682A1 (en) | 2003-09-08 | 2005-03-10 | Microsoft Corporation | Authoring and using generic classes in JAVA language code |
US7318216B2 (en) * | 2003-09-24 | 2008-01-08 | Tablecode Software Corporation | Software application development environment facilitating development of a software application |
US7669193B1 (en) * | 2003-09-25 | 2010-02-23 | Lantronix, Inc. | Program transformation using flow-sensitive type constraint analysis |
US7496908B2 (en) * | 2004-01-14 | 2009-02-24 | International Business Machines Corporation | Method and apparatus for optimizing code execution using annotated trace information having performance indicator and counter information |
US7448022B1 (en) * | 2004-02-10 | 2008-11-04 | Prasad Ram | Dynamic software composition in a component-based software system |
US7644402B1 (en) * | 2004-03-17 | 2010-01-05 | Sun Microsystems, Inc. | Method for sharing runtime representation of software components across component loaders |
US8677312B1 (en) | 2004-03-30 | 2014-03-18 | Synopsys, Inc. | Generation of compiler description from architecture description |
US7343379B2 (en) * | 2004-05-21 | 2008-03-11 | Bea Systems, Inc. | System and method for controls |
US7665062B1 (en) * | 2004-07-02 | 2010-02-16 | Borland Software Corporation | System and methodology for design-time dynamic class type construction |
JP4745238B2 (ja) * | 2004-08-12 | 2011-08-10 | 富士通株式会社 | Javaアプレット、JARファイル生成方法、JARファイル生成プログラム、JARファイル生成装置 |
US7657874B2 (en) * | 2004-08-24 | 2010-02-02 | Microsoft Corporation | Pattern types as constraints on generic type parameters |
US7676476B2 (en) * | 2004-08-25 | 2010-03-09 | Microsoft Corporation | Data types with incorporated collation information |
US7475150B2 (en) * | 2004-09-07 | 2009-01-06 | International Business Machines Corporation | Method of generating a common event format representation of information from a plurality of messages using rule-based directives and computer keys |
US7614045B2 (en) * | 2004-09-24 | 2009-11-03 | Sap (Ag) | Sharing classes and class loaders |
US7530051B1 (en) * | 2004-10-21 | 2009-05-05 | Sun Microsystems, Inc. | Method and apparatus for dimensional analysis encoded in metatypes and generics |
DE102004057490B4 (de) * | 2004-11-29 | 2007-02-22 | Infineon Technologies Ag | Vorrichtung und Verfahren zum Verarbeiten eines Programmcodes |
US8250528B2 (en) | 2004-12-15 | 2012-08-21 | Microsoft Corporation | Static inheritance systems and methods |
US7493605B2 (en) * | 2004-12-29 | 2009-02-17 | Mainsoft R&D Ltd | Method and a software product for adapting a .Net framework compliant reflection mechanism to a java environment |
US7571430B2 (en) * | 2005-01-24 | 2009-08-04 | Lsi Logic Corporation | Adaptive dispatch table based on templates |
US7844958B2 (en) * | 2005-03-11 | 2010-11-30 | Aptana, Inc. | System and method for creating target byte code |
CA2504333A1 (en) * | 2005-04-15 | 2006-10-15 | Symbium Corporation | Programming and development infrastructure for an autonomic element |
US7983209B2 (en) * | 2005-04-18 | 2011-07-19 | Research In Motion Limited | System and method for producing notification based web services |
EP1910920A4 (en) | 2005-06-27 | 2011-03-09 | Quipoz Pty Ltd | CODE TRANSFORMATION |
US7716630B2 (en) * | 2005-06-27 | 2010-05-11 | Ab Initio Technology Llc | Managing parameters for graph-based computations |
US7992140B2 (en) * | 2005-07-29 | 2011-08-02 | Microsoft Corporation | Compiler supporting programs as data objects |
EP1934782A4 (en) * | 2005-09-15 | 2009-01-07 | Invixa Llc | APPARATUS, METHOD AND SYSTEM FOR CONSTRUCTING SOFTWARE BY THE COMPOSITION |
US8121985B2 (en) * | 2005-10-24 | 2012-02-21 | Sap Aktiengesellschaft | Delta versioning for learning objects |
US20070168926A1 (en) * | 2005-12-16 | 2007-07-19 | Raghuram Rajah | Software customization framework |
US7966602B1 (en) * | 2006-03-16 | 2011-06-21 | Oracle America, Inc. | Incremental modification detector, and methods, systems, and apparatus for implementing the same |
US8572138B2 (en) * | 2006-03-30 | 2013-10-29 | Ca, Inc. | Distributed computing system having autonomic deployment of virtual machine disk images |
US8225294B2 (en) * | 2006-04-27 | 2012-07-17 | Oracle America, Inc. | Method and apparatus for expressing and checking relationships between types |
US7836440B2 (en) * | 2006-04-27 | 2010-11-16 | Oracle America, Inc. | Dependency-based grouping to establish class identity |
US20080033968A1 (en) | 2006-08-07 | 2008-02-07 | Quan Dennis A | Methods and apparatus for input specialization |
US20080040360A1 (en) | 2006-08-14 | 2008-02-14 | Microsoft Corporation | Design pattern for choice types in object oriented languages |
US8370818B2 (en) * | 2006-12-02 | 2013-02-05 | Time Warner Cable Inc. | Methods and apparatus for analyzing software interface usage |
US20080154950A1 (en) * | 2006-12-21 | 2008-06-26 | Sap Ag | Object constructors for generic frameworks |
WO2008115553A1 (en) * | 2007-03-20 | 2008-09-25 | The University Of North Carolina At Chapel Hill | Methods, systems, and computer readable media for automatically generating customizable user interfaces using proagramming patterns |
US8079023B2 (en) | 2007-03-22 | 2011-12-13 | Microsoft Corporation | Typed intermediate language support for existing compilers |
US7654413B2 (en) | 2007-04-17 | 2010-02-02 | Kuei-Tang Chang | Supporting device for package water dispenser |
US8806324B2 (en) * | 2007-08-03 | 2014-08-12 | Sap Ag | Annotation data filtering of computer files |
CN101251795A (zh) * | 2007-11-01 | 2008-08-27 | 中国地质大学(武汉) | 泛型空间网络分析模型及其算法 |
US8615734B2 (en) * | 2007-11-09 | 2013-12-24 | Oracle International Corporation | System and method for dynamically redefining class files in an application server environment |
CN101520733B (zh) * | 2008-02-27 | 2014-04-16 | 国际商业机器公司 | 装载类的方法和装置及重组类存档文件方法 |
US9063765B2 (en) | 2008-04-28 | 2015-06-23 | Kaazing Corporation | System and methods for distributed execution of computer executable programs utilizing asymmetric translation |
US8935293B2 (en) | 2009-03-02 | 2015-01-13 | Oracle International Corporation | Framework for dynamically generating tuple and page classes |
US9075667B2 (en) * | 2009-05-21 | 2015-07-07 | Microsoft Technology Licensing, Llc | Dynamic binding directed by static types |
US8484614B2 (en) * | 2009-05-29 | 2013-07-09 | Red Hat, Inc. | Fast late binding of object methods |
US8843920B2 (en) | 2009-09-15 | 2014-09-23 | Advanced Micro Devices, Inc. | Systems and methods for deferring software implementation decisions until load time |
CA2678095C (en) * | 2009-09-25 | 2012-05-01 | Ibm Canada Limited - Ibm Canada Limitee | Object level compatibility and class resizing utilizing semantic values |
WO2011042228A1 (en) * | 2009-10-06 | 2011-04-14 | International Business Machines Corporation | Method and system to handle java class versioning |
US8549506B2 (en) * | 2010-04-27 | 2013-10-01 | Microsoft Corporation | Resumable methods |
US8645490B2 (en) * | 2010-06-08 | 2014-02-04 | Microsoft Corporation | Web site implementation by mapping expression evaluation |
US8813049B2 (en) | 2010-06-30 | 2014-08-19 | Oracle International Corporation | Type inference of partially-specified parameterized types |
US8533695B2 (en) * | 2010-09-28 | 2013-09-10 | Microsoft Corporation | Compile-time bounds checking for user-defined types |
US8959501B2 (en) * | 2010-12-14 | 2015-02-17 | Microsoft Corporation | Type and length abstraction for data types |
US9207935B2 (en) * | 2011-04-07 | 2015-12-08 | Infosys Limited | Early analysis of software design diagrams |
US8997070B2 (en) * | 2011-12-15 | 2015-03-31 | Sap Se | Extension mechanism for scripting language compiler |
US9411560B2 (en) * | 2012-01-26 | 2016-08-09 | Oracle International Corporation | Error propagation |
JP2013235386A (ja) | 2012-05-08 | 2013-11-21 | Internatl Business Mach Corp <Ibm> | 最適化装置、最適化方法、及び最適化プログラム |
CN103491111B (zh) * | 2012-06-08 | 2016-12-14 | 阿里巴巴集团控股有限公司 | 无线应用发布、实现方法与装置 |
US8863079B2 (en) | 2012-07-31 | 2014-10-14 | Oracle International Corporation | Efficient and expansive conversions between reference and primitive |
US8776031B1 (en) * | 2012-08-09 | 2014-07-08 | Noble Systems Corporation | Manipulating resources embedded in a dynamic-link library |
US8893082B2 (en) * | 2012-08-31 | 2014-11-18 | Oracle International Corporation | Type inference of generic type parameters in overloaded functions using type intervals and inference directions |
US9170908B2 (en) * | 2012-12-14 | 2015-10-27 | Salesforce.Com, Inc. | System and method for dynamic analysis bytecode injection for application dataflow |
US9817804B2 (en) * | 2013-09-12 | 2017-11-14 | Wix.Com Ltd. | System for comparison and merging of versions in edited websites and interactive applications |
US9606783B2 (en) * | 2013-10-14 | 2017-03-28 | International Business Machines Corporation | Dynamic code selection based on data policies |
US9329985B1 (en) * | 2014-04-04 | 2016-05-03 | Xoom Corporation | Using emulation to disassociate verification from stimulus in functional test |
US9910680B2 (en) | 2014-04-22 | 2018-03-06 | Oracle International Corporation | Decomposing a generic class into layers |
-
2015
- 2015-03-17 US US14/660,604 patent/US9910680B2/en active Active
- 2015-03-17 US US14/660,177 patent/US9772828B2/en active Active
- 2015-03-17 US US14/660,143 patent/US9785456B2/en active Active
- 2015-04-21 US US14/692,601 patent/US9483242B2/en active Active
- 2015-04-21 US US14/692,592 patent/US9524152B2/en active Active
- 2015-04-21 CN CN201580020873.1A patent/CN106233251B/zh active Active
- 2015-04-21 WO PCT/US2015/026962 patent/WO2015164436A1/en active Application Filing
- 2015-04-21 EP EP15721427.1A patent/EP3134808B1/en active Active
- 2015-04-21 US US14/692,593 patent/US9477450B2/en active Active
- 2015-04-21 EP EP15721428.9A patent/EP3134809B1/en active Active
- 2015-04-21 CN CN201580028725.4A patent/CN106716349B/zh active Active
- 2015-04-21 BR BR112016024522-9A patent/BR112016024522B1/pt active IP Right Grant
- 2015-04-21 US US14/692,590 patent/US9678729B2/en active Active
- 2015-04-21 WO PCT/US2015/026947 patent/WO2015164426A1/en active Application Filing
- 2015-04-21 CN CN202010673980.7A patent/CN111813389A/zh active Pending
- 2015-04-22 WO PCT/US2015/026966 patent/WO2015164439A1/en active Application Filing
- 2015-04-22 WO PCT/US2015/026965 patent/WO2015191165A1/en active Application Filing
- 2015-04-22 CN CN201580029282.0A patent/CN106462414B/zh active Active
- 2015-04-22 WO PCT/US2015/026964 patent/WO2015164438A1/en active Application Filing
- 2015-04-22 EP EP15721429.7A patent/EP3134810B1/en active Active
- 2015-04-22 JP JP2016564078A patent/JP6592009B2/ja active Active
- 2015-04-22 CN CN201580028016.6A patent/CN106415488B/zh active Active
- 2015-04-22 EP EP15771741.4A patent/EP3134811B1/en active Active
- 2015-04-22 CN CN201580028400.6A patent/CN106462412B/zh active Active
- 2015-04-22 EP EP15721430.5A patent/EP3134806B1/en active Active
-
2016
- 2016-02-26 US US15/055,469 patent/US9891900B2/en active Active
-
2017
- 2017-09-25 US US15/714,836 patent/US10740115B2/en active Active
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6592009B2 (ja) | 動的に生成されたパターンベースクラスの構造識別 | |
US11733985B2 (en) | Accessing a migrated member in an updated type | |
US7219341B2 (en) | Code analysis for selective runtime data processing | |
US8869177B2 (en) | Decoupling components of a software system at compile time and load time | |
JP2022542007A (ja) | テスト・ベクタを使用した高水準コンストラクトの最適化の自動検証 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180416 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180416 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190311 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190409 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190417 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190820 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190919 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6592009 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |